@Override public Diffs caseSimpleSchemaField(SimpleSchemaField field) { return field.differencesFrom((SimpleSchemaField)thatField); } @Override
@Override public Diffs differencesFrom(MapSchemaField that) { final Diffs diffs = new Diffs(super.differencesFrom(that)); final Diffs keyDiffs = this.keyField.differencesFrom(that.keyField); if (!keyDiffs.isEmpty()) diffs.add("changed key field", keyDiffs); final Diffs valueDiffs = this.valueField.differencesFrom(that.valueField); if (!valueDiffs.isEmpty()) diffs.add("changed value field", valueDiffs); return diffs; }
protected Diffs differencesFrom(CollectionSchemaField that) { final Diffs diffs = new Diffs(super.differencesFrom(that)); final Diffs elementDiffs = this.elementField.differencesFrom(that.elementField); if (!elementDiffs.isEmpty()) diffs.add("changed element field", elementDiffs); return diffs; }
@Override public Diffs differencesFrom(SimpleSchemaField other) { final Diffs diffs = new Diffs(super.differencesFrom(other)); if (!(other instanceof ReferenceSchemaField)) { diffs.add("change type from " + other.getClass().getSimpleName() + " to " + this.getClass().getSimpleName()); return diffs; } final ReferenceSchemaField that = (ReferenceSchemaField)other; if (!(this.onDelete != null ? this.onDelete.equals(that.onDelete) : that.onDelete == null)) diffs.add("changed on-delete action from " + that.onDelete + " to " + this.onDelete); if (this.cascadeDelete != that.cascadeDelete) diffs.add("changed cascade delete from " + that.cascadeDelete + " to " + this.cascadeDelete); if (this.allowDeleted != that.allowDeleted) diffs.add("changed allowing assignement of deleted objects from " + that.allowDeleted + " to " + this.allowDeleted); if (this.allowDeletedSnapshot != that.allowDeletedSnapshot) { diffs.add("changed allowing assignement of deleted objects in snapshot transactions from " + that.allowDeletedSnapshot + " to " + this.allowDeletedSnapshot); } if (!(this.objectTypes != null ? this.objectTypes.equals(that.objectTypes) : that.objectTypes == null)) diffs.add("changed allowed object type storage IDs from " + that.objectTypes + " to " + this.objectTypes); return diffs; }
@Override public Diffs differencesFrom(SimpleSchemaField other) { final Diffs diffs = new Diffs(super.differencesFrom(other)); if (!(other instanceof EnumSchemaField)) { diffs.add("change type from " + other.getClass().getSimpleName() + " to " + this.getClass().getSimpleName());