Here is the modification of the DocumentLinkTestCase
private void createDocuments() throws ClientException {
String[] ptschemas = {"dublincore", "advertcardetails"};
DocumentModel wsRoot = coreSession.getDocument(new PathRef(
"/"));
DocumentModel ws = coreSession.createDocumentModel(
wsRoot.getPathAsString(), "ws1", "Workspace");
ws.setProperty("dublincore", "title", "test WS");
ws = coreSession.createDocument(ws);
doc = coreSession.createDocumentModel(ws.getPathAsString(), "file",
"AdvertPrivate");
doc.setProperty("dublincore", "title", "MyDoc");
doc.setProperty("dublincore", "coverage", "MyDocCoverage");
doc.setProperty("advertcardetails", "make", "Holden");
doc = coreSession.createDocument(doc);
link = coreSession.createDocumentModel(ws.getPathAsString(), "link",
"DocumentLink");
link.setProperty("dublincore", "title", "MyLinkToDoc");
link.setProperty(DocumentLinkConstants.DOCUMENT_LINK_SCHEMA_NAME,
"passthroughtSchemas", ptschemas);
String[] ptschemas2 = (String[])
link.getProperty(DocumentLinkConstants.DOCUMENT_LINK_SCHEMA_NAME,
"passthroughtSchemas");
link = coreSession.createDocument(link);
}
public void testOurSchemas() throws ClientException {
createDocuments();
DocumentLinkAdapter adaptedLink =
link.getAdapter(DocumentLinkAdapter.class);
assertNotNull(adaptedLink);
adaptedLink.setTargetDocument(doc);
assertNotNull(adaptedLink.getTargetDocument());
// check link setup
String linkRef = (String) link.getProperty(
DocumentLinkConstants.DOCUMENT_LINK_SCHEMA_NAME,
DocumentLinkConstants.DOCUMENT_LINK_FIELD_NAME);
assertEquals(doc.getRef().toString(), linkRef);
String linkRef2 = (String) adaptedLink.getProperty(
DocumentLinkConstants.DOCUMENT_LINK_SCHEMA_NAME,
DocumentLinkConstants.DOCUMENT_LINK_FIELD_NAME);
assertEquals(doc.getRef().toString(), linkRef2);
// check property accessor pass-throught
String cover1 = (String) link.getProperty("advertcardetails", "make");
assertNull(cover1);
String cover2 = (String) adaptedLink.getProperty("advertcardetails",
"make");
assertNotNull(cover2);
assertEquals("Holden", cover2);
link.setProperty("advertcardetails", "make", "Honda");
adaptedLink.setProperty("advertcardetails", "make", "Ford");
coreSession.saveDocument(link);
coreSession.save();
// check property accessor masking
String title0 = (String) doc.getProperty("advertcardetails", "make");
String title1 = (String) link.getProperty("advertcardetails", "make");
String title2 = (String) adaptedLink.getProperty("advertcardetails",
"make");
assertEquals(adaptedLink.getProperty("advertcardetails", "make"),
"Ford");
assertEquals(link.getProperty("advertcardetails", "make"), "Honda");
}
The final assert doesn't work, the value returned by the getProperty() is null.
Thanks for your help.
Mark
--
Posted by "mark" at Nuxeo Discussions <http://nuxeo.org/discussions>
View the complete thread:
<http://www.nuxeo.org/discussions/thread.jspa?threadID=2417#6613>
_______________________________________________
ECM mailing list
[email protected]
http://lists.nuxeo.com/mailman/listinfo/ecm
To unsubscribe, go to http://lists.nuxeo.com/mailman/options/ecm