Added:
trunk/connector-mxj/commercial/platform-map.properties
trunk/connector-mxj/resources/platform-map.properties
Removed:
trunk/connector-mxj/commercial/5-0-40/platform-map.properties
trunk/connector-mxj/resources/5-0-37/platform-map.properties
trunk/connector-mxj/resources/5-1-15/platform-map.properties
Modified:
trunk/connector-mxj/CHANGES
trunk/connector-mxj/README.1st
trunk/connector-mxj/_dev_notes.txt
trunk/connector-mxj/build.xml
trunk/connector-mxj/commercial/connector-mxj.properties
trunk/connector-mxj/resources/connector-mxj.properties
trunk/connector-mxj/src/com/mysql/management/MysqldFactory.java
trunk/connector-mxj/src/com/mysql/management/MysqldResource.java
trunk/connector-mxj/src/com/mysql/management/MysqldResourceTest.java
trunk/connector-mxj/src/com/mysql/management/driverlaunched/ServerLauncherSocketFactory.java
trunk/connector-mxj/src/com/mysql/management/driverlaunched/ServerLauncherSocketFactoryTest.java
trunk/connector-mxj/src/com/mysql/management/jmx/SimpleMysqldDynamicMBean.java
trunk/connector-mxj/src/com/mysql/management/jmx/TestFactory.java
trunk/connector-mxj/src/com/mysql/management/util/CommandLineOptionsParser.java
trunk/connector-mxj/src/com/mysql/management/util/Streams.java
Log:
2007-05-04 - removed "use-default-architecture" property replaced
- moved "platform-map.properties" into db-files.jar
- updated build.xml in preperation for next beta build
Modified: trunk/connector-mxj/CHANGES
===================================================================
--- trunk/connector-mxj/CHANGES 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/CHANGES 2007-05-04 13:05:34 UTC (rev 83)
@@ -1,6 +1,10 @@
# Changelog
# $Id: CHANGES,v 1.14 2005/10/25 19:11:16 eherman Exp $
+2007-05-04 - removed "use-default-architecture" property replaced
+ - moved "platform-map.properties" into db-files.jar
+ - updated build.xml in preperation for next beta build
+
2007-05-03 - swapped out commercial binaries for v5.0.40
- fixed port file to always be writen to datadir
Modified: trunk/connector-mxj/README.1st
===================================================================
--- trunk/connector-mxj/README.1st 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/README.1st 2007-05-04 13:05:34 UTC (rev 83)
@@ -49,7 +49,7 @@
have only done significant testing on Linux.
On some testing of Windows, the System started fine, but had trouble with
-shutdown.
+shutdown. We believe this has been resolved as of version 5-0-5-beta.
DOCUMENTATION
Modified: trunk/connector-mxj/_dev_notes.txt
===================================================================
--- trunk/connector-mxj/_dev_notes.txt 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/_dev_notes.txt 2007-05-04 13:05:34 UTC (rev 83)
@@ -5,7 +5,6 @@
---------
TODO:
- * MysqldResource FIXME: Remove use of defaultArch and "Win" shortcuts.
* Replace option parsing with pre-parsed options table read from resources
---------
Modified: trunk/connector-mxj/build.xml
===================================================================
--- trunk/connector-mxj/build.xml 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/build.xml 2007-05-04 13:05:34 UTC (rev 83)
@@ -20,12 +20,12 @@
version $Id: build.xml,v 1.22 2005/10/25 18:00:57 eherman Exp $
-->
<project name="MySQL JMX" basedir="." default="usage">
- <description>A JMX Wrapper for MySQL</description>
+ <description>A Java Wrapper for MySQL</description>
- <property name="mxj-version" value="5-0-5-beta" />
+ <property name="mxj-version" value="5-0-6-beta" />
<property name="gpl-mysqld-version" value="5-0-37" />
<!-- property name="gpl-mysqld-version" value="5-1-15" / -->
- <property name="commercial-mysqld-version" value="5-0-36" />
+ <property name="commercial-mysqld-version" value="5-0-40" />
<property name="src" location="src" />
<property name="misc" location="misc" />
Deleted: trunk/connector-mxj/commercial/5-0-40/platform-map.properties
===================================================================
--- trunk/connector-mxj/commercial/5-0-40/platform-map.properties 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/commercial/5-0-40/platform-map.properties 2007-05-04 13:05:34 UTC (rev 83)
@@ -1,37 +0,0 @@
-#key: System.getProperty("os.name") + "-" + System.getProperty("os.arch")
-
-Linux-i386=Linux-i386
-Linux-x86=Linux-i386
-Linux-i686=Linux-i386
-Linux-x86_64=Linux-i386
-
-#Linux-ppc=Linux-ppc
-#Linux-ppc64=
-
-Mac OS X-i386=Mac_OS_X-i386
-Mac OS X-ppc=Mac_OS_X-ppc
-Rhapsody-PowerPC=Mac_OS_X-ppc
-#Mac OS-PowerPC=
-#macos-PowerPC=
-#MacOS-PowerPC=
-
-SunOS-sparc=SunOS-sparc
-Solaris-sparc=SunOS-sparc
-#SunOS-x86=
-#Solaris-x86=
-
-FreeBSD-x86=FreeBSD-x86
-
-Windows Vista-x86=Win-x86
-Windows 2003-x86=Win-x86
-Windows XP-x86=Win-x86
-Windows 2000-x86=Win-x86
-Windows NT-x86=Win-x86
-Windows NT (unknown)-x86=Win-x86
-
-#Windows 98-x86=
-#Windows 95-x86=
-#Windows 95-Pentium=
-#Windows CE-Unknown=
-
-
Modified: trunk/connector-mxj/commercial/connector-mxj.properties
===================================================================
--- trunk/connector-mxj/commercial/connector-mxj.properties 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/commercial/connector-mxj.properties 2007-05-04 13:05:34 UTC (rev 83)
@@ -3,6 +3,3 @@
# default version of mysqld to deploy
mysql-version=5.0.40
-# for Windows and Linux, Connector/MXJ can default to 32 bit x86 architecture
-# so binaries resources are not required for each variation.
-use-default-architecture=true
Copied: trunk/connector-mxj/commercial/platform-map.properties (from rev 82, trunk/connector-mxj/commercial/5-0-40/platform-map.properties)
===================================================================
--- trunk/connector-mxj/commercial/5-0-40/platform-map.properties 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/commercial/platform-map.properties 2007-05-04 13:05:34 UTC (rev 83)
@@ -0,0 +1,38 @@
+#String key = System.getProperty("os.name") + "-" + System.getProperty("os.arch");
+#key = key.replace(' ', '_').replace('/', '_').replace('\\', '_');
+
+Linux-i386=Linux-i386
+Linux-x86=Linux-i386
+Linux-i686=Linux-i386
+Linux-x86_64=Linux-i386
+
+#Linux-ppc=Linux-ppc
+#Linux-ppc64=Linux-ppc
+
+Mac_OS_X-i386=Mac_OS_X-i386
+Mac_OS_X-ppc=Mac_OS_X-ppc
+Rhapsody-PowerPC=Mac_OS_X-ppc
+#Mac_OS-PowerPC=
+#macos-PowerPC=
+#MacOS-PowerPC=
+
+SunOS-sparc=SunOS-sparc
+Solaris-sparc=SunOS-sparc
+#SunOS-x86=
+#Solaris-x86=
+
+FreeBSD-x86=FreeBSD-x86
+
+Windows_Vista-x86=Win-x86
+Windows_2003-x86=Win-x86
+Windows_XP-x86=Win-x86
+Windows_2000-x86=Win-x86
+Windows_NT-x86=Win-x86
+Windows_NT_(unknown)-x86=Win-x86
+
+#Windows_98-x86=
+#Windows_95-x86=
+#Windows_95-Pentium=
+#Windows_CE-Unknown=
+
+
Deleted: trunk/connector-mxj/resources/5-0-37/platform-map.properties
===================================================================
--- trunk/connector-mxj/resources/5-0-37/platform-map.properties 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/resources/5-0-37/platform-map.properties 2007-05-04 13:05:34 UTC (rev 83)
@@ -1,37 +0,0 @@
-#key: System.getProperty("os.name") + "-" + System.getProperty("os.arch")
-
-Linux-i386=Linux-i386
-Linux-x86=Linux-i386
-Linux-i686=Linux-i386
-Linux-x86_64=Linux-i386
-
-#Linux-ppc=Linux-ppc
-#Linux-ppc64=
-
-Mac OS X-i386=Mac_OS_X-i386
-Mac OS X-ppc=Mac_OS_X-ppc
-Rhapsody-PowerPC=Mac_OS_X-ppc
-#Mac OS-PowerPC=
-#macos-PowerPC=
-#MacOS-PowerPC=
-
-SunOS-sparc=SunOS-sparc
-Solaris-sparc=SunOS-sparc
-#SunOS-x86=
-#Solaris-x86=
-
-FreeBSD-x86=FreeBSD-x86
-
-Windows Vista-x86=Win-x86
-Windows 2003-x86=Win-x86
-Windows XP-x86=Win-x86
-Windows 2000-x86=Win-x86
-Windows NT-x86=Win-x86
-Windows NT (unknown)-x86=Win-x86
-
-#Windows 98-x86=
-#Windows 95-x86=
-#Windows 95-Pentium=
-#Windows CE-Unknown=
-
-
Deleted: trunk/connector-mxj/resources/5-1-15/platform-map.properties
===================================================================
--- trunk/connector-mxj/resources/5-1-15/platform-map.properties 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/resources/5-1-15/platform-map.properties 2007-05-04 13:05:34 UTC (rev 83)
@@ -1,37 +0,0 @@
-#key: System.getProperty("os.name") + "-" + System.getProperty("os.arch")
-
-Linux-i386=Linux-i386
-Linux-x86=Linux-i386
-Linux-i686=Linux-i386
-Linux-x86_64=Linux-i386
-
-#Linux-ppc=Linux-ppc
-#Linux-ppc64=
-
-Mac OS X-i386=Mac_OS_X-i386
-Mac OS X-ppc=Mac_OS_X-ppc
-Rhapsody-PowerPC=Mac_OS_X-ppc
-#Mac OS-PowerPC=
-#macos-PowerPC=
-#MacOS-PowerPC=
-
-SunOS-sparc=SunOS-sparc
-Solaris-sparc=SunOS-sparc
-#SunOS-x86=
-#Solaris-x86=
-
-FreeBSD-x86=FreeBSD-x86
-
-Windows Vista-x86=Win-x86
-Windows 2003-x86=Win-x86
-Windows XP-x86=Win-x86
-Windows 2000-x86=Win-x86
-Windows NT-x86=Win-x86
-Windows NT (unknown)-x86=Win-x86
-
-#Windows 98-x86=
-#Windows 95-x86=
-#Windows 95-Pentium=
-#Windows CE-Unknown=
-
-
Modified: trunk/connector-mxj/resources/connector-mxj.properties
===================================================================
--- trunk/connector-mxj/resources/connector-mxj.properties 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/resources/connector-mxj.properties 2007-05-04 13:05:34 UTC (rev 83)
@@ -4,6 +4,3 @@
mysql-version=5.0.37
# mysql-version=5.1.15
-# for Windows and Linux, Connector/MXJ can default to 32 bit x86 architecture
-# so binaries resources are not required for each variation.
-use-default-architecture=true
Copied: trunk/connector-mxj/resources/platform-map.properties (from rev 81, trunk/connector-mxj/resources/5-0-37/platform-map.properties)
===================================================================
--- trunk/connector-mxj/resources/5-0-37/platform-map.properties 2007-05-04 10:39:04 UTC (rev 81)
+++ trunk/connector-mxj/resources/platform-map.properties 2007-05-04 13:05:34 UTC (rev 83)
@@ -0,0 +1,38 @@
+#String key = System.getProperty("os.name") + "-" + System.getProperty("os.arch");
+#key = key.replace(' ', '_').replace('/', '_').replace('\\', '_');
+
+Linux-i386=Linux-i386
+Linux-x86=Linux-i386
+Linux-i686=Linux-i386
+Linux-x86_64=Linux-i386
+
+#Linux-ppc=Linux-ppc
+#Linux-ppc64=Linux-ppc
+
+Mac_OS_X-i386=Mac_OS_X-i386
+Mac_OS_X-ppc=Mac_OS_X-ppc
+Rhapsody-PowerPC=Mac_OS_X-ppc
+#Mac_OS-PowerPC=
+#macos-PowerPC=
+#MacOS-PowerPC=
+
+SunOS-sparc=SunOS-sparc
+Solaris-sparc=SunOS-sparc
+#SunOS-x86=
+#Solaris-x86=
+
+FreeBSD-x86=FreeBSD-x86
+
+Windows_Vista-x86=Win-x86
+Windows_2003-x86=Win-x86
+Windows_XP-x86=Win-x86
+Windows_2000-x86=Win-x86
+Windows_NT-x86=Win-x86
+Windows_NT_(unknown)-x86=Win-x86
+
+#Windows_98-x86=
+#Windows_95-x86=
+#Windows_95-Pentium=
+#Windows_CE-Unknown=
+
+
Modified: trunk/connector-mxj/src/com/mysql/management/MysqldFactory.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/MysqldFactory.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/MysqldFactory.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -19,15 +19,13 @@
import java.io.File;
-
public interface MysqldFactory {
- MysqldResourceI newMysqldResource(File baseDir, File dataDir,
- String version, boolean guessArch);
+ MysqldResourceI newMysqldResource(File baseDir, File dataDir, String version);
public static final class Default implements MysqldFactory {
public MysqldResourceI newMysqldResource(File baseDir, File dataDir,
- String version, boolean guessArch) {
- return new MysqldResource(baseDir, dataDir, version, guessArch);
+ String version) {
+ return new MysqldResource(baseDir, dataDir, version);
}
}
}
Modified: trunk/connector-mxj/src/com/mysql/management/MysqldResource.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/MysqldResource.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/MysqldResource.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -28,11 +28,11 @@
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.Properties;
import com.mysql.jdbc.Driver;
import com.mysql.jdbc.MysqlErrorNumbers;
import com.mysql.management.util.CommandLineOptionsParser;
-import com.mysql.management.util.Files;
import com.mysql.management.util.ListToString;
import com.mysql.management.util.NullPrintStream;
import com.mysql.management.util.Platform;
@@ -72,9 +72,9 @@
private String pid;
- private String osName;
+ private Properties platformProperties;
- private String osArch;
+ private String osName_osArch;
private PrintStream out;
@@ -94,54 +94,51 @@
private Utils utils;
public MysqldResource() {
- this(new Files().nullFile());
+ this(null, null, null, null, null, null, null);
}
public MysqldResource(File baseDir) {
- this(baseDir, new Files().nullFile());
+ this(baseDir, null, null, null, null, null, null);
}
public MysqldResource(File baseDir, File dataDir) {
- this(baseDir, dataDir, null);
+ this(baseDir, dataDir, null, null, null, null, null);
}
public MysqldResource(File baseDir, File dataDir, String mysqlVersionString) {
- this(baseDir, dataDir, mysqlVersionString, true);
+ this(baseDir, dataDir, mysqlVersionString, null, null, null, null);
}
public MysqldResource(File baseDir, File dataDir,
- String mysqlVersionString, boolean guessArch) {
- this(baseDir, dataDir, mysqlVersionString, guessArch, System.out,
- System.err);
+ String mysqlVersionString, PrintStream out, PrintStream err) {
+ this(baseDir, dataDir, mysqlVersionString, out, err, null, null);
}
- public MysqldResource(File baseDir, File dataDir,
- String mysqlVersionString, boolean guessArch, PrintStream out,
- PrintStream err) {
- this(baseDir, dataDir, mysqlVersionString, guessArch, out, err,
- new Utils());
- }
-
MysqldResource(File baseDir, File dataDir, String mysqlVersionString,
- boolean guessArch, PrintStream out, PrintStream err, Utils util) {
- this.out = out;
- this.err = err;
- this.utils = util;
- this.optionParser = new HelpOptionsParser(err, utils);
- this.killDelay = 30000;
- this.baseDir = utils.files().validCononicalDir(baseDir,
- utils.files().tmp(MYSQL_C_MXJ));
- this.dataDir = utils.files().validCononicalDir(dataDir,
+ PrintStream out, PrintStream err, Utils utils,
+ Properties platformProperties) {
+ this.out = (out != null) ? out : System.out;
+ this.err = (err != null) ? err : System.err;
+ this.utils = (utils != null) ? utils : new Utils();
+ this.platformProperties = (platformProperties != null) ? platformProperties
+ : this.utils.streams().loadProperties(
+ "platform-map.properties", err);
+ this.baseDir = this.utils.files().validCononicalDir(baseDir,
+ this.utils.files().tmp(MYSQL_C_MXJ));
+ this.dataDir = this.utils.files().validCononicalDir(dataDir,
new File(this.baseDir, DATA));
- String className = utils.str().shortClassName(getClass());
- this.pidFile = utils.files().cononical(
+
+ this.optionParser = new HelpOptionsParser(err, this.utils);
+ this.killDelay = 30000;
+ String className = this.utils.str().shortClassName(getClass());
+ this.pidFile = this.utils.files().cononical(
new File(this.dataDir, className + ".pid"));
- this.portFile = new File(this.dataDir, "port");
+ this.portFile = new File(this.dataDir, className + ".port");
setVersion(false, mysqlVersionString);
- this.msgPrefix = "[" + utils.str().shortClassName(getClass()) + "] ";
+ this.msgPrefix = "[" + className + "] ";
this.options = new HashMap();
this.setShell(null);
- setOsAndArch(System.getProperty(Platform.OS_NAME), guessArch, System
+ setOsAndArch(System.getProperty(Platform.OS_NAME), System
.getProperty(Platform.OS_ARCH));
this.completionListensers = new ArrayList();
initTrace();
@@ -433,32 +430,9 @@
}
/* called from constructor, over-ride with care */
- final void setOsAndArch(String osName, boolean defaultArch, String osArch) {
- /*
- * FIXME: Remove use of defaultArch and "Win" shortcuts.
- *
- * PROBLEM: If on Linux-ppc, we shouldn't even try Linux-i386.
- *
- * SOLUTION: Replace current code with a resource table of os-arch
- * combinations and only remap if an entry exists in the table. Consider
- * wild-card matching. This resource table should be in a text editable
- * file, not a class file.
- *
- * SOLUTION DOWN-SIDES: Long-term, we may wish to provide a way to get
- * more information than simply os name and architecture. For instance,
- * "SunOS 8 or SunOS 10" or maybe "sparc 32 or sparc 64". At that time
- * we may wish to provide a real interface with user-plugablity, but
- * there is no immediate demand.
- */
- String name = osName;
- if (osName.indexOf("Win") != -1) {
- name = "Win";
- osArch = defaultArch ? "x86" : stripUnwantedChars(osArch);
- } else if (osName.indexOf("Linux") != -1) {
- osArch = defaultArch ? "i386" : stripUnwantedChars(osArch);
- }
- this.osName = stripUnwantedChars(name);
- this.osArch = stripUnwantedChars(osArch);
+ final void setOsAndArch(String osName, String osArch) {
+ String key = stripUnwantedChars(osName + "-" + osArch);
+ this.osName_osArch = platformProperties.getProperty(key, key);
}
String stripUnwantedChars(String str) {
@@ -516,7 +490,7 @@
}
String os_arch() {
- return osName + "-" + osArch;
+ return osName_osArch;
}
private String executableName() {
@@ -525,7 +499,7 @@
}
boolean isWindows() {
- return osName.equals("Win");
+ return osName_osArch.startsWith("Win");
}
File getMysqldFilePointer() {
@@ -696,8 +670,7 @@
}
MysqldResource mysqld = new MysqldResource(clop.getBaseDir(), clop
- .getDataDir(), clop.getVersion(), clop.defaultArchitecture(),
- out, err);
+ .getDataDir(), clop.getVersion(), out, err);
if (clop.isShutdown()) {
mysqld.shutdown();
return;
Modified: trunk/connector-mxj/src/com/mysql/management/MysqldResourceTest.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/MysqldResourceTest.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/MysqldResourceTest.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -68,8 +68,8 @@
warn("residual files");
}
- mysqldResource = new MysqldResource(baseDir, dataDir, null, true,
- System.out, System.err, utils);
+ mysqldResource = new MysqldResource(baseDir, dataDir, null, System.out,
+ System.err, utils, null);
// mysqldResource.setKillDelay(10000);
}
@@ -87,12 +87,12 @@
}
private void setSystemPropertiesToWinNT() {
- mysqldResource.setOsAndArch("Windows NT", true, "x86");
+ mysqldResource.setOsAndArch("Windows NT", "x86");
assertTrue(mysqldResource.isWindows());
}
private void setSytemPropertiesToLinux() {
- mysqldResource.setOsAndArch("Linux", true, "i386");
+ mysqldResource.setOsAndArch("Linux", "i386");
assertFalse(mysqldResource.isWindows());
}
@@ -172,8 +172,7 @@
public void testUglyPlatformName() {
assertEquals("a_b_c_d", mysqldResource.stripUnwantedChars("a b/c\\d"));
- mysqldResource.setOsAndArch("Bogus OS W/ Spaces", true,
- "\\Arch in Space");
+ mysqldResource.setOsAndArch("Bogus OS W/ Spaces", "\\Arch in Space");
String resourceName = mysqldResource.getResourceName();
assertTrue(resourceName.indexOf(' ') == -1);
assertTrue(resourceName.indexOf('\\') == -1);
@@ -204,7 +203,7 @@
}
public void testUnknownOs() {
- mysqldResource.setOsAndArch("bogus", true, "x86");
+ mysqldResource.setOsAndArch("bogus", "x86");
Exception expected = null;
try {
mysqldResource.makeMysqld();
@@ -261,8 +260,8 @@
public void testTestReporting() {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PrintStream captured = new PrintStream(baos);
- mysqldResource = new MysqldResource(baseDir, dataDir, null, true,
- captured, captured, utils);
+ mysqldResource = new MysqldResource(baseDir, dataDir, null, captured,
+ captured, utils, null);
mysqldResource.reportIfNoPidfile(true);
captured.flush();
@@ -309,8 +308,8 @@
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PrintStream captured = new PrintStream(baos);
- mysqldResource = new MysqldResource(baseDir, dataDir, "", true,
- captured, captured, utils);
+ mysqldResource = new MysqldResource(baseDir, dataDir, "", captured,
+ captured, utils, null);
mysqldResource.finalize();
captured.flush();
String output = new String(baos.toByteArray());
@@ -353,33 +352,30 @@
assertTrue(mysqldResource.canConnectToServer(testUtil.testPort(), 1));
}
- public void testArchitectureGuessing() {
- // platform architecture guessing on Linux:
- mysqldResource.setOsAndArch("Linux", false, "x86_64");
- assertEquals("Linux-x86_64", mysqldResource.os_arch());
+ public void testPlatformMapProperties() {
- mysqldResource.setOsAndArch("Linux", true, "x86_64");
+ mysqldResource.setOsAndArch("Linux", "x86_64");
assertEquals("Linux-i386", mysqldResource.os_arch());
- // platform architecture guessing on Windows:
- mysqldResource.setOsAndArch("WindowsNT", true, "x86_64");
+ mysqldResource.setOsAndArch("Linux", "i686");
+ assertEquals("Linux-i386", mysqldResource.os_arch());
+
+ mysqldResource.setOsAndArch("Windows NT", "x86");
assertEquals("Win-x86", mysqldResource.os_arch());
- mysqldResource.setOsAndArch("Windows XP", true, "x86_64");
+ mysqldResource.setOsAndArch("Windows XP", "x86");
assertEquals("Win-x86", mysqldResource.os_arch());
- // No guessing on OS X
- mysqldResource.setOsAndArch("Mac OS X", true, "i386");
+ mysqldResource.setOsAndArch("Mac OS X", "i386");
assertEquals("Mac_OS_X-i386", mysqldResource.os_arch());
- mysqldResource.setOsAndArch("Mac OS X", true, "ppc");
+ mysqldResource.setOsAndArch("Mac OS X", "ppc");
assertEquals("Mac_OS_X-ppc", mysqldResource.os_arch());
- // No guessing on Solaris
- mysqldResource.setOsAndArch("SunOS", true, "sparc");
+ mysqldResource.setOsAndArch("SunOS", "sparc");
assertEquals("SunOS-sparc", mysqldResource.os_arch());
- mysqldResource.setOsAndArch("SunOS", true, "i386");
+ mysqldResource.setOsAndArch("SunOS", "i386");
assertEquals("SunOS-i386", mysqldResource.os_arch());
}
Modified: trunk/connector-mxj/src/com/mysql/management/driverlaunched/ServerLauncherSocketFactory.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/driverlaunched/ServerLauncherSocketFactory.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/driverlaunched/ServerLauncherSocketFactory.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -82,18 +82,11 @@
dataDir = new Files().validCononicalDir(ddir);
}
- boolean guessArch = true;
- String guessArchStr = (String) serverOpts
- .get(MysqldResourceI.USE_DEFAULT_ARCHITECTURE);
- if (guessArchStr != null) {
- guessArch = Boolean.valueOf(guessArchStr).booleanValue();
- }
-
String mysqldVersion = (String) serverOpts
.get(MysqldResourceI.MYSQLD_VERSION);
MysqldResourceI mysqld = resourceFactory.newMysqldResource(baseDir,
- dataDir, mysqldVersion, guessArch);
+ dataDir, mysqldVersion);
if (mysqld.isRunning()) {
int runningPort = mysqld.getPort();
Modified: trunk/connector-mxj/src/com/mysql/management/driverlaunched/ServerLauncherSocketFactoryTest.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/driverlaunched/ServerLauncherSocketFactoryTest.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/driverlaunched/ServerLauncherSocketFactoryTest.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -42,7 +42,7 @@
}
public MysqldResourceI newMysqldResource(File base, File data,
- String version, boolean guessArch) {
+ String version) {
return new MysqldResourceTestImpl(base, data, fakeRunningMysqlds);
}
}
Modified: trunk/connector-mxj/src/com/mysql/management/jmx/SimpleMysqldDynamicMBean.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/jmx/SimpleMysqldDynamicMBean.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/jmx/SimpleMysqldDynamicMBean.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -128,7 +128,7 @@
private void initAttributes() {
attributes = new DefaultsMap();
Map options = new TreeMap(mysqldFactory.newMysqldResource(null, null,
- null, true).getServerOptions());
+ null).getServerOptions());
List attInfs = new ArrayList();
makeAttribute(attInfs, AUTOSTART_ATTR, Boolean.FALSE.toString(), true);
for (Iterator iter = options.entrySet().iterator(); iter.hasNext();) {
@@ -236,18 +236,12 @@
throw new ReflectionException(new NoSuchMethodException(msg), msg);
}
- /*
- * TODO: Either make "USE_DEFAULT_ARCHITECTURE" accesible or better yet,
- * resolve the related FIXME in MysqldResource
- */
private void newMysqldResource() {
File baseDir = getFileAttribute(MysqldResourceI.BASEDIR);
File dataDir = getFileAttribute(MysqldResourceI.DATADIR);
String version = getStringAttribute(MysqldResourceI.MYSQLD_VERSION);
- boolean guessArch = getBooleanAttribute(
- MysqldResourceI.USE_DEFAULT_ARCHITECTURE, true);
mysqldResource = mysqldFactory.newMysqldResource(baseDir, dataDir,
- version, guessArch);
+ version);
}
protected void clearMBeanInfo() {
@@ -331,14 +325,6 @@
return fileName == null ? null : new File(fileName);
}
- private boolean getBooleanAttribute(String key, boolean ifNull) {
- String boolStr = getStringAttribute(key);
- if (boolStr == null) {
- return ifNull;
- }
- return Boolean.valueOf(boolStr).booleanValue();
- }
-
private String getStringAttribute(final String key) {
if (!attributes.containsKey(key)) {
return null;
Modified: trunk/connector-mxj/src/com/mysql/management/jmx/TestFactory.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/jmx/TestFactory.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/jmx/TestFactory.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -16,7 +16,7 @@
}
public MysqldResourceI newMysqldResource(File baseDir, File dataDir,
- String version, boolean guessArch) {
+ String version) {
return mysqld;
}
}
Modified: trunk/connector-mxj/src/com/mysql/management/util/CommandLineOptionsParser.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/util/CommandLineOptionsParser.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/util/CommandLineOptionsParser.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -99,13 +99,4 @@
public boolean isShutdown() {
return containsKey("shutdown");
}
-
- public boolean defaultArchitecture() {
- String guessArchStr = (String) params
- .get(MysqldResourceI.USE_DEFAULT_ARCHITECTURE);
- if (guessArchStr == null) {
- return true;
- }
- return Boolean.valueOf(guessArchStr).booleanValue();
- }
}
Modified: trunk/connector-mxj/src/com/mysql/management/util/Streams.java
===================================================================
--- trunk/connector-mxj/src/com/mysql/management/util/Streams.java 2007-05-04 10:41:59 UTC (rev 82)
+++ trunk/connector-mxj/src/com/mysql/management/util/Streams.java 2007-05-04 13:05:34 UTC (rev 83)
@@ -213,23 +213,27 @@
public String getSystemPropertyWithDefaultFromResource(String property,
String resourceName, PrintStream err) {
- String fileVal = null;
+ Properties props = loadProperties(resourceName, err);
+ String fileVal = (String) props.get(property);
+ return System.getProperty(property, fileVal);
+ }
+
+ public Properties loadProperties(String resourceName, PrintStream err) {
+ final InputStream is = getResourceAsStream(resourceName);
+
Properties props = new Properties();
- final InputStream is = getResourceAsStream(resourceName);
- if (is != null) {
+ try {
+ props.load(is);
+ } catch (IOException e) {
+ e.printStackTrace(err);
+ } finally {
try {
- props.load(is);
- fileVal = (String) props.get(property);
+ is.close();
} catch (IOException e) {
e.printStackTrace(err);
- } finally {
- try {
- is.close();
- } catch (IOException e) {
- e.printStackTrace(err);
- }
}
}
- return System.getProperty(property, fileVal);
+
+ return props;
}
}
| Thread |
|---|
| • Connector/MXJ commit: r83 - in trunk/connector-mxj: . commercial commercial/5-0-40 resources resources/5-0-37 resources/5-1-15 src/com/mysql/managemen... | eherman | 4 May |