You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by su...@apache.org on 2011/07/03 10:10:32 UTC

svn commit: r1142393 - in /incubator/stanbol/trunk/cmsadapter: cmis/src/main/java/org/apache/stanbol/cmsadapter/cmis/processor/ core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ servicesapi/src/main/java/org/apache/stanbol/cmsadapter/ser...

Author: suat
Date: Sun Jul  3 08:10:32 2011
New Revision: 1142393

URL: http://svn.apache.org/viewvc?rev=1142393&view=rev
Log:
- Added session parameter to Processor interface to distinguish connection type is JCR or CMIS.

Modified:
    incubator/stanbol/trunk/cmsadapter/cmis/src/main/java/org/apache/stanbol/cmsadapter/cmis/processor/RelationshipProcessor.java
    incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ClassificationObjectProcesser.java
    incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ContentObjectProcesser.java
    incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/EnhancementFetcher.java
    incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java
    incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/SubsumptionBridgesProcesser.java
    incubator/stanbol/trunk/cmsadapter/servicesapi/src/main/java/org/apache/stanbol/cmsadapter/servicesapi/processor/Processor.java
    incubator/stanbol/trunk/cmsadapter/web/src/main/java/org/apache/stanbol/cmsadapter/web/utils/RestURIHelper.java

Modified: incubator/stanbol/trunk/cmsadapter/cmis/src/main/java/org/apache/stanbol/cmsadapter/cmis/processor/RelationshipProcessor.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/cmis/src/main/java/org/apache/stanbol/cmsadapter/cmis/processor/RelationshipProcessor.java?rev=1142393&r1=1142392&r2=1142393&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/cmis/src/main/java/org/apache/stanbol/cmsadapter/cmis/processor/RelationshipProcessor.java (original)
+++ incubator/stanbol/trunk/cmsadapter/cmis/src/main/java/org/apache/stanbol/cmsadapter/cmis/processor/RelationshipProcessor.java Sun Jul  3 08:10:32 2011
@@ -24,50 +24,51 @@ import com.hp.hpl.jena.ontology.OntPrope
 /**
  * TODO: This processer is not tested yet.
  * 
- * This processor creates OWL object property assertions from CMIS {@link Relationship}s.
- * Subject is the individual generated for the source object of the relationship.
- * Property is the property generated for the type of the relationship.
- * Object is the individual generated for the target object of the relationship.
+ * This processor creates OWL object property assertions from CMIS {@link Relationship}s. Subject is the
+ * individual generated for the source object of the relationship. Property is the property generated for the
+ * type of the relationship. Object is the individual generated for the target object of the relationship.
  * 
  * @author cihan
- *
+ * 
  */
 
 @Service
-@Component(immediate=true)
+@Component(immediate = true)
 public class RelationshipProcessor implements Processor {
     private static final Logger log = LoggerFactory.getLogger(RelationshipProcessor.class);
 
     @Override
-    public Boolean canProcess(Object cmsObject) {
-        // TODO need to check the session too
+    public Boolean canProcess(Object cmsObject, Object session) {
         // here we assume Document and Folder types of CMIS spec is converted to CMSObjects
-        return cmsObject instanceof CMSObject;
+        return cmsObject instanceof CMSObject && session instanceof Session;
     }
 
     @Override
     public void createObjects(List<Object> objects, MappingEngine engine) {
-        for (Object object : objects) {
-            if (!(object instanceof CMSObject)) {
-                log.info("Incompatible type given as argument: {}. Skipping ...", object.getClass().getName());
-            } else {
-                try {
-                    CMSObject cmsObject = (CMSObject) object;
-                    CmisObject node = ((Session) engine.getSession()).getObject(CMISObjectId
-                            .getObjectId(cmsObject.getUniqueRef()));
-                    List<Relationship> relations = node.getRelationships();
-                    //FIXME find a better way to reuse cmislifters' func.
-                    CMISNodeTypeLifter lifter = new CMISNodeTypeLifter(engine);
-
-                    for (Relationship relation : relations) {
-                        processRelation(cmsObject, relation, engine, lifter);
+        if (objects != null) {
+            for (Object object : objects) {
+                if (canProcess(object, engine.getSession())) {
+                    try {
+                        CMSObject cmsObject = (CMSObject) object;
+                        CmisObject node = ((Session) engine.getSession()).getObject(CMISObjectId
+                                .getObjectId(cmsObject.getUniqueRef()));
+                        List<Relationship> relations = node.getRelationships();
+                        // FIXME find a better way to reuse cmislifters' func.
+                        CMISNodeTypeLifter lifter = new CMISNodeTypeLifter(engine);
+
+                        for (Relationship relation : relations) {
+                            processRelation(cmsObject, relation, engine, lifter);
+                        }
+                    } catch (ClassCastException e) {
+                        log.info("Class cast exception at processing Object: {} ", object);
+                        log.info("Exception is ", e);
+                    } catch (CmisBaseException e) {
+                        log.info("Repository exception at processing Object: {}", object);
+                        log.info("Exception is ", e);
                     }
-                } catch (ClassCastException e) {
-                    log.info("Class cast exception at processing Object: {} ", object);
-                    log.info("Exception is ", e);
-                } catch (CmisBaseException e) {
-                    log.info("Repository exception at processing Object: {}", object);
-                    log.info("Exception is ", e);
+                } else {
+                    log.info("Incompatible type given as argument: {}. Skipping ...", object.getClass()
+                            .getName());
                 }
             }
         }
@@ -91,7 +92,7 @@ public class RelationshipProcessor imple
 
     @Override
     public void deleteObjects(List<Object> objects, MappingEngine engine) {
-       log.debug("Other processors should have already deleted my triples because I only add property assertions to an individual");
+        log.debug("Other processors should have already deleted my triples because I only add property assertions to an individual");
     }
 
 }

Modified: incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ClassificationObjectProcesser.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ClassificationObjectProcesser.java?rev=1142393&r1=1142392&r2=1142393&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ClassificationObjectProcesser.java (original)
+++ incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ClassificationObjectProcesser.java Sun Jul  3 08:10:32 2011
@@ -113,7 +113,7 @@ public class ClassificationObjectProcess
         } else {
             // work without bridge definitions
             for (DObject cmsObject : cmsObjects) {
-                if (canProcess(cmsObject.getInstance())) {
+                if (canProcess(cmsObject.getInstance(), null)) {
                     try {
                         OntClass parentClass = processObject(cmsObject, engine);
                         if (parentClass == null) {
@@ -239,7 +239,7 @@ public class ClassificationObjectProcess
             }
         } else {
             for (DObject cmsObject : cmsObjects) {
-                if (canProcess(cmsObject.getInstance())) {
+                if (canProcess(cmsObject.getInstance(), null)) {
                     orh.deleteStatementsByReference(cmsObject.getID());
                 }
             }
@@ -247,7 +247,7 @@ public class ClassificationObjectProcess
     }
 
     @Override
-    public Boolean canProcess(Object cmsObject) {
+    public Boolean canProcess(Object cmsObject, Object session) {
         return cmsObject instanceof ClassificationObject;
     }
 
@@ -273,7 +273,7 @@ public class ClassificationObjectProcess
         if (objects != null) {
             DObjectAdapter adapter = engine.getDObjectAdapter();
             for (Object o : objects) {
-                if (canProcess(o)) {
+                if (canProcess(o, null)) {
                     dObjects.add(adapter.wrapAsDObject((CMSObject) o));
                 }
             }

Modified: incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ContentObjectProcesser.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ContentObjectProcesser.java?rev=1142393&r1=1142392&r2=1142393&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ContentObjectProcesser.java (original)
+++ incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ContentObjectProcesser.java Sun Jul  3 08:10:32 2011
@@ -100,7 +100,7 @@ public class ContentObjectProcesser exte
         } else {
             // work without bridge definitions
             for (DObject cmsObject : cmsObjects) {
-                if (canProcess(cmsObject.getInstance())) {
+                if (canProcess(cmsObject.getInstance(), null)) {
                     try {
                         Individual individual = processObject(cmsObject, engine);
                         if (individual == null) {
@@ -162,7 +162,7 @@ public class ContentObjectProcesser exte
     }
 
     @Override
-    public Boolean canProcess(Object object) {
+    public Boolean canProcess(Object object, Object session) {
         return object instanceof ContentObject;
     }
 
@@ -202,7 +202,7 @@ public class ContentObjectProcesser exte
             }
         } else {
             for (DObject cmsObject : cmsObjects) {
-                if (canProcess(cmsObject.getInstance())) {
+                if (canProcess(cmsObject.getInstance(), null)) {
                     orh.deleteStatementsByReference(cmsObject.getID());
                 }
             }
@@ -226,7 +226,7 @@ public class ContentObjectProcesser exte
         if (objects != null) {
             DObjectAdapter adapter = engine.getDObjectAdapter();
             for (Object o : objects) {
-                if (canProcess(o)) {
+                if (canProcess(o, null)) {
                     dObjects.add(adapter.wrapAsDObject((CMSObject) o));
                 }
             }

Modified: incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/EnhancementFetcher.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/EnhancementFetcher.java?rev=1142393&r1=1142392&r2=1142393&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/EnhancementFetcher.java (original)
+++ incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/EnhancementFetcher.java Sun Jul  3 08:10:32 2011
@@ -79,7 +79,7 @@ public class EnhancementFetcher extends 
     }
 
     @Override
-    public Boolean canProcess(Object cmsObject) {
+    public Boolean canProcess(Object cmsObject, Object session) {
         return cmsObject instanceof ContentObject;
     }
 
@@ -121,7 +121,7 @@ public class EnhancementFetcher extends 
         } else {
             // work without bridge definitions
             for (DObject cmsObject : cmsObjects) {
-                if (canProcess(cmsObject.getInstance())) {
+                if (canProcess(cmsObject.getInstance(), null)) {
                     getEnhancements(cmsObject, engine);
                 }
             }
@@ -212,7 +212,7 @@ public class EnhancementFetcher extends 
         } else {
             List<DObject> processableObjects = new ArrayList<DObject>();
             for (DObject cmsObject : cmsObjects) {
-                if (canProcess(cmsObject.getInstance())) {
+                if (canProcess(cmsObject.getInstance(), null)) {
                     processableObjects.add(cmsObject);
                 }
             }
@@ -231,7 +231,7 @@ public class EnhancementFetcher extends 
         if (objects != null) {
             DObjectAdapter adapter = engine.getDObjectAdapter();
             for (Object o : objects) {
-                if (canProcess(o)) {
+                if (canProcess(o, null)) {
                     dObjects.add(adapter.wrapAsDObject((CMSObject) o));
                 }
             }

Modified: incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java?rev=1142393&r1=1142392&r2=1142393&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java (original)
+++ incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/ObjectTypeProcessor.java Sun Jul  3 08:10:32 2011
@@ -59,7 +59,7 @@ public class ObjectTypeProcessor impleme
     }
 
     @Override
-    public Boolean canProcess(Object cmsObject) {
+    public Boolean canProcess(Object cmsObject, Object session) {
         return cmsObject instanceof ObjectTypeDefinition;
     }
 
@@ -71,7 +71,7 @@ public class ObjectTypeProcessor impleme
 
     private void createDecoratedObjectTypes(List<DObjectType> objectTypes, MappingEngine engine) {
         for (DObjectType objectType : objectTypes) {
-            if (canProcess(objectType.getInstance())) {
+            if (canProcess(objectType.getInstance(), null)) {
                 try {
                     OntClass parentClass = processType(objectType, engine);
                     if (parentClass == null) {
@@ -200,7 +200,7 @@ public class ObjectTypeProcessor impleme
     private void deleteDecoratedObjectTypes(List<DObjectType> objectTypes, MappingEngine engine) {
         OntologyResourceHelper orh = engine.getOntologyResourceHelper();
         for (DObjectType objectType : objectTypes) {
-            if (canProcess(objectType.getInstance())) {
+            if (canProcess(objectType.getInstance(), null)) {
                 orh.deleteStatementsByReference(objectType.getID());
                 deletePropertyDefinitions(objectType.getID(), orh);
                 
@@ -230,7 +230,7 @@ public class ObjectTypeProcessor impleme
         if (objects != null) {
             DObjectAdapter adapter = engine.getDObjectAdapter();
             for (Object o : objects) {
-                if (canProcess(o)) {
+                if (canProcess(o, null)) {
                     dObjectTypes.add(adapter.wrapAsDObjectType((ObjectTypeDefinition) o));
                 }
             }

Modified: incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/SubsumptionBridgesProcesser.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/SubsumptionBridgesProcesser.java?rev=1142393&r1=1142392&r2=1142393&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/SubsumptionBridgesProcesser.java (original)
+++ incubator/stanbol/trunk/cmsadapter/core/src/main/java/org/apache/stanbol/cmsadapter/core/processor/SubsumptionBridgesProcesser.java Sun Jul  3 08:10:32 2011
@@ -163,7 +163,7 @@ public class SubsumptionBridgesProcesser
     }
 
     @Override
-    public Boolean canProcess(Object object) {
+    public Boolean canProcess(Object object, Object session) {
         return object instanceof ClassificationObject;
     }
 
@@ -177,7 +177,7 @@ public class SubsumptionBridgesProcesser
         if (objects != null) {
             DObjectAdapter adapter = engine.getDObjectAdapter();
             for (Object o : objects) {
-                if (canProcess(o)) {
+                if (canProcess(o, null)) {
                     dObjects.add(adapter.wrapAsDObject((CMSObject) o));
                 }
             }

Modified: incubator/stanbol/trunk/cmsadapter/servicesapi/src/main/java/org/apache/stanbol/cmsadapter/servicesapi/processor/Processor.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/servicesapi/src/main/java/org/apache/stanbol/cmsadapter/servicesapi/processor/Processor.java?rev=1142393&r1=1142392&r2=1142393&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/servicesapi/src/main/java/org/apache/stanbol/cmsadapter/servicesapi/processor/Processor.java (original)
+++ incubator/stanbol/trunk/cmsadapter/servicesapi/src/main/java/org/apache/stanbol/cmsadapter/servicesapi/processor/Processor.java Sun Jul  3 08:10:32 2011
@@ -16,9 +16,10 @@ public interface Processor {
     /**
      * Method for determining if the processor can process the specified CMS object.
      * @param cmsObject
+     * @param session a JCR or CMIS Session object 
      * @return true if the CMS object can be processed.
      */
-    Boolean canProcess(Object cmsObject);
+    Boolean canProcess(Object cmsObject, Object session);
     
     /**
      * Creates extracted triples from the provided CMS objects. 

Modified: incubator/stanbol/trunk/cmsadapter/web/src/main/java/org/apache/stanbol/cmsadapter/web/utils/RestURIHelper.java
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/cmsadapter/web/src/main/java/org/apache/stanbol/cmsadapter/web/utils/RestURIHelper.java?rev=1142393&r1=1142392&r2=1142393&view=diff
==============================================================================
--- incubator/stanbol/trunk/cmsadapter/web/src/main/java/org/apache/stanbol/cmsadapter/web/utils/RestURIHelper.java (original)
+++ incubator/stanbol/trunk/cmsadapter/web/src/main/java/org/apache/stanbol/cmsadapter/web/utils/RestURIHelper.java Sun Jul  3 08:10:32 2011
@@ -7,13 +7,8 @@ public class RestURIHelper {
 	private static final String DATATYPE_PROPERTIES = "datatypeProperties";
 	private static final String OBJECT_PROPERTIES = "objectProperties";
 
-	public static void main(String[] args) {
-		String targetStr = "http://jcr_test/NClassO41_1";
-		System.out.println(targetStr.substring(0, targetStr.lastIndexOf('#')));
-	}
-
 	public static String getOntologyHref(String ontologyURI) {
-		return "/" + ONTOLOGY + "/" + ontologyURI;
+		return ONTOLOGY + "/" + ontologyURI;
 	}
 
 	public static String getClassHref(String ontologyURI, String classURI) {