diff options
author | Bernard Normier <bernard@zeroc.com> | 2006-06-08 21:46:16 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2006-06-08 21:46:16 +0000 |
commit | 30e49a08e55e415acfcdf093c2dc8c695ead3078 (patch) | |
tree | 32942e572d7dd09298a4c5a907bc5d4d95f55476 /java/src/Ice/Util.java | |
parent | Better handling of multiples argc/argv calls (diff) | |
download | ice-30e49a08e55e415acfcdf093c2dc8c695ead3078.tar.bz2 ice-30e49a08e55e415acfcdf093c2dc8c695ead3078.tar.xz ice-30e49a08e55e415acfcdf093c2dc8c695ead3078.zip |
Fix for bugs #542 and #1015 (default properties)
Diffstat (limited to 'java/src/Ice/Util.java')
-rw-r--r-- | java/src/Ice/Util.java | 62 |
1 files changed, 25 insertions, 37 deletions
diff --git a/java/src/Ice/Util.java b/java/src/Ice/Util.java index c0d0426d1fa..736077d5980 100644 --- a/java/src/Ice/Util.java +++ b/java/src/Ice/Util.java @@ -20,54 +20,34 @@ public final class Util public static Properties createProperties(StringSeqHolder args) { - return new PropertiesI(args); + return new PropertiesI(args, null); } public static Properties - createProperties(String[] args) + createProperties(StringSeqHolder args, Properties defaults) { - StringSeqHolder argsH = new StringSeqHolder(args); - return createProperties(argsH); + return new PropertiesI(args, defaults); } public static Properties - getDefaultProperties() - { - synchronized(_defaultPropertiesMutex) - { - if(_defaultProperties == null) - { - _defaultProperties = createProperties(); - } - return _defaultProperties; - } - } - - public static Properties - getDefaultProperties(StringSeqHolder args) + createProperties(String[] args) { - synchronized(_defaultPropertiesMutex) - { - if(_defaultProperties == null) - { - _defaultProperties = createProperties(args); - } - return _defaultProperties; - } + StringSeqHolder argsH = new StringSeqHolder(args); + return createProperties(argsH); } public static Properties - getDefaultProperties(String[] args) + createProperties(String[] args, Properties defaults) { StringSeqHolder argsH = new StringSeqHolder(args); - return getDefaultProperties(argsH); + return createProperties(argsH, defaults); } + public static Communicator initialize(StringSeqHolder args) { - InitializationData initData = new InitializationData(); - return initialize(args, initData); + return initialize(args, null); } public static Communicator @@ -80,14 +60,17 @@ public final class Util public static Communicator initialize(StringSeqHolder args, InitializationData initData) { - InitializationData tmpData = (InitializationData)initData.clone(); - if(tmpData.properties == null) + if(initData == null) + { + initData = new InitializationData(); + } + else { - tmpData.properties = getDefaultProperties(args); + initData = (InitializationData)initData.clone(); } - args.value = tmpData.properties.parseIceCommandLineOptions(args.value); + initData.properties = createProperties(args, initData.properties); - CommunicatorI result = new CommunicatorI(tmpData); + CommunicatorI result = new CommunicatorI(initData); result.finishSetup(args); return result; } @@ -99,6 +82,13 @@ public final class Util return initialize(argsH, initData); } + public static Communicator + initialize(InitializationData initData) + { + return initialize(new String[0], initData); + } + + /** * @deprecated This method has been deprecated, use initialize instead. **/ @@ -377,7 +367,5 @@ public final class Util return new OutputStreamI(communicator); } - private static Properties _defaultProperties = null; - private static java.lang.Object _defaultPropertiesMutex = new java.lang.Object(); private static String _localAddress = null; } |