|
From: Dave B. <bla...@us...> - 2012-04-19 11:22:11
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/wbem
In directory vz-cvs-3.sog:/tmp/cvs-serv19810/src/org/sblim/cimclient/internal/wbem
Modified Files:
WBEMClientCIMXML.java
Log Message:
3515180 - JSR48 log dir/file should handle UNIX/Win separators
Index: WBEMClientCIMXML.java
===================================================================
RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/wbem/WBEMClientCIMXML.java,v
retrieving revision 1.69
retrieving revision 1.70
diff -u -d -r1.69 -r1.70
--- WBEMClientCIMXML.java 19 Apr 2012 11:11:24 -0000 1.69
+++ WBEMClientCIMXML.java 19 Apr 2012 11:22:08 -0000 1.70
@@ -59,6 +59,7 @@
* 3496355 2012-03-02 blaschke-oss JSR48 1.0.0: add new WBEMClientConstants
* 3514537 2012-04-03 blaschke-oss TCK: execQueryInstances requires boolean, not Boolean
* 3514685 2012-04-03 blaschke-oss TCK: getProperty must return default values
+ * 3515180 2012-04-05 blaschke-oss JSR48 log dir/file should handle UNIX/Win separators
*/
package org.sblim.cimclient.internal.wbem;
@@ -328,6 +329,23 @@
return this.iConfiguration.getDomainProperties();
}
+ private int getLastSeparator(String path) {
+ if (path == null) return -1;
+
+ int last = -1;
+ int sepUnix = path.lastIndexOf('/');
+ int sepWin = path.lastIndexOf('\\');
+
+ if (sepUnix != -1 && sepWin != -1) {
+ last = sepUnix > sepWin ? sepUnix : sepWin;
+ } else if (sepUnix != -1) {
+ last = sepUnix;
+ } else if (sepWin != -1) {
+ last = sepWin;
+ }
+ return last;
+ }
+
public String getProperty(String pKey) {
if (pKey.startsWith("javax.wbem.")) {
// Process JSR48 properties
@@ -342,13 +360,13 @@
} else if (pKey.equals(WBEMClientConstants.PROP_LOG_DIR)) {
String SblimKey = this.iConfiguration.getLogFileLocation();
if (SblimKey == null) return null;
- int i = SblimKey.lastIndexOf(File.separatorChar);
- return i != -1 ? SblimKey.substring(0, i) : null;
+ int lastSep = getLastSeparator(SblimKey);
+ return lastSep == -1 ? null : SblimKey.substring(0, lastSep);
} else if (pKey.equals(WBEMClientConstants.PROP_LOG_FILENAME)) {
String SblimKey = this.iConfiguration.getLogFileLocation();
if (SblimKey == null) return null;
- int i = SblimKey.lastIndexOf(File.separatorChar);
- return i != -1 ? SblimKey.substring(i + 1) : SblimKey;
+ int lastSep = getLastSeparator(SblimKey);
+ return lastSep == -1 ? SblimKey : SblimKey.substring(lastSep + 1);
} else if (pKey.equals(WBEMClientConstants.PROP_LOG_NUM_FILES)) {
return Integer.toString(this.iConfiguration.getLogFileCount());
} else if (pKey.equals(WBEMClientConstants.PROP_TIMEOUT)) {
|