/** * @param manualActivityPath * @param pathDataMapping */ private void processManualActivityPath( ManualActivityPath manualActivityPath, Map<Path, DataMapping> pathDataMapping) { // Process Children for (Path path : manualActivityPath.getChildPaths()) { if (path instanceof IppSystemPath) { handleSystemPath((IppSystemPath) path); } else if (path instanceof DocumentPath) { handleDocumentPath((DocumentPath) path, pathDataMapping.get(path)); } else if (path.isEnumeration()) { handleEnumerationPath(path); } else if (path.isPrimitive()) { handlePrimitivePath(path); } else if (path.isList()) { handleListDataMapping(path); } else if (path.getChildPaths().size() > 0) { handleStructureDataMapping(path); } } // For Single Document Case IppDocumentInputController docController = getIfSingleDocument(); if (null != docController && null == docController.getValue()) { docController.setOpenDocument(true); docController.setEnableOpenDocument(false); } }
/** * @param path * @return */ private boolean handleListDataMapping(Path path) { ListInputController listInputController = new ListInputController(path); formGenerator.addListComponent(getRootContainer(), path); getFullPathInputControllerMap().put("/" + path.getId(), listInputController); getTopLevelInputControllerMap().put(path.getId(), listInputController); return true; }
/** * @param path * @return */ private boolean handleEnumerationPath(Path path) { PrimitiveInputController inputController = new PrimitiveInputController(path, new PrimitiveInputControllerDataTypeAdapter(path)); FormInput input = formGenerator.addEnumerationInput(getRootContainer(), inputController); getRootContainer().getInputs().add(input); getFullPathInputControllerMap().put("/" + path.getId(), inputController); getTopLevelInputControllerMap().put(path.getId(), inputController); return true; }
/** * @param path * @return */ private boolean handleStructureDataMapping(Path path) { getTopLevelInputControllerMap() .put( path.getId(), formGenerator.generateStructurePanel( getFullPathInputControllerMap(), getRootContainer(), path)); return true; }