/** * Handle workspace navigator selection. * * @param workspaceName * the workspace name * @param selectedConnector * the selected connector */ protected void handleWorkspaceNavigatorSelection(String workspaceName, ICompositeValueConnector selectedConnector) { if (selectedConnector != null && selectedConnector.getConnectorValue() instanceof Module) { Module selectedModule = selectedConnector.getConnectorValue(); displayModule(workspaceName, selectedModule); // We do not reset displayed module on navigator selection anymore. // This is because when a node is selected in the tree at different // level, // the module connector selection is a 2-step process : // 1. deselection // 2. selection // The problem is that you never have from and to modules // simultaneously, // thus preventing complex algorithms in onEnter/onLeave actions. // } else { // displayModule(workspaceName, null); } }
/** * Handle workspace navigator selection. Resets selection if selected module is null in order to re-arm client list. * * @param workspaceName * the workspace name * @param selectedConnector * the selected connector */ @Override protected void handleWorkspaceNavigatorSelection(String workspaceName, ICompositeValueConnector selectedConnector) { if (selectedConnector != null && selectedConnector.getConnectorValue() instanceof Module) { Module selectedModule = selectedConnector.getConnectorValue(); displayModule(workspaceName, selectedModule); } else { displayModule(workspaceName, null); } }
private void selectedModuleChanged(String workspaceName, ICompositeValueConnector selectedConnector) { selectedModuleConnectors.put(workspaceName, selectedConnector); if (selectedConnector != null && selectedConnector.getConnectorValue() instanceof Module) { Module selectedModule = (Module) selectedConnector.getConnectorValue(); if (!selectedModule.isStarted() && selectedModule.getStartupAction() != null) { execute(selectedModule.getStartupAction(), createEmptyContext()); selectedModule.setStarted(true); } } }
/** * Gets the parent model this action was triggered on. * * @param <T> * type inference return. * @param context * the action context. * @return the parent model. */ protected <T> T getParentModel(Map<String, Object> context) { IValueConnector modelConnector = getModelConnector(context); if (modelConnector != null) { if (modelConnector.getParentConnector() != null) { return modelConnector.getParentConnector().getConnectorValue(); } } return null; }
/** * Fills the context with the filter reference descriptor. * <p> * {@inheritDoc} */ @Override public boolean execute(IActionHandler actionHandler, Map<String, Object> context) { IModelValueConnector filterModelConnector = (IModelValueConnector) getModuleConnector( context).getChildConnector("filter"); context.put(ActionContextConstants.QUERY_MODEL_CONNECTOR, filterModelConnector); context.put(ActionContextConstants.COMPONENT_REF_DESCRIPTOR, filterModelConnector.getModelDescriptor()); BeanCollectionModule beanCollectionModule = (BeanCollectionModule) getModuleConnector( context).getConnectorValue(); beanCollectionModule.setModuleObjects(null); return super.execute(actionHandler, context); }
targetList.add(targetIndices[i], elementsToMove.get(i)); ((IEntity) collectionConnector.getParentConnector().getConnectorValue()) .straightSetProperty(collectionConnector.getId(), null); originalList.clear(); originalList.addAll(targetList); ((IEntity) collectionConnector.getParentConnector().getConnectorValue()) .straightSetProperty(collectionConnector.getId(), originalList); context.put(ActionContextConstants.SELECTED_INDICES, ConnectorHelper
/** * Adds a new object in the projected collection. * <p> * {@inheritDoc} */ @Override public boolean execute(IActionHandler actionHandler, Map<String, Object> context) { ICompositeValueConnector moduleConnector = getModuleConnector(context); BeanCollectionModule module = (BeanCollectionModule) moduleConnector .getConnectorValue(); Collection<Object> projectedCollection; if (module.getModuleObjects() == null) { projectedCollection = new ArrayList<Object>(); } else { projectedCollection = new ArrayList<Object>(module.getModuleObjects()); } Object newModuleObject = createNewModuleObject(actionHandler, context); projectedCollection.add(newModuleObject); module.setModuleObjects(projectedCollection); ICollectionConnector moduleObjectsConnector = getSourceModelConnector(context); if (moduleObjectsConnector == null) { moduleObjectsConnector = getModelConnector(context); } moduleObjectsConnector.setConnectorValue(projectedCollection); context.put(ActionContextConstants.SELECTED_INDICES, ConnectorHelper .getIndicesOf(moduleObjectsConnector, Collections .singleton(newModuleObject))); return super.execute(actionHandler, context); }
.getConnectorValue(); Class<?> targetContract; if (master instanceof IComponent) {
Module parentModule = (Module) moduleConnector.getConnectorValue(); List<Module> children; if (parentModule.getSubModules() == null) {
/** * Gets the current module and restarts it. {@inheritDoc} */ @Override public boolean execute(IActionHandler actionHandler, Map<String, Object> context) { Module module = (Module) getModuleConnector(context).getConnectorValue(); if (module instanceof BeanCollectionModule && module.getSubModules() != null) { List<Module> beanModulesToRemove = new ArrayList<Module>(); for (Module beanModule : module.getSubModules()) { if (beanModule instanceof BeanModule) { ((BeanModule) beanModule).setModuleObject(null); beanModulesToRemove.add(beanModule); } } module.removeSubModules(beanModulesToRemove); } if (module.getStartupAction() != null) { return actionHandler.execute(module.getStartupAction(), context); } return true; } }
/** * {@inheritDoc} */ @Override public boolean execute(IActionHandler actionHandler, Map<String, Object> context) { if (queryAction != null) { FilterableBeanCollectionModule module = (FilterableBeanCollectionModule) getModuleConnector( context).getConnectorValue(); IValueConnector filterConnector = getModuleConnector(context) .getChildConnector("filter"); context .put(ActionContextConstants.QUERY_MODEL_CONNECTOR, filterConnector); IQueryComponent filter = (IQueryComponent) module.getFilter(); if (actionHandler.execute(queryAction, context)) { module.setModuleObjects(filter.getQueriedComponents()); filter.setQueriedComponents(null); } } return super.execute(actionHandler, context); }
int[] selectedIndices = getSelectedIndices(context); if (selectedIndices != null) { Object master = collectionConnector.getParentConnector().getConnectorValue(); Class<?> targetContract; if (master instanceof IComponent) {
IComponentDescriptor<?> addedComponentDescriptor = getAddedElementDescriptor(context); Class<?> newComponentContract = addedComponentDescriptor.getComponentContract(); Object master = collectionConnector.getParentConnector().getConnectorValue(); ICollectionAccessor collectionAccessor = getAccessorFactory(context).createCollectionPropertyAccessor( collectionConnector.getId(), master.getClass()
.getComponentContract(); Object master = collectionConnector.getParentConnector() .getConnectorValue(); Class<?> targetContract; if (master instanceof IComponent) {
.getComponentContract(); Object master = collectionConnector.getParentConnector() .getConnectorValue(); ICollectionAccessor collectionAccessor = getAccessorFactory(context) .createCollectionPropertyAccessor(
return; if (rootConnector.getConnectorValue() == null) { return;
return; if (rootConnector.getConnectorValue() == null) { return;
.getComponentContract(); Object master = collectionConnector.getParentConnector() .getConnectorValue(); ICollectionAccessor collectionAccessor = getAccessorFactory(context) .createCollectionPropertyAccessor(