uima-ducc-pullservice/src/main/java/org/apache/uima/ducc/ps/service/dgen/DeployableGenerator.java [178:249]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        element.setAttribute("brokerURL", expected);
        createDescriptor = true;
      }
      // May specify the registry via an unsupported attribute
      registryURL = element.getAttribute("registryURL"); // Defaults to an empty string
      element.removeAttribute("registryURL");
    } else {
      throw new Exception("Invalid DD-" + configuration.getReferenceByName()
              + ". Missing required element <inputQueue ...");
    }

    // Return the original descriptor or the converted one if necessary
    return createDescriptor ? writeDDFile(xml2String(doc), jobId, createUniqueFilename) : location;
  }

  /*
   * Deduce the scaleout for a deployment descriptor. If a top-level non-AS deployment check for a
   * scaleout setting. Otherwise use the caspool size, with a default of 1
   */
  public int getScaleout() {
    if (doc == null) { // Not a DD ?
      return 1;
    }

    String soValue = "";
    NodeList nodes = doc.getElementsByTagName("analysisEngine");
    if (nodes.getLength() > 0) {
      Element aeElement = (Element) nodes.item(0);
      String async = aeElement.getAttribute("async");
      // If async is omitted the default is false if there are no delegates
      if (async.isEmpty()) {
        if (aeElement.getElementsByTagName("delegates").getLength() == 0) {
          async = "false";
        }
      }
      // If async is false a scaleout setting can override the caspool size
      if (async.equals("false")) {
        nodes = aeElement.getElementsByTagName("scaleout");
        if (nodes.getLength() > 0) {
          Element soElement = (Element) nodes.item(0);
          soValue = soElement.getAttribute("numberOfInstances");
        }
      }
    }

    if (soValue.isEmpty()) {
      nodes = doc.getElementsByTagName("casPool");
      if (nodes.getLength() > 0) {
        Element cpElement = (Element) nodes.item(0);
        soValue = cpElement.getAttribute("numberOfCASes");
      }
    }

    return soValue.isEmpty() ? 1 : Integer.parseInt(soValue);
  }

  public String getRegistryUrl() {
    return registryURL;
  }

  private void secureTransformerFactory(TransformerFactory transformerFactory) {
    try {
      transformerFactory.setAttribute(ACCESS_EXTERNAL_DTD, "");
    } catch (IllegalArgumentException e) {
      UIMAFramework.getLogger().log(Level.WARNING,
              "TransformerFactory didn't recognize setting attribute " + ACCESS_EXTERNAL_DTD);
    }

    try {
      transformerFactory.setAttribute(ACCESS_EXTERNAL_STYLESHEET, "");
    } catch (IllegalArgumentException e) {
      UIMAFramework.getLogger().log(Level.WARNING,
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



uima-ducc-user/src/main/java/org/apache/uima/ducc/user/dgen/DeployableGenerator.java [174:245]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        element.setAttribute("brokerURL", expected);
        createDescriptor = true;
      }
      // May specify the registry via an unsupported attribute
      registryURL = element.getAttribute("registryURL");  // Defaults to an empty string
      element.removeAttribute("registryURL");
    } else {
      throw new Exception("Invalid DD-" + configuration.getReferenceByName()
              + ". Missing required element <inputQueue ...");
    }
    
    //	Return the original descriptor or the converted one if necessary
		return createDescriptor ? writeDDFile(xml2String(doc), jobId, createUniqueFilename) : location;
	}

  /* 
   *  Deduce the scaleout for a deployment descriptor.
   *  If a top-level non-AS deployment check for a scaleout setting.
   *  Otherwise use the caspool size, with a default of 1
   */
	public int getScaleout() {
	  if (doc == null) {  // Not a DD ?
	    return 1;
	  }

    String soValue = "";
    NodeList nodes = doc.getElementsByTagName("analysisEngine");
    if (nodes.getLength() > 0) {
      Element aeElement = (Element) nodes.item(0);
      String async = aeElement.getAttribute("async");
      // If async is omitted the default is false if there are no delegates
      if (async.isEmpty()) {
        if (aeElement.getElementsByTagName("delegates").getLength() == 0) {
          async = "false";
        } 
      }
      // If async is false a scaleout setting can override the caspool size
      if (async.equals("false")) {
        nodes = aeElement.getElementsByTagName("scaleout");
        if (nodes.getLength() > 0) {
          Element soElement = (Element) nodes.item(0);
          soValue = soElement.getAttribute("numberOfInstances");
        }
      }
    }
    
    if (soValue.isEmpty()) {
      nodes = doc.getElementsByTagName("casPool");
      if (nodes.getLength() > 0) {
        Element cpElement = (Element) nodes.item(0);
        soValue = cpElement.getAttribute("numberOfCASes");
      }
    }
    
    return soValue.isEmpty() ? 1 : Integer.parseInt(soValue);
	}
	
	public String getRegistryUrl() {
	  return registryURL;
	}
	private void secureTransformerFactory(TransformerFactory transformerFactory) {
	    try {
	        transformerFactory.setAttribute(ACCESS_EXTERNAL_DTD, "");
	      } catch (IllegalArgumentException e) {
	        UIMAFramework.getLogger().log(Level.WARNING, 
	            "TransformerFactory didn't recognize setting attribute " + ACCESS_EXTERNAL_DTD);
	      }
	      
	      try {
	        transformerFactory.setAttribute(ACCESS_EXTERNAL_STYLESHEET, "");
	      } catch (IllegalArgumentException e) {
	        UIMAFramework.getLogger().log(Level.WARNING, 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



