@Override public List<Object> write(Transaction transaction) throws IllegalStateException { // // Decide if feature values is allowed to be updated from backing store // if (!isDetached()) { throw new IllegalStateException( "ESimpleFeature " + getType().getTypeName() + " is not detached"); } // // Get properties // List<EFeaturePropertyDelegate<?, ? extends Property, ? extends EStructuralFeature>> eList = eInternal.getProperties(); // // Prepare to read values from properties // List<Object> eValues = new ArrayList<Object>(eList.size()); // // Loop over all properties // for (EFeatureProperty<?, ? extends Property> it : eList) { eValues.add(it.write(eInternal().eTx)); } // // Finished // return eValues; }
@Override public List<Property> getProperties() { // Initialize // List<Property> eList = new ArrayList<Property>(); // // Loop over all EFeatureProperty instances, // collecting current Property instances. // for (EFeatureProperty<?, ? extends Property> it : eInternal.getProperties()) { eList.add(it.getData()); } // Finished // return Collections.unmodifiableList(eList); }
@Override public List<Object> read(Transaction transaction) throws IllegalStateException { // // Get properties // List<EFeaturePropertyDelegate<?, ? extends Property, ? extends EStructuralFeature>> eList = eInternal.getProperties(); // // Prepare to read values from properties // List<Object> eValues = new ArrayList<Object>(eList.size()); // // Loop over all properties // for (EFeatureProperty<?, ? extends Property> it : eList) { eValues.add(it.read(eInternal().eTx)); } // // Finished // return eValues; }
@Override public int getAttributeCount() { return eInternal.getProperties().size(); }