private void buildGenericMemento(MementoObject mo, GenericMementoBuilder builder) {
// Add children
for (MementoObject mementoChild : mo.getChildren()) {
GenericMementoBuilder childBuilder = builder.newChild();
this.buildGenericMemento(mementoChild, childBuilder);
childBuilder.childDone();
}
// Add attributes
for (AttributeObject attr : mo.getAttributes()) {
builder.add(attr);