dirkv 01/07/21 06:22:43
Modified: src/share/org/apache/slide/common Namespace.java
Log:
put temp object creation inside a transaction
extra logging
Revision Changes Path
1.34 +42 -11 jakarta-slide/src/share/org/apache/slide/common/Namespace.java
Index: Namespace.java
===================================================================
RCS file: /home/cvs/jakarta-slide/src/share/org/apache/slide/common/Namespace.java,v
retrieving revision 1.33
retrieving revision 1.34
diff -u -r1.33 -r1.34
--- Namespace.java 2001/07/12 05:12:19 1.33
+++ Namespace.java 2001/07/21 13:22:43 1.34
@@ -1,7 +1,7 @@
/*
- * $Header:
/home/cvs/jakarta-slide/src/share/org/apache/slide/common/Namespace.java,v 1.33
2001/07/12 05:12:19 remm Exp $
- * $Revision: 1.33 $
- * $Date: 2001/07/12 05:12:19 $
+ * $Header:
/home/cvs/jakarta-slide/src/share/org/apache/slide/common/Namespace.java,v 1.34
2001/07/21 13:22:43 dirkv Exp $
+ * $Revision: 1.34 $
+ * $Date: 2001/07/21 13:22:43 $
*
* ====================================================================
*
@@ -93,7 +93,7 @@
* Namespace class.
*
* @author <a href="mailto:[EMAIL PROTECTED]">Remy Maucherat</a>
- * @version $Revision: 1.33 $
+ * @version $Revision: 1.34 $
*/
public final class Namespace {
@@ -672,7 +672,9 @@
// Load Namespace Base Data
try {
-
+ // start transaction for temp object creation
+ getTransactionManager().begin();
+
// First, we create the root node
Uri rootUri = getUri("/");
SubjectNode rootNode = new SubjectNode("/");
@@ -688,6 +690,9 @@
ActionNode tempAction = new ActionNode("/tempaction");
tempActionUri.getStore().createObject(tempActionUri, tempAction);
+ // end transaction for temp object creation
+ getTransactionManager().commit();
+
// Create the dummy configuration
config.initializeAsDummyConfig(this);
@@ -703,6 +708,9 @@
// end the transaction, NOTE some operations are outside this TA
token.commit();
+
+ // start transaction for temp object removal
+ getTransactionManager().begin();
// Then, destroy the temp action
tempActionUri.getStore().removeObject(tempActionUri, tempAction);
@@ -712,21 +720,32 @@
(SubjectNode) rootUri.getStore().retrieveObject(rootUri);
rootUri.getStore().revokePermission(rootUri, allAccess);
rootUri.getStore().storeObject(rootUri, rootNode);
+
+ // end transaction for temp object removal
+ getTransactionManager().commit();
} catch (SlideException e) {
// If that occurs, then most likely the base config was
// already done before
- Domain.info
- ("Namespace base configuration was already done before");
+ Domain.info("Namespace base configuration was already done before");
+ try {
+ getTransactionManager().rollback();
+ }
+ catch (SystemException ex) {
+ Domain.warn("Could not rollback namespace base configuration:
" + ex.getMessage());
+ }
} catch (Exception e) {
e.printStackTrace();
// Unable to load the base configuration XML file.
// Log the event, and hope it was already done before.
- Domain.info
- ("Unable to read Namespace base configuration file : "
- + e.getMessage());
+ Domain.info("Unable to read Namespace base configuration file : " +
e.getMessage());
+ try {
+ getTransactionManager().rollback();
+ }
+ catch (SystemException ex) {
+ Domain.warn("Could not rollback namespace base configuration:
" + ex.getMessage());
+ }
}
-
}
@@ -838,7 +857,9 @@
storeDefinition.getConfiguration(REFERENCE);
currentStoreChildStores.put
(NODE_STORE, referenceDefinition.getAttribute("store"));
+ Domain.info("Node store references " +
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
+ Domain.info("Node store: " +
nodeStoreDefinition.getAttribute("classname"));
NodeStore nodeStore =
(NodeStore) loadChildStore(nodeStoreDefinition,
storeParameters);
@@ -859,7 +880,9 @@
currentStoreChildStores.put
(SECURITY_STORE,
referenceDefinition.getAttribute("store"));
+ Domain.info("Security store references " +
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
+ Domain.info("Security store: " +
securityStoreDefinition.getAttribute("classname"));
SecurityStore securityStore =
(SecurityStore) loadChildStore(securityStoreDefinition,
storeParameters);
@@ -879,7 +902,9 @@
lockStoreDefinition.getConfiguration(REFERENCE);
currentStoreChildStores.put
(LOCK_STORE, referenceDefinition.getAttribute("store"));
+ Domain.info("Lock store store references " +
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
+ Domain.info("Lock store store: " +
lockStoreDefinition.getAttribute("classname"));
LockStore lockStore =
(LockStore) loadChildStore(lockStoreDefinition,
storeParameters);
@@ -902,7 +927,9 @@
currentStoreChildStores.put
(REVISION_DESCRIPTORS_STORE,
referenceDefinition.getAttribute("store"));
+ Domain.info("Revision descriptors store references " +
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
+ Domain.info("Revision descriptors store: " +
revisionDescriptorsStoreDefinition.getAttribute("classname"));
RevisionDescriptorsStore revisionDescriptorsStore =
(RevisionDescriptorsStore) loadChildStore
(revisionDescriptorsStoreDefinition, storeParameters);
@@ -925,7 +952,9 @@
currentStoreChildStores.put
(REVISION_DESCRIPTOR_STORE,
referenceDefinition.getAttribute("store"));
+ Domain.info("Revision descriptor store references " +
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
+ Domain.info("Revision descriptor store: " +
revisionDescriptorStoreDefinition.getAttribute("classname"));
RevisionDescriptorStore revisionDescriptorStore =
(RevisionDescriptorStore) loadChildStore
(revisionDescriptorStoreDefinition, storeParameters);
@@ -946,7 +975,9 @@
contentStoreDefinition.getConfiguration(REFERENCE);
currentStoreChildStores.put
(CONTENT_STORE, referenceDefinition.getAttribute("store"));
+ Domain.info("Content store references " +
referenceDefinition.getAttribute("store"));
} catch (ConfigurationException ex) {
+ Domain.info("Content store: " +
contentStoreDefinition.getAttribute("classname"));
ContentStore contentStore =
(ContentStore) loadChildStore(contentStoreDefinition,
storeParameters);