use of org.apache.cayenne.modeler.action.RemoveRelationshipAction in project cayenne by apache.
the class CreateRelationshipUndoableEdit method undo.
@Override
public void undo() throws CannotUndoException {
RemoveRelationshipAction action = actionManager.getAction(RemoveRelationshipAction.class);
if (objEnt != null) {
action.removeObjRelationships(objEnt, objectRel);
controller.fireObjEntityDisplayEvent(new EntityDisplayEvent(this, objEnt, objEnt.getDataMap(), (DataChannelDescriptor) controller.getProject().getRootNode()));
}
if (dbEnt != null) {
action.removeDbRelationships(dbEnt, dbRel);
controller.fireDbEntityDisplayEvent(new EntityDisplayEvent(this, dbEnt, dbEnt.getDataMap(), (DataChannelDescriptor) controller.getProject().getRootNode()));
}
}
use of org.apache.cayenne.modeler.action.RemoveRelationshipAction in project cayenne by apache.
the class PasteUndoableEdit method undo.
@Override
public void undo() throws CannotUndoException {
RemoveAttributeAction rAttributeAction = actionManager.getAction(RemoveAttributeAction.class);
RemoveAction rAction = actionManager.getAction(RemoveAction.class);
RemoveRelationshipAction rRelationShipAction = actionManager.getAction(RemoveRelationshipAction.class);
RemoveCallbackMethodAction rCallbackMethodAction = actionManager.getAction(RemoveCallbackMethodAction.class);
RemoveProcedureParameterAction rProcedureParamAction = actionManager.getAction(RemoveProcedureParameterAction.class);
if (content instanceof DataMap) {
if (where instanceof DataChannelDescriptor) {
rAction.removeDataMap((DataMap) content);
} else if (where instanceof DataNodeDescriptor) {
rAction.removeDataMapFromDataNode((DataNodeDescriptor) where, (DataMap) content);
}
} else if (where instanceof DataMap) {
if (content instanceof DbEntity) {
rAction.removeDbEntity(map, (DbEntity) content);
} else if (content instanceof ObjEntity) {
rAction.removeObjEntity(map, (ObjEntity) content);
} else if (content instanceof Embeddable) {
rAction.removeEmbeddable(map, (Embeddable) content);
} else if (content instanceof QueryDescriptor) {
rAction.removeQuery(map, (QueryDescriptor) content);
} else if (content instanceof Procedure) {
rAction.removeProcedure(map, (Procedure) content);
}
} else if (where instanceof DbEntity) {
if (content instanceof DbEntity) {
rAction.removeDbEntity(map, (DbEntity) content);
} else if (content instanceof DbAttribute) {
rAttributeAction.removeDbAttributes(map, (DbEntity) where, new DbAttribute[] { (DbAttribute) content });
} else if (content instanceof DbRelationship) {
rRelationShipAction.removeDbRelationships((DbEntity) where, new DbRelationship[] { (DbRelationship) content });
}
} else if (where instanceof ObjEntity) {
if (content instanceof ObjEntity) {
rAction.removeObjEntity(map, (ObjEntity) content);
} else if (content instanceof ObjAttribute) {
rAttributeAction.removeObjAttributes((ObjEntity) where, new ObjAttribute[] { (ObjAttribute) content });
} else if (content instanceof ObjRelationship) {
rRelationShipAction.removeObjRelationships((ObjEntity) where, new ObjRelationship[] { (ObjRelationship) content });
} else if (content instanceof ObjCallbackMethod) {
ObjCallbackMethod[] methods = new ObjCallbackMethod[] { (ObjCallbackMethod) content };
for (ObjCallbackMethod callbackMethod : methods) {
rCallbackMethodAction.removeCallbackMethod(methods[0].getCallbackType(), callbackMethod.getName());
}
}
} else if (where instanceof Procedure) {
final Procedure procedure = (Procedure) where;
if (content instanceof ProcedureParameter) {
rProcedureParamAction.removeProcedureParameters(procedure, new ProcedureParameter[] { (ProcedureParameter) content });
}
} else if (where instanceof Embeddable) {
if (content instanceof Embeddable) {
rAction.removeEmbeddable(map, (Embeddable) content);
} else if (content instanceof EmbeddableAttribute) {
rAttributeAction.removeEmbeddableAttributes((Embeddable) where, new EmbeddableAttribute[] { (EmbeddableAttribute) content });
}
}
}
use of org.apache.cayenne.modeler.action.RemoveRelationshipAction in project cayenne by apache.
the class RemoveRelationshipUndoableEdit method redo.
@Override
public void redo() throws CannotRedoException {
RemoveRelationshipAction action = actionManager.getAction(RemoveRelationshipAction.class);
if (objEntity != null) {
action.removeObjRelationships(objEntity, rels);
focusObjEntity();
} else {
action.removeDbRelationships(dbEntity, dbRels);
focusDBEntity();
}
}
Aggregations