[exo-jcr-commits] exo-jcr SVN: r5416 - in jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr: impl/core/nodetype and 1 other directories.
do-not-reply at jboss.org
do-not-reply at jboss.org
Tue Jan 3 09:51:50 EST 2012
Author: andrew.plotnikov
Date: 2012-01-03 09:51:49 -0500 (Tue, 03 Jan 2012)
New Revision: 5416
Modified:
jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/core/nodetype/NodeTypeDataManager.java
jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/nodetype/NodeTypeDataManagerImpl.java
jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/PropertyTypeRegistry.java
jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/QueryHandlerContext.java
Log:
EXOJCR-932: Fixed incomplete PropertyTypeRegistry
Modified: jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/core/nodetype/NodeTypeDataManager.java
===================================================================
--- jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/core/nodetype/NodeTypeDataManager.java 2012-01-03 14:38:49 UTC (rev 5415)
+++ jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/core/nodetype/NodeTypeDataManager.java 2012-01-03 14:51:49 UTC (rev 5416)
@@ -21,6 +21,7 @@
import org.exoplatform.services.jcr.dataflow.PlainChangesLog;
import org.exoplatform.services.jcr.datamodel.InternalQName;
import org.exoplatform.services.jcr.datamodel.NodeData;
+import org.exoplatform.services.jcr.impl.core.nodetype.NodeTypeManagerListener;
import java.io.InputStream;
import java.util.List;
@@ -230,4 +231,7 @@
PlainChangesLog updateNodeType(NodeTypeData ancestorDefinition, NodeTypeData recipientDefinition,
Map<InternalQName, NodeTypeData> volatileNodeTypes) throws ConstraintViolationException, RepositoryException;
+ void addListener(NodeTypeManagerListener listener);
+
+ void removeListener(NodeTypeManagerListener listener);
}
Modified: jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/nodetype/NodeTypeDataManagerImpl.java
===================================================================
--- jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/nodetype/NodeTypeDataManagerImpl.java 2012-01-03 14:38:49 UTC (rev 5415)
+++ jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/nodetype/NodeTypeDataManagerImpl.java 2012-01-03 14:51:49 UTC (rev 5416)
@@ -634,6 +634,15 @@
nodeTypeDataValidator.validateNodeType(nodeTypes);
nodeTypeRepository.registerNodeType(nodeTypes, this, accessControlPolicy, alreadyExistsBehaviour);
+
+ for (NodeTypeData nodeType : nodeTypes)
+ {
+ for (NodeTypeManagerListener listener : listeners.values())
+ {
+ listener.nodeTypeRegistered(nodeType.getName());
+ }
+ }
+
return nodeTypes;
}
@@ -651,6 +660,14 @@
nodeTypeRepository.registerNodeType(nodeTypes, this, accessControlPolicy, alreadyExistsBehaviour);
+ for (NodeTypeData nodeType : nodeTypes)
+ {
+ for (NodeTypeManagerListener listener : listeners.values())
+ {
+ listener.nodeTypeRegistered(nodeType.getName());
+ }
+ }
+
return nodeTypes;
}
@@ -750,9 +767,8 @@
new PropertyDefinitionComparator(this, dataManager, itemAutocreator, affectedNodes, locationFactory);
changesLog.addAll(propertyDefinitionComparator.compare(recipientDefinition,
getAllPropertyDefinitions(ancestorAllNodeTypeNames), getAllPropertyDefinitions(recipienAllNodeTypeNames))
+ .getAllStates());
- .getAllStates());
-
return changesLog;
}
@@ -884,6 +900,11 @@
throw new RepositoryException(message.toString());
}
this.nodeTypeRepository.unregisterNodeType(nodeType);
+
+ for (NodeTypeManagerListener listener : listeners.values())
+ {
+ listener.nodeTypeUnregistered(nodeType.getName());
+ }
}
/**
@@ -976,10 +997,8 @@
affectedNodes, this.locationFactory);
changesLog.addAll(propertyDefinitionComparator.compare(recipientDefinition,
getAllPropertyDefinitions(ancestorDefinition.getName()),
- volatileNodeTypeDataManager.getAllPropertyDefinitions(recipientDefinition.getName()))
+ volatileNodeTypeDataManager.getAllPropertyDefinitions(recipientDefinition.getName())).getAllStates());
- .getAllStates());
-
// notify listeners about changes
if (!Arrays.deepEquals(recipientDefinition.getDeclaredSupertypeNames(), ancestorDefinition
.getDeclaredSupertypeNames()))
@@ -1035,6 +1054,11 @@
this.nodeTypeRepository.addNodeType(recipientDefinition, volatileNodeTypes);
+ for (NodeTypeManagerListener listener : listeners.values())
+ {
+ listener.nodeTypeReRegistered(recipientDefinition.getName());
+ }
+
return changesLog;
}
Modified: jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/PropertyTypeRegistry.java
===================================================================
--- jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/PropertyTypeRegistry.java 2012-01-03 14:38:49 UTC (rev 5415)
+++ jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/PropertyTypeRegistry.java 2012-01-03 14:51:49 UTC (rev 5416)
@@ -67,6 +67,8 @@
{
this.registry = reg;
fillCache();
+
+ registry.addListener(this);
}
/**
Modified: jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/QueryHandlerContext.java
===================================================================
--- jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/QueryHandlerContext.java 2012-01-03 14:38:49 UTC (rev 5415)
+++ jcr/branches/1.15.x/exo.jcr.component.core/src/main/java/org/exoplatform/services/jcr/impl/core/query/QueryHandlerContext.java 2012-01-03 14:51:49 UTC (rev 5416)
@@ -21,7 +21,6 @@
import org.exoplatform.services.jcr.core.nodetype.NodeTypeDataManager;
import org.exoplatform.services.jcr.dataflow.ItemDataConsumer;
import org.exoplatform.services.jcr.impl.core.NamespaceRegistryImpl;
-import org.exoplatform.services.jcr.impl.core.nodetype.NodeTypeDataManagerImpl;
import org.exoplatform.services.jcr.impl.core.query.lucene.LuceneVirtualTableResolver;
import org.exoplatform.services.rpc.RPCService;
@@ -144,7 +143,7 @@
this.repositoryName = repositoryName;
this.workspaceName = workspaceName;
this.recoveryFilterUsed = useIndexRecoveryFilters;
- ((NodeTypeDataManagerImpl)this.nodeTypeDataManager).addListener(propRegistry);
+ this.nodeTypeDataManager.addListener(propRegistry);
}
/**
@@ -246,7 +245,7 @@
*/
public void destroy()
{
- ((NodeTypeDataManagerImpl)this.nodeTypeDataManager).removeListener(propRegistry);
+ this.nodeTypeDataManager.removeListener(propRegistry);
}
public DocumentReaderService getExtractor()
More information about the exo-jcr-commits
mailing list