in uimaj-core/src/main/java/org/apache/uima/pear/tools/InstallationDescriptorHandler.java [196:386]
public static void printInstallationDescriptor(InstallationDescriptor insdObject,
PrintWriter oWriter) throws IOException {
String[] tagOrder = null;
// ROOT - 0th level
XMLUtil.printXMLTag(ROOT_TAG, oWriter, false, 0);
oWriter.println();
// OS specs - 1st level
XMLUtil.printXMLTag(OS_TAG, oWriter, false, 1);
oWriter.println();
// 2nd level elements (multi-value properties) - NAME first
tagOrder = new String[1];
tagOrder[0] = NAME_TAG;
if (insdObject.getOSSpecs().size() > 0)
XMLUtil.printAllXMLElements(insdObject.getOSSpecs(),
InstallationDescriptor.PROPERTY_DELIMITER, tagOrder, oWriter, 2);
// OS specs end - 1st level
XMLUtil.printXMLTag(OS_TAG, oWriter, true, 1);
oWriter.println();
// TOOLKITS specs - 1st level
XMLUtil.printXMLTag(TOOLKITS_TAG, oWriter, false, 1);
oWriter.println();
// 2nd level elements (multi-value properties) - no order
if (insdObject.getToolkitsSpecs().size() > 0)
XMLUtil.printAllXMLElements(insdObject.getToolkitsSpecs(),
InstallationDescriptor.PROPERTY_DELIMITER, null, oWriter, 2);
// TOOLKITS specs end - 1st level
XMLUtil.printXMLTag(TOOLKITS_TAG, oWriter, true, 1);
oWriter.println();
// UIMA_FRAMEWORK specs - 1st level
XMLUtil.printXMLTag(UIMA_FRAMEWORK_TAG, oWriter, false, 1);
oWriter.println();
// 2nd level elements (multi-value properties) - no order
if (insdObject.getFrameworkSpecs().size() > 0)
XMLUtil.printAllXMLElements(insdObject.getFrameworkSpecs(),
InstallationDescriptor.PROPERTY_DELIMITER, null, oWriter, 2);
// UIMA_FRAMEWORK specs end - 1st level
XMLUtil.printXMLTag(UIMA_FRAMEWORK_TAG, oWriter, true, 1);
oWriter.println();
// SUBMITTED_COMPONENT specs - 1st level
XMLUtil.printXMLTag(SUBMITTED_COMPONENT_TAG, oWriter, false, 1);
oWriter.println();
if (insdObject.getMainComponentId() != null) {
// 2nd level elements - ID, ...
XMLUtil.printXMLElement(ID_TAG, insdObject.getMainComponentId(), oWriter, 2);
oWriter.println();
// NAME
XMLUtil.printXMLElement(NAME_TAG, insdObject.getMainComponentName(), oWriter, 2);
oWriter.println();
// DESC
XMLUtil.printXMLElement(DESC_TAG, insdObject.getMainComponentDesc(), oWriter, 2);
oWriter.println();
// DEPLOYMENT
XMLUtil.printXMLElement(DEPLOYMENT_TAG, insdObject.getMainComponentDeployment(), oWriter, 2);
oWriter.println();
// SERVICE block
InstallationDescriptor.ServiceInfo service = insdObject.getMainComponentService();
if (service != null) {
// SERVICE_COMMAND
XMLUtil.printXMLElement(SERVICE_COMMAND_TAG, service.command, oWriter, 2);
oWriter.println();
// SERVICE_WORKING_DIR
XMLUtil.printXMLElement(SERVICE_WORKING_DIR_TAG, service.workingDirPath, oWriter, 2);
oWriter.println();
// SERVICE_COMMAND_ARGS
XMLUtil.printXMLTag(SERVICE_COMMAND_ARGS_TAG, oWriter, false, 2);
oWriter.println();
Iterator<ArgInfo> argList = service.getArgs().iterator();
while (argList.hasNext()) {
// ARGUMENT - 3rd level
XMLUtil.printXMLTag(ARGUMENT_TAG, oWriter, false, 3);
oWriter.println();
InstallationDescriptor.ArgInfo arg = argList.next();
// VALUE - 4th level elements
XMLUtil.printXMLElement(VALUE_TAG, arg.value, oWriter, 4);
oWriter.println();
// COMMENTS
XMLUtil.printXMLElement(COMMENTS_TAG, arg.comments, oWriter, 4);
oWriter.println();
// ARGUMENT end - 3rd level
XMLUtil.printXMLTag(ARGUMENT_TAG, oWriter, true, 3);
oWriter.println();
}
// SERVICE_COMMAND_ARGS end
XMLUtil.printXMLTag(SERVICE_COMMAND_ARGS_TAG, oWriter, true, 2);
oWriter.println();
}
// network component parameters block
Set<String> netParamNames = insdObject.getMainComponentNetworkParamNames();
if (netParamNames != null) {
// NETWORK_PARAMETERS
XMLUtil.printXMLTag(NETWORK_PARAMETERS_TAG, oWriter, false, 2);
oWriter.println();
Iterator<String> nameList = netParamNames.iterator();
while (nameList.hasNext()) {
String name = nameList.next();
Properties attributes = insdObject.getMainComponentNetworkParam(name);
XMLUtil.printXMLElement(name, attributes, null, oWriter, 3);
oWriter.println();
}
// NETWORK_PARAMETERS end
XMLUtil.printXMLTag(NETWORK_PARAMETERS_TAG, oWriter, true, 2);
oWriter.println();
}
if (insdObject.getMainComponentProps().size() > 0)
XMLUtil.printAllXMLElements(insdObject.getMainComponentProps(), oWriter, 2);
String collIterDesc = insdObject.getMainCollIteratorDesc();
String casInitDesc = insdObject.getMainCasInitializerDesc();
if (collIterDesc != null || casInitDesc != null) {
// COLLECTION_READER specs - 2nd level
XMLUtil.printXMLTag(COLLECTION_READER_TAG, oWriter, false, 2);
oWriter.println();
// 3rd level elements
if (collIterDesc != null) {
XMLUtil.printXMLElement(COLLECTION_ITERATOR_DESC_TAG, collIterDesc, oWriter, 3);
oWriter.println();
}
if (casInitDesc != null) {
XMLUtil.printXMLElement(CAS_INITIALIZER_DESC_TAG, casInitDesc, oWriter, 3);
oWriter.println();
}
// COLLECTION_READER specs end - 2nd level
XMLUtil.printXMLTag(COLLECTION_READER_TAG, oWriter, true, 2);
oWriter.println();
}
String casConsDesc = insdObject.getMainCasConsumerDesc();
if (casConsDesc != null) {
// CAS_CONSUMER specs - 2nd level
XMLUtil.printXMLTag(CAS_CONSUMER_TAG, oWriter, false, 2);
oWriter.println();
// 3rd level elements
XMLUtil.printXMLElement(DESC_TAG, casConsDesc, oWriter, 3);
oWriter.println();
// CAS_CONSUMER specs end - 2nd level
XMLUtil.printXMLTag(CAS_CONSUMER_TAG, oWriter, true, 2);
oWriter.println();
}
}
// SUBMITTED_COMPONENT specs end - 1st level
XMLUtil.printXMLTag(SUBMITTED_COMPONENT_TAG, oWriter, true, 1);
oWriter.println();
// INSTALLATION specs - 1st level
XMLUtil.printXMLTag(INSTALLATION_TAG, oWriter, false, 1);
oWriter.println();
// delegate components, if specified
Hashtable<String, ComponentInfo> dlgTable = insdObject.getDelegateComponents();
Iterator<String> dlgList = dlgTable.keySet().iterator();
while (dlgList.hasNext()) {
// DELEGATE_COMPONENT specs - 2nd level
XMLUtil.printXMLTag(DELEGATE_COMPONENT_TAG, oWriter, false, 2);
oWriter.println();
// 3rd level elements
String dlgId = dlgList.next();
InstallationDescriptor.ComponentInfo dlgInfo = dlgTable.get(dlgId);
XMLUtil.printXMLElement(ID_TAG, dlgId, oWriter, 3);
oWriter.println();
XMLUtil.printXMLElement(NAME_TAG, dlgInfo.name, oWriter, 3);
oWriter.println();
// DELEGATE_COMPONENT specs end - 2nd level
XMLUtil.printXMLTag(DELEGATE_COMPONENT_TAG, oWriter, true, 2);
oWriter.println();
}
// installation actions, if specified
Iterator<ActionInfo> actList = insdObject.getInstallationActions().iterator();
while (actList.hasNext()) {
ActionInfo actInfo = actList.next();
// PROCESS specs - 2nd level
XMLUtil.printXMLTag(PROCESS_TAG, oWriter, false, 2);
oWriter.println();
// 3rd level elements
XMLUtil.printXMLElement(ACTION_TAG, actInfo.getName(), oWriter, 3);
oWriter.println();
// PARAMETERS specs - 3rd level
XMLUtil.printXMLTag(PARAMETERS_TAG, oWriter, false, 3);
oWriter.println();
// 4th level elements - no order
if (actInfo.params != null && actInfo.params.size() > 0)
XMLUtil.printAllXMLElements(actInfo.params, oWriter, 4);
// PARAMETERS specs end - 3rd level
XMLUtil.printXMLTag(PARAMETERS_TAG, oWriter, true, 3);
oWriter.println();
// PROCESS specs end - 2nd level
XMLUtil.printXMLTag(PROCESS_TAG, oWriter, true, 2);
oWriter.println();
}
// INSTALLATION specs end - 1st level
XMLUtil.printXMLTag(INSTALLATION_TAG, oWriter, true, 1);
oWriter.println();
// ROOT end - 0th level
XMLUtil.printXMLTag(ROOT_TAG, oWriter, true, 0);
oWriter.println();
}