package ch.vorburger.blueprint.common.data; /** * Something which is an instance of a DataStruct. * * @see DataStruct * * @author Michael Vorburger */ public interface DataStructObject { // better name?? DataStruct struct(); // TODO rename to just get() ? Object getPropertyValue(String propertyName); Object getPropertyValue(DataProp property); // TODO rename to just set() ? DataStructObject setPropertyValue(String propertyName, Object propertyValue); DataStructObject setPropertyValue(DataProp property, Object propertyValue); /** * Add a value to a multi-valued property. * * @param multiplePropertyName name of Property, must be multi-valued * @param propertyValueToAdd may be an instance of DataStructObject or just an e.g. String */ // TODO rename to just get() ? void addPropertyValue(String multiplePropertyName, Object propertyValueToAdd); }