/** * @{inheritedDoc} */ @Override public UIAccessRule isAccessible(IEmaginController controller, VLViewComponentXML compConfig) { IRootContext context = ((RootStructureController) controller.getRootStructure()).getRootContext(); if ((context == null) || (context.getCurrentSubject() == null)) { return UIAccessRule.SHOW; } return UIAccessRule.HIDDEN; } }
/** * @{inheritedDoc} */ @Override public List<IEnumeratedValueModel> loadValues(IEmaginController controller, VLViewComponentXML configuration) { String enumerationKey = configuration.getPropertyValue("enumerationKey"); JsonObject query = new JsonObject(); query.addProperty("enumerationKey", enumerationKey); query.addProperty("containerPath", ((RootStructureController) controller.getRootStructure()).getRootContext().getContainerPath()); List<IEnumeratedValueModel> result = new ArrayList<>(1); listvaluesOperation.doOperation(query, e -> { MultipleResult multipleResult = (MultipleResult) e; result.addAll(EnumeratedValueAdapter.toEnumeratedValues(multipleResult)); }); return result; }
/** * @{inheritedDoc} */ @Override public List<IEnumeratedValueModel> loadValues(IEmaginController controller, VLViewComponentXML configuration) { JsonObject query = new JsonObject(); // need to know from which context we want to link roleB query.addProperty("oid", ((RootStructureController) controller.getRootStructure()).getModelBusinessTypeFullId()); // the type of link we want to create String linktype = configuration.getPropertyValue("linkTypeFullPath"); query.addProperty("linkTypePath", linktype); // from roleA which is the current container of the root context!!! not // the model query.addProperty("roleAPath", ((RootStructureController) controller.getRootStructure()).getRootContext().getContainerPath()); getLinkableRoleBsWithAgregationOperation.doOperation(query, this::onLinkableRoleBsLoaded, null); return result; }
/** * @{inheritedDoc} */ @Override public UIAccessRule isAccessible(IEmaginController controller, VLViewComponentXML compConfig) { final IRootContext context = ((RootStructureController) controller.getRootStructure()).getRootContext(); if (context == null) { return UIAccessRule.HIDDEN; } if (context.getMode() == RootContextMode.Anonymous) { return UIAccessRule.HIDDEN; } if ((context != null) && (context.getCurrentSubject() != null)) { return UIAccessRule.SHOW; } return UIAccessRule.HIDDEN; } }
@Override public String getModelContainerPath() { final IOperationResult operationResult = (IOperationResult) getModel(); if (operationResult != null) { final OperationData data = (OperationData) operationResult.rootData(); String path = (String) data.getContainer().get("path"); if (StringUtils.isEmpty(path)) { path = getRootStructure().getRootContext().getContainerPath(); } return path; } return null; }
/** * @{inheritedDoc} */ @Override public IOperationResult loadModel(IEmaginController controller, String compId) { this.controller = (AbstractViewController) controller; final StandardViewController standardViewController = (StandardViewController) controller; final String modelFullId = standardViewController.getStructureContent().__getForModelId(); final String containerOid = ((RootStructureController) controller.getRootStructure()).getRootContext().getContainerFullId(); final JsonObject query = new JsonObject(); query.addProperty("oid", modelFullId); query.addProperty("containerFullId", containerOid); operation.doOperation(query, this::onModelLoadSuccess, this::onModelLoadError); // update the model of structure content to more fresh one final SingleResult sr = (SingleResult) result; standardViewController.getStructureContent().setFormModelData(sr.getData()); return result; } }
@Override public String getModelContainerFullId() { if (this instanceof WizardViewController && getStructureContent() != null) { final OperationData data = getStructureContent().getFormModelData(); if (data != null) { final String fullId = (String) data.getContainer().get("fullId"); return fullId; } } else { final IOperationResult operationResult = (IOperationResult) getModel(); if (operationResult != null) { final OperationData data = (OperationData) operationResult.rootData(); String fullId = (String) data.getContainer().get("fullId"); if (StringUtils.isEmpty(fullId)) { fullId = getRootStructure().getRootContext().getContainerFullId(); } return fullId; } } return null; }
controller.initViewContext(configXML, rootStructure.getRootContext()); controller.build(); controller.setInitialized(true);
controller.initViewContext(configXML, rootStructureController.getRootContext()); controller.build();
controller.initViewContext(configXML, parent.getRootStructure().getRootContext()); controller.build(); controller.setInitialized(true);
controller.initViewContext(configXML, root.getRootContext()); controller.build(); controller.setInitialized(true);
controller.initViewContext(configXML, root.getRootContext());
public static StructureContentController forId(RootStructureContentController rootStructureContentController, RootStructureController rootStructure, PushStructureContentEvent fromPush, VLViewComponentXML config) { Assert.notNull(rootStructure); Assert.notNull(config); String structureContentImpl = config.getPropertyValue("viewLayout"); boolean isWizard = config.getBooleanProperty("isWizardView", false); StructureContentController controller = (StructureContentController) Services.getBean(structureContentImpl); if (fromPush != null) { controller.setSourceEvent(fromPush); controller.setFormModelData((OperationData) fromPush.getModel()); controller.setForModelId(fromPush.getModelFullId()); } controller.setRootStructureContent(rootStructureContentController); controller.setRootStructure(rootStructure); // controller.setWizardView(isWizard); // must build config manually because it does not exist final VLViewConfigXML configXML = new VLViewConfigXML(); configXML.addEmptyRootContent(); VLViewComponentXML rootComp = configXML.getComponents().get(0); rootComp.setProperties(config.getProperties()); controller.initViewContext(configXML, rootStructure.getRootContext()); controller.setInitialized(true); controller.build(); return controller; }
controller.initViewContext(configXML, root.getRootStructure().getRootContext()); controller.build(); controller.setInitialized(true);
structureContent.initViewContext(new VLViewConfigXML(), rootStructure.getRootContext()); structureContent.setInitialized(true); structureContent.build();