Package org.terasology.reflection.metadata

Examples of org.terasology.reflection.metadata.FieldMetadata


        for (NetData.SerializationInfo info : infoList) {
            ClassMetadata<? extends T, ?> metadata = classLibrary.getMetadata(new SimpleUri(info.getName()));
            if (metadata != null) {
                idTable.put(metadata.getType(), info.getId());
                for (int i = 0; i < info.getFieldIds().size(); ++i) {
                    FieldMetadata field = metadata.getField(info.getFieldName(i));
                    if (field != null) {
                        field.setId(info.getFieldIds().byteAt(i));
                    } else {
                        logger.error("Server has unknown field '{}' on '{}'", info.getFieldName(i), info.getName());
                    }
                }
            } else {
View Full Code Here


    @Test
    public void testPrivateField() throws Exception {
        DefaultClassMetadata<PrivateField> metadata = new DefaultClassMetadata<>(new SimpleUri(), PrivateField.class, factory, copyStrategyLibrary);
        assertNotNull(metadata);
        assertEquals(1, metadata.getFieldCount());
        FieldMetadata fieldMetadata = metadata.getField("name");
        assertNotNull(fieldMetadata);
        assertEquals(String.class, fieldMetadata.getType());
        assertEquals("name", fieldMetadata.getName());
        assertNotNull(metadata.newInstance());
    }
View Full Code Here

    @Override
    public T deserialize(PersistedData data, DeserializationContext context) {
        try {
            T result = clazz.newInstance();
            for (Map.Entry<String, PersistedData> entry : data.getAsValueMap().entrySet()) {
                FieldMetadata fieldInfo = fieldByName.get(UriUtil.normalise(entry.getKey()));
                if (fieldInfo != null) {
                    TypeHandler handler = mappedFields.get(fieldInfo);
                    Object val = handler.deserialize(entry.getValue(), context);
                    fieldInfo.setValue(result, val);
                }
            }
            return result;
        } catch (Exception e) {
            logger.error("Unable to deserialize {}", data, e);
View Full Code Here

                id = jsonObject.get("id").getAsString();
            }

            UIWidget element = elementMetadata.newInstance();
            if (id != null) {
                FieldMetadata fieldMetadata = elementMetadata.getField("id");
                if (fieldMetadata == null) {
                    logger.warn("UIWidget type {} lacks id field", elementMetadata.getUri());
                } else {
                    fieldMetadata.setValue(element, id);
                }
            }

            // Deserialize normal fields.
            for (FieldMetadata<? extends UIWidget, ?> field : elementMetadata.getFields()) {
View Full Code Here

TOP

Related Classes of org.terasology.reflection.metadata.FieldMetadata

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.