/** * Creates an empty property object, the proeprty object can be used * to set values on, if no values are set the property object is not * serialized * @param propertyName The property name * @return The property created for the given property name */ @Override public Property createProperty(String propertyName) { if(!properties.containsKey(propertyName)) { Property property = new MultivalueProperty(propertyName); properties.put(propertyName, property); return property; } else { return properties.get(propertyName); } }
@Override public Object getFirstValueObject() { return getFirstValue().getValue(); }
private void addValueToProperty(String propertyName, boolean isCollection, Value value) { Property mvProperty; if(properties.containsKey(propertyName)) { mvProperty = properties.get(propertyName); } else { mvProperty = new MultivalueProperty(propertyName, isCollection); properties.put(propertyName, mvProperty); } mvProperty.addValue(value); }
@Override public Property mapToProperty(String propertyName, Object value) { Property property = new MultivalueProperty(propertyName); property.addValue(mapToValue(value)); return property; }
@Override public Property mapToProperty(String propertyName, Object value) { Property property = new MultivalueProperty(propertyName); property.addValue(mapToValue(value)); return property; }
@Override public Property mapToProperty(String propertyName, Object value) { Property property = new MultivalueProperty(propertyName); property.addValue(mapToValue(value)); return property; }
@Override public Property mapToProperty(String propertyName, Object value) { Property property = new MultivalueProperty(propertyName, true); List<?> values = mapToRawType(value); values.forEach(v -> { try { TypeMapper typeMapper = getTypeMapper(v.getClass()); property.addValue(typeMapper.mapToValue(v)); } catch (JasDBStorageException e) { throw new RuntimeJasDBException("Unable to map list", e); } }); return property; }
@Override public Property mapToProperty(String propertyName, Object value) { Property property = new MultivalueProperty(propertyName, true); EmbeddedEntity entity = new EmbeddedEntity(); Map<String, ?> rawValueMap = mapToRawType(value); rawValueMap.forEach((k, v) -> { try { TypeMapper typeMapper = getTypeMapper(v.getClass()); entity.addProperty(typeMapper.mapToProperty(k, v)); } catch (JasDBStorageException e) { LOG.error("", e); } }); property.addValue(new EntityValue(entity)); return property; }