messageln(
message(
	private final boolean findRecursive(		Collection collection,		File dir,		String base) {		File temp[] = dir.listFiles();		if (collection instanceof Observable && verbose) {			ProgressObserver observer = new ProgressObserver();			((Observable) collection).addObserver(observer);		}		Collection c;		XMLResource document;		CollectionManagementService mgtService;		String next;		for (int i = 0; i < temp.length; i++) {			next = base + '/' + temp[i].getName();			try {				if (temp[i].isDirectory()) {					System.out.println("creating " + next);					c = collection.getChildCollection(temp[i].getName());					if (c == null) {						mgtService =							(								CollectionManagementService) collection									.getService(								"CollectionManagementService",								"1.0");						c = mgtService.createCollection(temp[i].getName());					}					findRecursive(c, temp[i], next);				} else {					long start1 = System.currentTimeMillis();					messageln(						"storing document "							+ temp[i].getName()							+ " to "							+ next							+ "...");					document =						(XMLResource) collection.createResource(							temp[i].getName(),							"XMLResource");					document.setContent(temp[i]);					collection.storeResource(document);					bytesCount += temp[i].length();					++filesCount;					messageln(						"storing "							+ temp[i].length()							+ " bytes took "							+ (System.currentTimeMillis() - start1)							+ "ms.");				}			} catch (XMLDBException e) {				System.err.println(					"could not parse file " + temp[i].getAbsolutePath());			}		}		return true;	}