Author: natalia Date: Wed Nov 7 19:12:23 2007 New Revision: 593003 URL: http://svn.apache.org/viewvc?rev=593003&view=rev Log: Fix URL handling for local database shutdown
Modified: xml/xindice/trunk/java/src/org/apache/xindice/tools/XMLTools.java xml/xindice/trunk/java/src/org/apache/xindice/tools/command/Shutdown.java Modified: xml/xindice/trunk/java/src/org/apache/xindice/tools/XMLTools.java URL: http://svn.apache.org/viewvc/xml/xindice/trunk/java/src/org/apache/xindice/tools/XMLTools.java?rev=593003&r1=593002&r2=593003&view=diff ============================================================================== --- xml/xindice/trunk/java/src/org/apache/xindice/tools/XMLTools.java (original) +++ xml/xindice/trunk/java/src/org/apache/xindice/tools/XMLTools.java Wed Nov 7 19:12:23 2007 @@ -205,6 +205,10 @@ if (!colname.startsWith("/") && !colname.startsWith("xmldb:xindice")) { throw new IllegalArgumentException("The name of a collection must start with '/'"); } + + if (colname.startsWith("xmldb:xindice-embed://")) { + config.setBoolean(LOCAL, true); + } config.setString(COLLECTION, colname); } else if (token.equalsIgnoreCase("--filer")) { config.setString(FILER, at.nextSwitchToken()); Modified: xml/xindice/trunk/java/src/org/apache/xindice/tools/command/Shutdown.java URL: http://svn.apache.org/viewvc/xml/xindice/trunk/java/src/org/apache/xindice/tools/command/Shutdown.java?rev=593003&r1=593002&r2=593003&view=diff ============================================================================== --- xml/xindice/trunk/java/src/org/apache/xindice/tools/command/Shutdown.java (original) +++ xml/xindice/trunk/java/src/org/apache/xindice/tools/command/Shutdown.java Wed Nov 7 19:12:23 2007 @@ -45,13 +45,7 @@ try { // Collection name can be incorrect, use database name instead String context = table.getString(XMLTools.COLLECTION); - int i = context.indexOf('/', 1); - String db; - if (i >= 0) { - db = context.substring(0, i); - } else { - db = context; - } + String db = getDbName(context); // Get a Collection reference to pass on to individual commands String colstring = normalizeCollectionURI(db, table.getBoolean(XMLTools.LOCAL)); @@ -71,6 +65,19 @@ } return true; + } + + private String getDbName(String context) { + int i = context.indexOf("://"); + i = i < 0 ? 0 : i + 3; + + int start = context.indexOf('/', i); + int end = context.indexOf('/', start + 1); + if (end == -1) { + end = context.length(); + } + + return context.substring(0, end); } public void usage() {