Search in sources :

Example 51 with DataNodeDescriptor

use of org.apache.cayenne.configuration.DataNodeDescriptor in project cayenne by apache.

the class ProjectTreeView method dataMapRemoved.

public void dataMapRemoved(DataMapEvent e) {
    DataMap map = e.getDataMap();
    DataChannelDescriptor dataChannelDescriptor = (DataChannelDescriptor) Application.getInstance().getProject().getRootNode();
    removeNode(new Object[] { dataChannelDescriptor, map });
    mediator.getEntityResolver().removeDataMap(e.getDataMap());
    // Clean up map from the nodes
    for (DataNodeDescriptor dataNode : new ArrayList<>(dataChannelDescriptor.getNodeDescriptors())) {
        removeNode(new Object[] { dataChannelDescriptor, dataNode, map });
    }
}
Also used : DataChannelDescriptor(org.apache.cayenne.configuration.DataChannelDescriptor) ArrayList(java.util.ArrayList) DataNodeDescriptor(org.apache.cayenne.configuration.DataNodeDescriptor) DataMap(org.apache.cayenne.map.DataMap)

Example 52 with DataNodeDescriptor

use of org.apache.cayenne.configuration.DataNodeDescriptor in project cayenne by apache.

the class TreeDropTarget method drop.

public void drop(DropTargetDropEvent dtde) {
    if (targetPath != null) {
        try {
            dtde.acceptDrop(dtde.getDropAction());
            DefaultMutableTreeNode target = (DefaultMutableTreeNode) targetPath.getLastPathComponent();
            DefaultMutableTreeNode parent = (DefaultMutableTreeNode) parentPath.getLastPathComponent();
            if (target.getUserObject() instanceof DataNodeDescriptor && parent.getUserObject() instanceof DataMap) {
                DataNodeDescriptor currentDataNode = (DataNodeDescriptor) target.getUserObject();
                DataMap currentDataMap = (DataMap) parent.getUserObject();
                LinkDataMapAction action = eventController.getApplication().getActionManager().getAction(LinkDataMapAction.class);
                action.linkDataMap(currentDataMap, currentDataNode);
                targetTree.makeVisible(targetPath.pathByAddingChild(target));
                dtde.dropComplete(true);
            }
        } catch (Exception e) {
            e.printStackTrace();
            dtde.rejectDrop();
        }
    }
}
Also used : DefaultMutableTreeNode(javax.swing.tree.DefaultMutableTreeNode) DataNodeDescriptor(org.apache.cayenne.configuration.DataNodeDescriptor) LinkDataMapAction(org.apache.cayenne.modeler.action.LinkDataMapAction) UnsupportedFlavorException(java.awt.datatransfer.UnsupportedFlavorException) IOException(java.io.IOException) DataMap(org.apache.cayenne.map.DataMap)

Example 53 with DataNodeDescriptor

use of org.apache.cayenne.configuration.DataNodeDescriptor in project cayenne by apache.

the class CreateNodeAction method performAction.

@Override
public void performAction(ActionEvent e) {
    DataNodeDescriptor node = buildDataNode();
    createDataNode(node);
    application.getUndoManager().addEdit(new CreateNodeUndoableEdit(application, node));
}
Also used : DataNodeDescriptor(org.apache.cayenne.configuration.DataNodeDescriptor) CreateNodeUndoableEdit(org.apache.cayenne.modeler.undo.CreateNodeUndoableEdit)

Example 54 with DataNodeDescriptor

use of org.apache.cayenne.configuration.DataNodeDescriptor in project cayenne by apache.

the class ProjectUtil method setDataMapName.

public static void setDataMapName(DataChannelDescriptor domain, DataMap map, String newName) {
    String oldName = map.getName();
    // must fully relink renamed map
    List<DataNodeDescriptor> nodes = new ArrayList<DataNodeDescriptor>();
    for (DataNodeDescriptor node : domain.getNodeDescriptors()) if (node.getDataMapNames().contains(map.getName()))
        nodes.add(node);
    map.setName(newName);
    for (DataNodeDescriptor node : nodes) {
        node.getDataMapNames().remove(oldName);
        node.getDataMapNames().add(map.getName());
    }
}
Also used : ArrayList(java.util.ArrayList) DataNodeDescriptor(org.apache.cayenne.configuration.DataNodeDescriptor)

Example 55 with DataNodeDescriptor

use of org.apache.cayenne.configuration.DataNodeDescriptor in project cayenne by apache.

the class DataMapDisplayEventType method fireLastDisplayEvent.

@Override
public void fireLastDisplayEvent() {
    DataChannelDescriptor dataChannel = (DataChannelDescriptor) controller.getProject().getRootNode();
    if (!dataChannel.getName().equals(preferences.getDomain())) {
        return;
    }
    DataNodeDescriptor dataNode = dataChannel.getNodeDescriptor(preferences.getNode());
    DataMap dataMap = dataChannel.getDataMap(preferences.getDataMap());
    if (dataMap == null) {
        return;
    }
    DataMapDisplayEvent dataMapDisplayEvent = new DataMapDisplayEvent(this, dataMap, dataChannel, dataNode);
    controller.fireDataMapDisplayEvent(dataMapDisplayEvent);
}
Also used : DataChannelDescriptor(org.apache.cayenne.configuration.DataChannelDescriptor) DataNodeDescriptor(org.apache.cayenne.configuration.DataNodeDescriptor) DataMapDisplayEvent(org.apache.cayenne.modeler.event.DataMapDisplayEvent) DataMap(org.apache.cayenne.map.DataMap)

Aggregations

DataNodeDescriptor (org.apache.cayenne.configuration.DataNodeDescriptor)58 DataChannelDescriptor (org.apache.cayenne.configuration.DataChannelDescriptor)28 DataMap (org.apache.cayenne.map.DataMap)23 Test (org.junit.Test)22 DbEntity (org.apache.cayenne.map.DbEntity)11 ArrayList (java.util.ArrayList)8 Injector (org.apache.cayenne.di.Injector)8 Constants (org.apache.cayenne.configuration.Constants)7 RuntimeProperties (org.apache.cayenne.configuration.RuntimeProperties)7 DbAdapter (org.apache.cayenne.dba.DbAdapter)7 AdhocObjectFactory (org.apache.cayenne.di.AdhocObjectFactory)7 ClassLoaderManager (org.apache.cayenne.di.ClassLoaderManager)7 DIBootstrap (org.apache.cayenne.di.DIBootstrap)7 Key (org.apache.cayenne.di.Key)7 Module (org.apache.cayenne.di.Module)7 DefaultAdhocObjectFactory (org.apache.cayenne.di.spi.DefaultAdhocObjectFactory)7 DefaultClassLoaderManager (org.apache.cayenne.di.spi.DefaultClassLoaderManager)7 JdbcEventLogger (org.apache.cayenne.log.JdbcEventLogger)7 Slf4jJdbcEventLogger (org.apache.cayenne.log.Slf4jJdbcEventLogger)7 ObjEntity (org.apache.cayenne.map.ObjEntity)7