- public static MutableCompositeModification fromSerializable(Object serializable, SchemaContext schemaContext){
- PersistentMessages.CompositeModification o = (PersistentMessages.CompositeModification) serializable;
- MutableCompositeModification compositeModification = new MutableCompositeModification();
-
- for(PersistentMessages.Modification m : o.getModificationList()){
- if(m.getType().equals(DeleteModification.class.toString())){
- compositeModification.addModification(DeleteModification.fromSerializable(m));
- } else if(m.getType().equals(WriteModification.class.toString())){
- compositeModification.addModification(WriteModification.fromSerializable(m, schemaContext));
- } else if(m.getType().equals(MergeModification.class.toString())){
- compositeModification.addModification(MergeModification.fromSerializable(m, schemaContext));
+ @Override
+ public void writeExternal(final ObjectOutput out) throws IOException {
+ super.writeExternal(out);
+
+ final int size = modifications.size();
+ out.writeInt(size);
+ if (size > 0) {
+ try (NormalizedNodeDataOutput stream = NormalizedNodeInputOutput.newDataOutput(out, getStreamVersion())) {
+ for (Modification mod : modifications) {
+ out.writeByte(mod.getType());
+ mod.writeTo(stream);
+ }