Package org.apache.isis.objectstore.nosql.db

Examples of org.apache.isis.objectstore.nosql.db.StateWriter


        assertEquals("{\"number\": null}", writer.getData());
    }

    @Test
    public void addAggregate() throws Exception {
        final StateWriter aggregate = writer.addAggregate("#4");
        aggregate.writeField("number", "string-data");
        assertEquals("{\"#4\": {\"number\": \"string-data\"}}", writer.getData());
    }
View Full Code Here


    }

    @Test
    public void elementData() throws Exception {
        final List<StateWriter> elements = new ArrayList<StateWriter>();
        final StateWriter elementWriter1 = writer.createElementWriter();
        elementWriter1.writeField("number", "1");
        elements.add(elementWriter1);
        final StateWriter elementWriter2 = writer.createElementWriter();
        elementWriter2.writeField("number", "4");
        elements.add(elementWriter2);

        writer.writeCollection("coll", elements);

        assertEquals("{\"coll\": [\n    {\"number\": \"1\"},\n    {\"number\": \"4\"}\n]}", writer.getData());
View Full Code Here

    public void execute(final PersistenceCommandContext context) {
        final NoSqlCommandContext noSqlCommandContext = (NoSqlCommandContext) context;
       
        final ObjectSpecification objectSpec = adapter.getSpecification();
        //final String specName = objectSpec.getFullIdentifier();
        final StateWriter writer = noSqlCommandContext.createStateWriter(objectSpec.getSpecId());
       
        //final String key = keyCreator.key(adapter.getOid());
        //writer.writeId(key);
        final TypedOid typedOid = (TypedOid) adapter.getOid();
        writer.writeOid(typedOid);
       
        writeFields(writer, adapter);
        final String user = getAuthenticationSession().getUserName();

        final Version currentVersion = adapter.getVersion();
       
        final Version newVersion = mode.isUpdate() ? versionCreator.nextVersion(currentVersion, user) : versionCreator.newVersion(user);
        adapter.setVersion(newVersion);
        if (newVersion != null) {
            final String version = currentVersion == null ? null : versionCreator.versionString(currentVersion);
            writer.writeVersion(version, versionCreator.versionString(newVersion));
            writer.writeUser(newVersion.getUser());
            writer.writeTime(versionCreator.timeString(newVersion));
            writer.writeEncryptionType(dataEncrypter.getType());
        }

        if (mode.isUpdate()) {
            noSqlCommandContext.update(writer);
        } else {
View Full Code Here

            throw new NoSqlStoreException("Object type is inconsistent with it OID - it should have an AggregatedOid: " + referencedAdapter);
        }
        final AggregatedOid aggregatedOid = (AggregatedOid) referencedOid;
       
        final String associationId = otoa.getId();
        final StateWriter aggregateWriter = writer.addAggregate(associationId);
        //aggregateWriter.writeId(aggregatedOid.getLocalId());
        aggregateWriter.writeOid(aggregatedOid);
       
        writeFields(aggregateWriter, referencedAdapter);
    }
View Full Code Here

    private void writeCollectionOfAggregated(final StateWriter writer, final ObjectAssociation association, final ObjectAdapter collectionAdapter) {
        final List<StateWriter> elementWriters = Lists.newArrayList();
        final CollectionFacet collectionFacet = collectionAdapter.getSpecification().getFacet(CollectionFacet.class);
        for (final ObjectAdapter referencedAdapter : collectionFacet.iterable(collectionAdapter)) {
            final AggregatedOid elementOid = (AggregatedOid) referencedAdapter.getOid();
            final StateWriter elementWriter = writer.createElementWriter();
           
            //elementWriter.writeId(elementOid.getLocalId());
            elementWriter.writeOid(elementOid);
           
            writeFields(elementWriter, referencedAdapter);
            elementWriters.add(elementWriter);
        }
        writer.writeCollection(association.getId(), elementWriters);
View Full Code Here

TOP

Related Classes of org.apache.isis.objectstore.nosql.db.StateWriter

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.