Package org.lilyproject.repository.api

Examples of org.lilyproject.repository.api.Metadata


        // Read metadata
        if (version >= VERSION_2) {
            size = input.readVInt();
            for (int i = 0; i < size; i++) {
                QName fieldName = readQName(input);
                Metadata metadata = MetadataSerDeser.read(input);
                record.setMetadata(fieldName, metadata);
            }
        }

        return record;
View Full Code Here


    private static void printFields(Map<QName, Object> fields, Record record, PrintStream out) {
        for (Map.Entry<QName, Object> field : fields.entrySet()) {
            printField(out, 2, field.getKey(), field.getValue());

            Metadata metadata = record.getMetadata(field.getKey());
            if (metadata != null && metadata.getMap().size() > 0) {
                println(out, 4, "metadata:");
                for (Map.Entry<String, Object> entry : metadata.getMap().entrySet()) {
                    println(out, 6, entry.getKey() + " = " + entry.getValue());
                }
            }
        }
    }
View Full Code Here

    /**
     * Tests that all supported types survive a serialize-deserialize cycle.
     */
    @Test
    public void testSerDeser() {
        Metadata metadata = new MetadataBuilder()
                .value("string", "value")
                .value("int", 5)
                .value("long", 99999999999L)
                .value("float", 3.33f)
                .value("double", 6.66d)
                .value("boolean", Boolean.TRUE)
                .value("bytes", new ByteArray("foobar".getBytes()))
                .value("date", time)
                .build();

        DataOutput output = new DataOutputImpl();
        MetadataSerDeser.write(metadata, output);
        byte[] metadataBytes = output.toByteArray();

        Metadata readMetadata = MetadataSerDeser.read(new DataInputImpl(metadataBytes));
        assertEquals("value", readMetadata.get("string"));
        assertEquals(5, (int)readMetadata.getInt("int", null));
        assertEquals(99999999999L, (long)readMetadata.getLong("long", null));
        assertEquals(3.33f, readMetadata.getFloat("float", null), 0.001f);
        assertEquals(6.66d, (double)readMetadata.getDouble("double", null), 0.001d);
        assertEquals(true, readMetadata.getBoolean("boolean", null));
        assertArrayEquals("foobar".getBytes(), readMetadata.getBytes("bytes").getBytes());
        assertEquals(time ,readMetadata.getDateTime("date", null).toDateTime(DateTimeZone.getDefault()));
    }
View Full Code Here

                Bytes.toBytes(record.getRecordTypeVersion(Scope.VERSIONED_MUTABLE))));
                */

        for (QName fieldName : record.getFields().keySet()) {
            FieldType fieldType = typeManager.getFieldTypeByName(fieldName);
            Metadata metadata = record.getMetadata(fieldName);
            boolean hasMetadata = metadata != null && !metadata.getMap().isEmpty();

            DataOutput output = new DataOutputImpl();

            output.writeByte(hasMetadata ? FieldFlags.METADATA_V1 : FieldFlags.DEFAULT);
            output.writeBytes(fieldType.getValueType().toBytes(record.getField(fieldName), new IdentityRecordStack()));
View Full Code Here

TOP

Related Classes of org.lilyproject.repository.api.Metadata

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.