storesClass.put(storeName, storeClass);
// Load descriptor store parameters
Hashtable storeParameters = new Hashtable();
while (storeParametersDefinitions.hasMoreElements()) {
Configuration parameterDefinition = (Configuration)
storeParametersDefinitions.nextElement();
String parameterName = parameterDefinition.getAttribute("name");
String parameterValue = parameterDefinition.getValue();
storeParameters.put(parameterName, parameterValue);
}
storesParameters.put(storeName, storeParameters);
// Now reading the "child" stores
Hashtable currentStoreChildStores = new Hashtable();
// Loading node store (if any)
try {
Configuration nodeStoreDefinition =
storeDefinition.getConfiguration(NODE_STORE);
try {
Configuration referenceDefinition =
storeDefinition.getConfiguration(REFERENCE);
currentStoreChildStores.put
(NODE_STORE, referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
NodeStore nodeStore =
(NodeStore) loadChildStore(nodeStoreDefinition,
storeParameters);
if (nodeStore != null) {
currentStoreChildStores.put(NODE_STORE, nodeStore);
}
}
} catch (Exception e) {
}
// Loading security store (if any)
try {
Configuration securityStoreDefinition =
storeDefinition.getConfiguration(SECURITY_STORE);
try {
Configuration referenceDefinition =
securityStoreDefinition.getConfiguration(REFERENCE);
currentStoreChildStores.put
(SECURITY_STORE,
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
SecurityStore securityStore =
(SecurityStore) loadChildStore(securityStoreDefinition,
storeParameters);
if (securityStore != null) {
currentStoreChildStores.put(SECURITY_STORE, securityStore);
}
}
} catch (Exception e) {
}
// Loading lock store (if any)
try {
Configuration lockStoreDefinition =
storeDefinition.getConfiguration(LOCK_STORE);
try {
Configuration referenceDefinition =
lockStoreDefinition.getConfiguration(REFERENCE);
currentStoreChildStores.put
(LOCK_STORE, referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
LockStore lockStore =
(LockStore) loadChildStore(lockStoreDefinition,
storeParameters);
if (lockStore != null) {
currentStoreChildStores.put(LOCK_STORE, lockStore);
}
}
} catch (Exception e) {
}
// Loading revision descriptors store (if any)
try {
Configuration revisionDescriptorsStoreDefinition =
storeDefinition.getConfiguration
(REVISION_DESCRIPTORS_STORE);
try {
Configuration referenceDefinition =
revisionDescriptorsStoreDefinition
.getConfiguration(REFERENCE);
currentStoreChildStores.put
(REVISION_DESCRIPTORS_STORE,
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
RevisionDescriptorsStore revisionDescriptorsStore =
(RevisionDescriptorsStore) loadChildStore
(revisionDescriptorsStoreDefinition, storeParameters);
if (revisionDescriptorsStore != null) {
currentStoreChildStores.put(REVISION_DESCRIPTORS_STORE,
revisionDescriptorsStore);
}
}
} catch (Exception e) {
}
// Loading revision descriptor store (if any)
try {
Configuration revisionDescriptorStoreDefinition =
storeDefinition.getConfiguration(REVISION_DESCRIPTOR_STORE);
try {
Configuration referenceDefinition =
revisionDescriptorStoreDefinition
.getConfiguration(REFERENCE);
currentStoreChildStores.put
(REVISION_DESCRIPTOR_STORE,
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
RevisionDescriptorStore revisionDescriptorStore =
(RevisionDescriptorStore) loadChildStore
(revisionDescriptorStoreDefinition, storeParameters);
if (revisionDescriptorStore != null) {
currentStoreChildStores.put(REVISION_DESCRIPTOR_STORE,
revisionDescriptorStore);
}
}
} catch (Exception e) {
}
// Loading content store (if any)
try {
Configuration contentStoreDefinition =
storeDefinition.getConfiguration(CONTENT_STORE);
try {
Configuration referenceDefinition =
contentStoreDefinition.getConfiguration(REFERENCE);
currentStoreChildStores.put
(CONTENT_STORE, referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
ContentStore contentStore =
(ContentStore) loadChildStore(contentStoreDefinition,
storeParameters);
if (contentStore != null) {