]> git.aero2k.de Git - tmp/jakarta-migration.git/commitdiff
CSPACE-1273: REVERTED THIS CHANGE: CSID should be in the payload of term items for...
authorRichard Millet <richard.millet@berkeley.edu>
Tue, 23 Mar 2010 23:28:14 +0000 (23:28 +0000)
committerRichard Millet <richard.millet@berkeley.edu>
Tue, 23 Mar 2010 23:28:14 +0000 (23:28 +0000)
services/common/src/main/java/org/collectionspace/services/nuxeo/client/java/RemoteDocumentModelHandlerImpl.java
services/person/service/src/main/java/org/collectionspace/services/person/nuxeo/PersonDocumentModelHandler.java

index 0149ce943595d2a1f897be3133f69d62773862c9..435e2ae1d2f02e5f848bc995d60090fce4e75b1a 100644 (file)
@@ -84,29 +84,20 @@ public abstract class RemoteDocumentModelHandlerImpl<T, TL>
         }
     }
 
-       @Override
-       public void extractAllParts(DocumentWrapper<DocumentModel> wrapDoc)
-                       throws Exception {
-
-               DocumentModel docModel = wrapDoc.getWrappedObject();
-               String[] schemas = docModel.getDeclaredSchemas();
-               Map<String, ObjectPartType> partsMetaMap = getServiceContext().getPartsMetadata();
-               for (String schema : schemas) {
-                       ObjectPartType partMeta = partsMetaMap.get(schema);
-                       if (partMeta == null) {
-                               continue; // unknown part, ignore
-                       }
-                       Map<String, Object> unQObjectProperties = extractPart(docModel,
-                                       schema, partMeta);
-                       Document doc = DocumentUtils.buildDocument(partMeta, schema,
-                                       unQObjectProperties);
-                       if (logger.isDebugEnabled()) {
-                               DocumentUtils.writeDocument(doc, System.out);
-                       }
-                       MultipartServiceContext ctx = (MultipartServiceContext) getServiceContext();
-                       ctx.addOutputPart(schema, doc, partMeta.getContent().getContentType());
-               }
-       }
+    @Override
+    public void extractAllParts(DocumentWrapper<DocumentModel> wrapDoc) throws Exception {
+
+        DocumentModel docModel = wrapDoc.getWrappedObject();
+        String[] schemas = docModel.getDeclaredSchemas();
+        Map<String, ObjectPartType> partsMetaMap = getServiceContext().getPartsMetadata();
+        for(String schema : schemas){
+            ObjectPartType partMeta = partsMetaMap.get(schema);
+            if(partMeta == null){
+                continue; //unknown part, ignore
+            }
+            extractPart(docModel, schema, partMeta);
+        }
+    }
 
     @Override
     public void fillAllParts(DocumentWrapper<DocumentModel> wrapDoc) throws Exception {
@@ -176,12 +167,10 @@ public abstract class RemoteDocumentModelHandlerImpl<T, TL>
      * @param partMeta metadata for the object to extract
      * @throws Exception
      */
-    protected Map<String, Object> extractPart(DocumentModel docModel, String schema, ObjectPartType partMeta)
+    protected void extractPart(DocumentModel docModel, String schema, ObjectPartType partMeta)
             throws Exception {
-       Map<String, Object> result = null;
-       
         MediaType mt = MediaType.valueOf(partMeta.getContent().getContentType());
-        if (mt.equals(MediaType.APPLICATION_XML_TYPE)){
+        if(mt.equals(MediaType.APPLICATION_XML_TYPE)){
             Map<String, Object> objectProps = docModel.getProperties(schema);
             //unqualify properties before sending the doc over the wire (to save bandwidh)
             //FIXME: is there a better way to avoid duplication of a collection?
@@ -191,10 +180,13 @@ public abstract class RemoteDocumentModelHandlerImpl<T, TL>
                 String unqProp = getUnQProperty(entry.getKey());
                 unQObjectProperties.put(unqProp, entry.getValue());
             }
-            result = unQObjectProperties;
+            Document doc = DocumentUtils.buildDocument(partMeta, schema, unQObjectProperties);
+            if(logger.isDebugEnabled()){
+                DocumentUtils.writeDocument(doc, System.out);
+            }
+            MultipartServiceContext ctx = (MultipartServiceContext) getServiceContext();
+            ctx.addOutputPart(schema, doc, partMeta.getContent().getContentType());
         } //TODO: handle other media types
-        
-        return result;
     }
     
     public AuthorityRefList getAuthorityRefs(
index e77d5de3f0138211466ab70c0c74b85cfce4850b..2bf96742d2c4de8daa70448448c6a45833de4129 100644 (file)
@@ -27,12 +27,10 @@ import java.util.Iterator;
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
-import java.util.Map;
 
 import org.collectionspace.services.PersonJAXBSchema;
 import org.collectionspace.services.common.document.DocumentFilter;
 import org.collectionspace.services.common.document.DocumentWrapper;
-import org.collectionspace.services.common.service.ObjectPartType;
 import org.collectionspace.services.nuxeo.client.java.RemoteDocumentModelHandlerImpl;
 import org.collectionspace.services.nuxeo.util.NuxeoUtils;
 import org.collectionspace.services.person.PersonsCommon;
@@ -57,11 +55,6 @@ public class PersonDocumentModelHandler
         extends RemoteDocumentModelHandlerImpl<PersonsCommon, PersonsCommonList> {
 
     private final Logger logger = LoggerFactory.getLogger(PersonDocumentModelHandler.class);
-    /**
-     * Common part schema label
-     */
-    private static final String COMMON_PART_LABEL = "persons_common";
-    
     /**
      * person is used to stash JAXB object to use when handle is called
      * for Action.CREATE, Action.UPDATE or Action.GET
@@ -202,20 +195,6 @@ public class PersonDocumentModelHandler
         this.personList = personList;
     }
 
-    @Override
-    protected Map<String, Object> extractPart(DocumentModel docModel, String schema, ObjectPartType partMeta)
-            throws Exception {
-       Map<String, Object> unQObjectProperties = super.extractPart(docModel, schema, partMeta);
-       
-       // Add the CSID to the common part
-       if (partMeta.getLabel().equalsIgnoreCase(COMMON_PART_LABEL)) {
-               String csid = NuxeoUtils.extractId(docModel.getPathAsString());
-               unQObjectProperties.put("csid", csid);
-       }
-       
-       return unQObjectProperties;
-    }
-    
     @Override
     public PersonsCommon extractCommonPart(DocumentWrapper wrapDoc)
             throws Exception {