Package org.fcrepo.server.storage.types

Examples of org.fcrepo.server.storage.types.DatastreamXMLMetadata


    //---

    protected static DigitalObject createTestObject(URIReference... contentModelURIs) {
        DigitalObject obj = new BasicDigitalObject();
        obj.setPid(TEST_PID);
        DatastreamXMLMetadata ds = createXDatastream("RELS-EXT");

        StringBuilder rdf = new StringBuilder();
        rdf
                .append("<rdf:RDF xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\" "
                        + "xmlns:fedora-model=\"info:fedora/fedora-system:def/model#\">\n"
View Full Code Here


        obj.setLastModDate(new Date());
        return obj;
    }

    protected static DatastreamXMLMetadata createXDatastream(String id) {
        DatastreamXMLMetadata ds = new DatastreamXMLMetadata();
        ds.DatastreamID = id;
        ds.DSVersionID = id + ".0";
        ds.DSControlGrp = "X";
        ds.xmlContent = "<doc/>".getBytes();
        ds.DSCreateDT = new Date();
View Full Code Here

    @Test
    public void testTwoInlineDatastreams() throws TransformerException, XpathException {
        DigitalObject obj = createTestObject(FEDORA_OBJECT_3_0);

        final String dsID1 = "DS1";
        DatastreamXMLMetadata ds1 = createXDatastream(dsID1);

        final String dsID2 = "DS2";
        DatastreamXMLMetadata ds2 = createXDatastream(dsID2);

        obj.addDatastreamVersion(ds1, true);
        obj.addDatastreamVersion(ds2, true);
        Document xml = doSerializeOrFail(obj);
View Full Code Here

    @Test
    public void testDeserialize() throws Exception {
        // create a digital object
        DigitalObject original = createTestObject(Models.FEDORA_OBJECT_3_0);
        original.setLastModDate(new Date());
        DatastreamXMLMetadata ds1 = createXDatastream("DS1");
        ds1.DSCreateDT = new Date();
        original.addDatastreamVersion(ds1, true);

        // serialize the object as Atom
        DOSerializer serA = new AtomDOSerializer();
        File f = File.createTempFile("test", null);
        OutputStream out = new FileOutputStream(f);
        serA.serialize(original,
                       out,
                       "utf-8",
                       DOTranslationUtility.SERIALIZE_EXPORT_ARCHIVE);

        // deserialize the object
        DigitalObject candidate = new BasicDigitalObject();
        DODeserializer deserA = new AtomDODeserializer();
        InputStream in = new FileInputStream(f);
        deserA.deserialize(in,
                           candidate,
                           "utf-8",
                           DOTranslationUtility.DESERIALIZE_INSTANCE);

        // check the deserialization
        assertEquals(original.getLastModDate(), candidate.getLastModDate());
        DatastreamXMLMetadata candidateDS =
                (DatastreamXMLMetadata) candidate.datastreams("DS1").iterator()
                        .next();
        assertEquals(ds1.DatastreamID, candidateDS.DatastreamID);
        assertEquals(ds1.DSCreateDT, candidateDS.DSCreateDT);
View Full Code Here

    }

    private void updateRecord(ObjectData objectData, boolean longFields)
            throws ServerException {
        // Create a DC datastream if appropriate.
        DatastreamXMLMetadata dcmd = null;
        if (objectData.getDcPayload() != null) {
            dcmd = new DatastreamXMLMetadata();
            dcmd.DatastreamID = "DC";
            dcmd.DSCreateDT = objectData.getDcModifiedDate();
            dcmd.xmlContent = objectData.getDcPayload().getBytes();
        }
View Full Code Here

    @Test
    public void testTwoInlineDatastreams() {
        DigitalObject obj = createTestObject(FEDORA_OBJECT_3_0);

        final String dsID1 = "DS1";
        DatastreamXMLMetadata ds1 = createXDatastream(dsID1);

        final String dsID2 = "DS2";
        DatastreamXMLMetadata ds2 = createXDatastream(dsID2);

        obj.addDatastreamVersion(ds1, true);
        obj.addDatastreamVersion(ds2, true);

        DigitalObject result = doDeserializeOrFail(obj);
View Full Code Here

        DigitalObject original = createTestObject(FEDORA_OBJECT_3_0);
        final String dsID1 = "DS1";

        /* Populate the object with a test datastream and serialize */
        DatastreamXMLMetadata ds1 = createXDatastream(dsID1);
        original.addDatastreamVersion(ds1, true);

        DigitalObject copy = translatedCopy(original);
        DigitalObject copyOfCopy = translatedCopy(copy);

        DatastreamXMLMetadata ds1copy =
                (DatastreamXMLMetadata) copy.datastreams(dsID1).iterator()
                        .next();
        DatastreamXMLMetadata ds1copyOfCopy =
                (DatastreamXMLMetadata) copyOfCopy.datastreams(dsID1)
                        .iterator().next();

        assertEquals("Length of XML datastream copies is not deterministic!",
                     ds1copy.xmlContent.length,
View Full Code Here

    @Test
    public void testFedoraLocalServerSubstitution() {

        DigitalObject o = createTestObject(SERVICE_DEPLOYMENT_3_0);
        DatastreamXMLMetadata ds1 = createXDatastream("WSDL");
        ds1.xmlContent = "<test>http://local.fedora.server/</test>".getBytes();

        o.addDatastreamVersion(ds1, false);

        DigitalObject processed = doDeserializeOrFail(o);

        DatastreamXMLMetadata ds1proc =
                (DatastreamXMLMetadata) processed.datastreams("WSDL")
                        .iterator().next();

        Iterator<String> ids = processed.datastreamIdIterator();
View Full Code Here

        DigitalObject obj = createTestObject(FEDORA_OBJECT_3_0);
        final String dsID1 = "DS1";

        /* Populate the object with a test datastream and serialize */
        DatastreamXMLMetadata ds1 = createXDatastream(dsID1);
        ds1.xmlContent = payload.toString().getBytes("UTF-8");
        obj.addDatastreamVersion(ds1, true);

        String serializedContent =
                doSerialize(obj, SERIALIZE_STORAGE_INTERNAL)
View Full Code Here

TOP

Related Classes of org.fcrepo.server.storage.types.DatastreamXMLMetadata

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.