Class Emitter

java.lang.Object
org.apache.axis.wsdl.gen.Parser
org.apache.axis.wsdl.toJava.Emitter

public class Emitter extends Parser
This class produces java files for stubs, skeletons, and types from a WSDL document.
Author:
Russell Butek (butek@us.ibm.com), Tom Jordahl (tjordahl@macromedia.com), Rich Scheuerle (scheu@us.ibm.com), Steve Graham (sggraham@us.ibm.com)
  • Field Details

    • DEFAULT_NSTOPKG_FILE

      public static final String DEFAULT_NSTOPKG_FILE
      Field DEFAULT_NSTOPKG_FILE
      See Also:
    • namespaceMap

      protected HashMap namespaceMap
      Field namespaceMap
    • typeMappingVersion

      protected String typeMappingVersion
      Field typeMappingVersion
    • baseTypeMapping

      protected BaseTypeMapping baseTypeMapping
      Field baseTypeMapping
    • namespaces

      protected Namespaces namespaces
      Field namespaces
    • NStoPkgFilename

      protected String NStoPkgFilename
      Field NStoPkgFilename
    • nsIncludes

      protected List nsIncludes
      Field nsIncludes - defines a list of namespaces to specifically include in the generated source code. If non-empty, anything not in this list should be excluded. If empty, everything in this and not specifically excluded should be generated.
    • nsExcludes

      protected List nsExcludes
      Field nsIncludes - defines a list of namespaces to specifically exclude from generated source code. Any entry in this list that is in conflict with the includes list should be ignored and generated.
    • properties

      protected List properties
      Field properties - defines a set of general purpose properties that can be used by custom JavaGeneratorFactories.
  • Constructor Details

    • Emitter

      public Emitter()
      Default constructor.
  • Method Details

    • setServerSide

      public void setServerSide(boolean value)
      Turn on/off server skeleton creation
      Parameters:
      value -
    • isServerSide

      public boolean isServerSide()
      Indicate if we should be emitting server side code and deploy/undeploy
      Returns:
    • setSkeletonWanted

      public void setSkeletonWanted(boolean value)
      Turn on/off server skeleton deploy
      Parameters:
      value -
    • isSkeletonWanted

      public boolean isSkeletonWanted()
      Indicate if we should be deploying skeleton or implementation
      Returns:
    • setHelperWanted

      public void setHelperWanted(boolean value)
      Turn on/off Helper class generation
      Parameters:
      value -
    • isHelperWanted

      public boolean isHelperWanted()
      Indicate if we should be generating Helper classes
      Returns:
    • setTestCaseWanted

      public void setTestCaseWanted(boolean value)
      Turn on/off test case creation
      Parameters:
      value -
    • isTestCaseWanted

      public boolean isTestCaseWanted()
      Method isTestCaseWanted
      Returns:
    • isBuildFileWanted

      public boolean isBuildFileWanted()
      get the build file genaeration state
      Returns:
    • setBuildFileWanted

      public void setBuildFileWanted(boolean value)
      turn the build file genaration ON
      Parameters:
      value -
    • setAllWanted

      public void setAllWanted(boolean all)
      By default, code is generated only for referenced elements. Call bGenerateAll(true) and WSDL2Java will generate code for all elements in the scope regardless of whether they are referenced. Scope means: by default, all WSDL files; if generateImports(false), then only the immediate WSDL file.
      Parameters:
      all -
    • isAllWanted

      public boolean isAllWanted()
      Method isAllWanted
      Returns:
    • getNamespaces

      public Namespaces getNamespaces()
      Method getNamespaces
      Returns:
    • setOutputDir

      public void setOutputDir(String outputDir)
      Set the output directory to use in emitted source files
      Parameters:
      outputDir -
    • getOutputDir

      public String getOutputDir()
      Get the output directory to use for emitted source files
      Returns:
    • getPackageName

      public String getPackageName()
      Get global package name to use instead of mapping namespaces
      Returns:
    • setPackageName

      public void setPackageName(String packageName)
      Set a global package name to use instead of mapping namespaces
      Parameters:
      packageName -
    • setScope

      public void setScope(Scope scope)
      Set the scope for the deploy.xml file.
      Parameters:
      scope - One of 'null', Scope.APPLICATION, Scope.REQUEST, Scope.SESSION. Anything else is equivalent to 'null' null and no explicit scope tag will appear in deploy.xml.
    • getScope

      public Scope getScope()
      Get the scope for the deploy.xml file.
      Returns:
    • setNStoPkg

      public void setNStoPkg(String NStoPkgFilename)
      Set the NStoPkg mappings filename.
      Parameters:
      NStoPkgFilename -
    • setNamespaceMap

      public void setNamespaceMap(HashMap map)
      Set a map of namespace -> Java package names
      Parameters:
      map -
    • getNamespaceMap

      public HashMap getNamespaceMap()
      Get the map of namespace -> Java package names
      Returns:
    • setNamespaceIncludes

      public void setNamespaceIncludes(List nsIncludes)
      Sets the list of namespaces to specifically include in the generated code.
    • getNamespaceIncludes

      public List getNamespaceIncludes()
      Returns the list of namespaces specifically excluded from the generated code.
    • setNamespaceExcludes

      public void setNamespaceExcludes(List nsExcludes)
      Sets the list of namespaces to specifically exclude from the generated source.
    • getNamespaceExcludes

      public List getNamespaceExcludes()
      Returns the list of excludes to specifically exclude from the generated source.
    • setProperties

      public void setProperties(List properties)
      Sets the list of extension properties for custom JavaGeneratorFactories.
    • getProperties

      public List getProperties()
      Gets the list of extension properties for custom JavaGeneratorFactories.
    • getDefaultTypeMapping

      public TypeMapping getDefaultTypeMapping()
      Returns the default TypeMapping used by the service
      Returns:
      the default TypeMapping used by the service
    • setDefaultTypeMapping

      public void setDefaultTypeMapping(TypeMapping defaultTM)
      Sets the default TypeMapping used by the service
      Parameters:
      defaultTM - the default TypeMapping used by the service
    • setFactory

      public void setFactory(String factory)
      Sets the WriterFactory Class to use
      Parameters:
      factory - the name of the factory Class
    • getGeneratedFileInfo

      public GeneratedFileInfo getGeneratedFileInfo()
      Returns an object which contains of information on all generated files including the class name, filename and a type string.
      Returns:
      An org.apache.axis.wsdl.toJava.GeneratedFileInfo object
      See Also:
    • getGeneratedClassNames

      public List getGeneratedClassNames()
      This method returns a list of all generated class names.
      Returns:
    • getGeneratedFileNames

      public List getGeneratedFileNames()
      This method returns a list of all generated file names.
      Returns:
    • getPackage

      public String getPackage(String namespace)
      Get the Package name for the specified namespace
      Parameters:
      namespace -
      Returns:
    • getPackage

      public String getPackage(QName qName)
      Get the Package name for the specified QName
      Parameters:
      qName -
      Returns:
    • getJavaName

      public String getJavaName(QName qName)
      Convert the specified QName into a full Java Name.
      Parameters:
      qName -
      Returns:
    • getJavaNameHook

      protected String getJavaNameHook(QName qname)
    • getJavaVariableName

      public String getJavaVariableName(QName typeQName, QName xmlName, boolean isElement)
      Parameters:
      typeQName - QName for containing xml type
      xmlName - QName for element
      Returns:
    • getJavaVariableNameHook

      protected String getJavaVariableNameHook(QName typeQName, QName xmlName, boolean isElement)
    • run

      public void run(String wsdlURL) throws Exception
      Emit appropriate Java files for a WSDL at a given URL.

      This method will time out after the number of milliseconds specified by our timeoutms member.

      Overrides:
      run in class Parser
      Parameters:
      wsdlURL -
      Throws:
      Exception
    • run

      public void run(String context, Document doc) throws IOException, SAXException, javax.wsdl.WSDLException, ParserConfigurationException
      Call this method if your WSDL document has already been parsed as an XML DOM document.
      Overrides:
      run in class Parser
      Parameters:
      context - context This is directory context for the Document. If the Document were from file "/x/y/z.wsdl" then the context could be "/x/y" (even "/x/y/z.wsdl" would work). If context is null, then the context becomes the current directory.
      doc - doc This is the XML Document containing the WSDL.
      Throws:
      IOException
      SAXException
      javax.wsdl.WSDLException
      ParserConfigurationException
    • sanityCheck

      protected void sanityCheck(SymbolTable symbolTable)
      Method sanityCheck
      Overrides:
      sanityCheck in class Parser
      Parameters:
      symbolTable -
    • getTypeMappingVersion

      public String getTypeMappingVersion()
      Get the typemapping version
    • setTypeMappingVersion

      public void setTypeMappingVersion(String typeMappingVersion)
      Method setTypeMappingVersion
      Parameters:
      typeMappingVersion -
    • getWriterFactory

      public GeneratorFactory getWriterFactory()
      Deprecated.
      Call getFactory instead. This doesn't return a WriterFactory, it returns a GeneratorFactory.
      Get the GeneratorFactory.
      Returns:
    • emit

      public void emit(String uri) throws Exception
      Deprecated.
      Call run(uri) instead.
      Call this method if you have a uri for the WSDL document
      Parameters:
      uri - wsdlURI the location of the WSDL file.
      Throws:
      Exception
    • emit

      public void emit(String context, Document doc) throws IOException, SAXException, javax.wsdl.WSDLException, ParserConfigurationException
      Deprecated.
      Call run(context, doc) instead.
      Call this method if your WSDL document has already been parsed as an XML DOM document.
      Parameters:
      context - context This is directory context for the Document. If the Document were from file "/x/y/z.wsdl" then the context could be "/x/y" (even "/x/y/z.wsdl" would work). If context is null, then the context becomes the current directory.
      doc - doc This is the XML Document containing the WSDL.
      Throws:
      IOException
      SAXException
      javax.wsdl.WSDLException
      ParserConfigurationException
    • generateServerSide

      public void generateServerSide(boolean value)
      Deprecated.
      Use setServerSide(value)
      Turn on/off server-side binding generation
      Parameters:
      value -
    • getGenerateServerSide

      public boolean getGenerateServerSide()
      Deprecated.
      Use isServerSide()
      Indicate if we should be emitting server side code and deploy/undeploy
      Returns:
    • deploySkeleton

      public void deploySkeleton(boolean value)
      Deprecated.
      Use setSkeletonWanted(value)
      Turn on/off server skeleton deploy
      Parameters:
      value -
    • getDeploySkeleton

      public boolean getDeploySkeleton()
      Deprecated.
      Use isSkeletonWanted()
      Indicate if we should be deploying skeleton or implementation
      Returns:
    • setHelperGeneration

      public void setHelperGeneration(boolean value)
      Deprecated.
      Use setHelperWanted(value)
      Turn on/off Helper class generation
      Parameters:
      value -
    • getHelperGeneration

      public boolean getHelperGeneration()
      Deprecated.
      Use isHelperWanted()
      Indicate if we should be generating Helper classes
      Returns:
    • generateImports

      public void generateImports(boolean generateImports)
      Deprecated.
      Use setImports(generateImports)
      Turn on/off generation of elements from imported files.
      Parameters:
      generateImports -
    • debug

      public void debug(boolean value)
      Deprecated.
      Use setDebug(value)
      Turn on/off debug messages.
      Parameters:
      value -
    • getDebug

      public boolean getDebug()
      Deprecated.
      Use isDebug()
      Return the status of the debug switch.
      Returns:
    • verbose

      public void verbose(boolean value)
      Deprecated.
      Use setVerbose(value)
      Turn on/off verbose messages
      Parameters:
      value -
    • getVerbose

      public boolean getVerbose()
      Deprecated.
      Use isVerbose()
      Return the status of the verbose switch
      Returns:
    • generateTestCase

      public void generateTestCase(boolean value)
      Deprecated.
      Use setTestCaseWanted()
      Turn on/off test case creation
      Parameters:
      value -
    • generateAll

      public void generateAll(boolean all)
      Deprecated.
      Use setAllWanted(all)
      Parameters:
      all -
    • isTypeCollisionProtection

      public boolean isTypeCollisionProtection()
      Get the type collision protection setting
      Returns:
    • setTypeCollisionProtection

      public void setTypeCollisionProtection(boolean value)
      Enable/disable type collision protection
      Parameters:
      value -
    • getImplementationClassName

      public String getImplementationClassName()
      Get an implementation classname to use instead of the default.
      Returns:
    • setImplementationClassName

      public void setImplementationClassName(String implementationClassName)
      Set an implementation classname to use instead of the default.
      Parameters:
      implementationClassName -
    • isAllowInvalidURL

      public boolean isAllowInvalidURL()
      Returns:
      Returns the allowInvalidURL.
    • setAllowInvalidURL

      public void setAllowInvalidURL(boolean allowInvalidURL)
      Parameters:
      allowInvalidURL - The allowInvalidURL to set.
    • setQName2ClassMap

      public void setQName2ClassMap(HashMap map)
      Set the type qname to java class map
      Parameters:
      map - a type qname to javaclass map (from Java2Wsdl emitter)
    • getQName2ClassMap

      public HashMap getQName2ClassMap()
      Get the type qname to java class map
      Returns:
      the type qname to java class map
    • getServiceDesc

      public ServiceDesc getServiceDesc()
      Retruns the SericeDesc object
      Returns:
    • setServiceDesc

      public void setServiceDesc(ServiceDesc serviceDesc)
      Sets the ServicdDesc object
      Parameters:
      serviceDesc - ServiceDesc to set
    • isDeploy

      public boolean isDeploy()
      Returns the deploy mode flag
      Returns:
    • setDeploy

      public void setDeploy(boolean isDeploy)
      Sets the deploy mode flag
      Parameters:
      isDeploy - deploy mode flag
    • doesExist

      protected boolean doesExist(String className)
      Check if the className exists.
      Parameters:
      className - className to check
      Returns:
      true if exists, false if not
    • setWrapArrays

      public void setWrapArrays(boolean wrapArrays)