import org.collectionspace.services.collectionobject.CollectionobjectsCommon;\r
import org.collectionspace.services.collectionobject.TitleGroup;\r
import org.collectionspace.services.collectionobject.TitleGroupList;\r
+import org.collectionspace.services.common.datetime.GregorianCalendarDateTimeUtils;\r
import org.collectionspace.services.intake.IntakesCommon;\r
import org.collectionspace.services.relation.RelationsCommon;\r
import org.collectionspace.services.relation.RelationshipType;\r
* @param identifier the identifier\r
*/\r
void fillIntake(IntakesCommon theIntake, String identifier) {\r
- fillIntake(theIntake, "entryNumber-" + identifier, "entryDate-"\r
- + identifier);\r
+ String CURRENT_DATE_UTC = GregorianCalendarDateTimeUtils.currentDateUTC();\r
+ fillIntake(theIntake, "entryNumber-" + identifier, CURRENT_DATE_UTC);\r
}\r
\r
/**\r
xmlns:ns2="http://collectionspace.org/services/jaxb"\r
xmlns:ns3="http://collectionspace.org/services/acquisition">\r
<acquisitionDates>\r
- <acquisitionDate>NEW First Acquisition Date-334</acquisitionDate>\r
- <acquisitionDate>Second Acquisition Date-1292275630222</acquisitionDate>\r
+ <acquisitionDate>2010-11-15T07:30:24Z</acquisitionDate>\r
+ <acquisitionDate>2009-10-15T07:30:24Z</acquisitionDate>\r
</acquisitionDates>\r
<acquisitionReferenceNumber>acquisitionReferenceNumber-1</acquisitionReferenceNumber>\r
<owners>\r
xmlns:ns2="http://collectionspace.org/services/jaxb"\r
xmlns:ns3="http://collectionspace.org/services/acquisition">\r
<acquisitionDates>\r
- <acquisitionDate>Second Acquisition Date-1292275631503</acquisitionDate>\r
- <acquisitionDate>First Acquisition Date -1292275631503</acquisitionDate>\r
+ <acquisitionDate>2010-11-15T07:30:24Z</acquisitionDate>\r
+ <acquisitionDate>2009-10-15T07:30:24Z</acquisitionDate>\r
</acquisitionDates>\r
<acquisitionReferenceNumber>acquisitionReferenceNumber-1292275631503</acquisitionReferenceNumber>\r
<owners>\r
<acquisitionReferenceNumber>acquisitionReferenceNumber-1</acquisitionReferenceNumber>\r
<acquisitionFundingList/>\r
<acquisitionDates>\r
-<acquisitionDate>NEW First Acquisition Date-334</acquisitionDate>\r
-<acquisitionDate>Second Acquisition Date-1292275630222</acquisitionDate>\r
+<acquisitionDate>2010-11-15T07:30:24Z</acquisitionDate>\r
+<acquisitionDate>2009-10-15T07:30:24Z</acquisitionDate>\r
</acquisitionDates>\r
<acquisitionSources>\r
<acquisitionSource>Donor Acquisition Source-1292275630222</acquisitionSource>\r
<acquisitionReferenceNumber>acquisitionReferenceNumber-1292275631503</acquisitionReferenceNumber>\r
<acquisitionFundingList/>\r
<acquisitionDates>\r
-<acquisitionDate>Second Acquisition Date-1292275631503</acquisitionDate>\r
-<acquisitionDate>First Acquisition Date -1292275631503</acquisitionDate>\r
+<acquisitionDate>2010-11-15T07:30:24Z</acquisitionDate>\r
+<acquisitionDate>2009-10-15T07:30:24Z</acquisitionDate>\r
</acquisitionDates>\r
<acquisitionSources>\r
<acquisitionSource>Museum Acquisition Source-1292275631503</acquisitionSource>\r
<acquisitionReferenceNumber>acquisitionReferenceNumber-1292275630222</acquisitionReferenceNumber>\r
<acquisitionFundingList/>\r
<acquisitionDates>\r
-<acquisitionDate>First Acquisition Date -1292275630222</acquisitionDate>\r
-<acquisitionDate>Second Acquisition Date-1292275630222</acquisitionDate>\r
+<acquisitionDate>2010-11-15T07:30:24Z</acquisitionDate>\r
+<acquisitionDate>2009-10-15T07:30:24Z</acquisitionDate>\r
</acquisitionDates>\r
<acquisitionSources>\r
<acquisitionSource>Donor Acquisition Source-1292275630222</acquisitionSource>\r
<pageNum>0</pageNum>
<itemsInPage>3</itemsInPage>
<totalItems>3</totalItems>
- <fieldsReturned>csid|uri|updatedAt|displayName|shortIdentifier|refName|order</fieldsReturned>
+ <fieldsReturned>csid|uri|updatedAt|order|displayName|shortIdentifier|refName|termStatus</fieldsReturned>
<list-item>
<displayName>${Item3DupeOrder.displayName}</displayName>
<shortIdentifier>${Item3DupeOrder.itemID}</shortIdentifier>
<order>${Item3DupeOrder.order}</order>
<uri>/vocabularies/${Vocabulary1.CSID}/items/${Item3DupeOrder.CSID}</uri>
- <csid>${Item3DupeOrder.CSID}</csid>
+ <csid>${Item3DupeOrder.CSID}</csid>
+ <termStatus/>
</list-item>
<list-item>
<displayName>${Item2.displayName}</displayName>
<shortIdentifier>${Item2.itemID}</shortIdentifier>
<order>${Item2.order}</order>
<uri>/vocabularies/${Vocabulary1.CSID}/items/${Item2.CSID}</uri>
- <csid>${Item2.CSID}</csid>
+ <csid>${Item2.CSID}</csid>
+ <termStatus/>
</list-item>
<list-item>
<displayName>${Item1.displayName}</displayName>
<shortIdentifier>${Item1.itemID}</shortIdentifier>
<order>${Item1.order}</order>
<uri>/vocabularies/${Vocabulary1.CSID}/items/${Item1.CSID}</uri>
- <csid>${Item1.CSID}</csid>
+ <csid>${Item1.CSID}</csid>
+ <termStatus/>
</list-item>
</ns3:abstract-common-list>
import org.collectionspace.services.common.context.MultipartServiceContext;
import org.collectionspace.services.common.context.ServiceBindingUtils;
import org.collectionspace.services.common.context.ServiceContext;
+import org.collectionspace.services.common.document.DocumentException;
import org.collectionspace.services.common.document.DocumentWrapper;
import org.collectionspace.services.common.document.DocumentWrapperImpl;
import org.collectionspace.services.common.relation.IRelationsManager;
import org.collectionspace.services.common.vocabulary.AuthorityItemJAXBSchema;
import org.collectionspace.services.common.vocabulary.RefNameServiceUtils;
import org.collectionspace.services.nuxeo.client.java.DocHandlerBase;
+import org.collectionspace.services.common.service.ListResultField;
import org.collectionspace.services.nuxeo.util.NuxeoUtils;
import org.collectionspace.services.relation.RelationResource;
import org.collectionspace.services.relation.RelationsCommon;
this.authorityRefNameBase = value;
}
+ @Override
+ public List<ListResultField> getListItemsArray() throws DocumentException {
+ List<ListResultField> list = super.getListItemsArray();
+ int nFields = list.size();
+ // Ensure some common fields so do not depend upon config for general logic
+ boolean hasDisplayName = false;
+ boolean hasShortId = false;
+ boolean hasRefName = false;
+ boolean hasTermStatus = false;
+ for(int i=0;i<nFields;i++) {
+ ListResultField field = list.get(i);
+ String elName = field.getElement();
+ if(AuthorityItemJAXBSchema.DISPLAY_NAME.equals(elName))
+ hasDisplayName = true;
+ else if(AuthorityItemJAXBSchema.SHORT_IDENTIFIER.equals(elName))
+ hasShortId = true;
+ else if(AuthorityItemJAXBSchema.REF_NAME.equals(elName))
+ hasRefName = true;
+ else if(AuthorityItemJAXBSchema.TERM_STATUS.equals(elName))
+ hasTermStatus = true;
+ }
+ ListResultField field;
+ if(!hasDisplayName) {
+ field = new ListResultField();
+ field.setElement(AuthorityItemJAXBSchema.DISPLAY_NAME);
+ field.setXpath(AuthorityItemJAXBSchema.DISPLAY_NAME);
+ list.add(field);
+ }
+ if(!hasShortId) {
+ field = new ListResultField();
+ field.setElement(AuthorityItemJAXBSchema.SHORT_IDENTIFIER);
+ field.setXpath(AuthorityItemJAXBSchema.SHORT_IDENTIFIER);
+ list.add(field);
+ }
+ if(!hasRefName) {
+ field = new ListResultField();
+ field.setElement(AuthorityItemJAXBSchema.REF_NAME);
+ field.setXpath(AuthorityItemJAXBSchema.REF_NAME);
+ list.add(field);
+ }
+ if(!hasTermStatus) {
+ field = new ListResultField();
+ field.setElement(AuthorityItemJAXBSchema.TERM_STATUS);
+ field.setXpath(AuthorityItemJAXBSchema.TERM_STATUS);
+ list.add(field);
+ }
+ return list;
+
+ }
+
+
/* (non-Javadoc)
* @see org.collectionspace.services.nuxeo.client.java.DocumentModelHandler#handleCreate(org.collectionspace.services.common.document.DocumentWrapper)
*/
<service:DocHandlerParams xmlns:service="http://collectionspace.org/services/common/service">
<service:params>
<service:ListResultsFields>
- <service:ListResultField>
- <service:element>displayName</service:element>
- <service:xpath>displayName</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>shortIdentifier</service:element>
- <service:xpath>shortIdentifier</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>refName</service:element>
- <service:xpath>refName</service:xpath>
- </service:ListResultField>
+ <!-- Omit the standard AuthorityItem items (they are handled by the code) -->
<service:ListResultField>
<service:element>order</service:element>
<service:xpath>order</service:xpath>
<service:DocHandlerParams xmlns:service="http://collectionspace.org/services/common/service">
<service:params>
<service:ListResultsFields>
- <service:ListResultField>
- <service:element>displayName</service:element>
- <service:xpath>displayName</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>shortIdentifier</service:element>
- <service:xpath>shortIdentifier</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>refName</service:element>
- <service:xpath>refName</service:xpath>
- </service:ListResultField>
+ <!-- Omit the standard AuthorityItem items (they are handled by the code) -->
</service:ListResultsFields>
</service:params>
</service:DocHandlerParams>
<service:DocHandlerParams xmlns:service="http://collectionspace.org/services/common/service">
<service:params>
<service:ListResultsFields>
- <service:ListResultField>
- <service:element>displayName</service:element>
- <service:xpath>displayName</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>shortIdentifier</service:element>
- <service:xpath>shortIdentifier</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>refName</service:element>
- <service:xpath>refName</service:xpath>
- </service:ListResultField>
+ <!-- Omit the standard AuthorityItem items (they are handled by the code) -->
</service:ListResultsFields>
</service:params>
</service:DocHandlerParams>
<service:DocHandlerParams xmlns:service="http://collectionspace.org/services/common/service">
<service:params>
<service:ListResultsFields>
- <service:ListResultField>
- <service:element>displayName</service:element>
- <service:xpath>displayName</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>shortIdentifier</service:element>
- <service:xpath>shortIdentifier</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>refName</service:element>
- <service:xpath>refName</service:xpath>
- </service:ListResultField>
+ <!-- Omit the standard AuthorityItem items (they are handled by the code) -->
</service:ListResultsFields>
</service:params>
</service:DocHandlerParams>
<service:DocHandlerParams xmlns:service="http://collectionspace.org/services/common/service">
<service:params>
<service:ListResultsFields>
- <service:ListResultField>
- <service:element>displayName</service:element>
- <service:xpath>displayName</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>shortIdentifier</service:element>
- <service:xpath>shortIdentifier</service:xpath>
- </service:ListResultField>
- <service:ListResultField>
- <service:element>refName</service:element>
- <service:xpath>refName</service:xpath>
- </service:ListResultField>
+ <!-- Omit the standard AuthorityItem items (they are handled by the code) -->
</service:ListResultsFields>
</service:params>
</service:DocHandlerParams>