Class ServiceWSDLBuilder


  • public class ServiceWSDLBuilder
    extends Object
    Consume a set of service definitions and produce a WSDL model. The ServiceInfo objects contain the bindings, operations, and ports, plus XMLSchema schemas. Each wsdl:definition has to have a single target namespace. The first service in the list defines the TNS of the overall WSDL. If a subsequent service has a divergent TNS, then the code creates a new definition element (i.e., Definition object), and imports it into the top-level object.
    • Constructor Summary

      Constructors 
      Constructor Description
      ServiceWSDLBuilder​(org.apache.cxf.Bus b, List<org.apache.cxf.service.model.ServiceInfo> services)
      Sets up the builder on a bus with a list of services.
      ServiceWSDLBuilder​(org.apache.cxf.Bus b, org.apache.cxf.service.model.ServiceInfo... services)
      For callers who prefer varargs, an inline list of ServiceInfo objects instead of a List.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void addDocumentation​(javax.wsdl.WSDLElement wsdlel, String text)  
      protected void addExtensibilityElements​(javax.wsdl.Definition def, javax.wsdl.extensions.ElementExtensible elementExtensible, List<javax.wsdl.extensions.ExtensibilityElement> extensibilityElements)  
      protected void addNamespace​(String prefix, String namespaceURI, javax.wsdl.Definition def)  
      protected void addNamespace​(String namespaceURI, javax.wsdl.Definition def)  
      javax.wsdl.Definition build()
      Create the WSDL Definition object and return it.
      javax.wsdl.Definition build​(Map<String,​org.apache.cxf.service.model.SchemaInfo> imports)
      Create the WSDL Definition object and return it.
      protected void buildBinding​(javax.wsdl.Definition definition, Collection<org.apache.cxf.service.model.BindingInfo> bindingInfos, Collection<javax.wsdl.PortType> portTypes)  
      protected void buildBindingFault​(javax.wsdl.Definition def, javax.wsdl.BindingOperation bindingOperation, Collection<org.apache.cxf.service.model.BindingFaultInfo> bindingFaultInfos)  
      protected void buildBindingInput​(javax.wsdl.Definition def, javax.wsdl.BindingOperation bindingOperation, org.apache.cxf.service.model.BindingMessageInfo bindingMessageInfo)  
      protected void buildBindingOperation​(javax.wsdl.Definition def, javax.wsdl.Binding binding, Collection<org.apache.cxf.service.model.BindingOperationInfo> bindingOperationInfos)  
      protected void buildBindingOutput​(javax.wsdl.Definition def, javax.wsdl.BindingOperation bindingOperation, org.apache.cxf.service.model.BindingMessageInfo bindingMessageInfo)  
      protected void buildMessage​(javax.wsdl.Message message, org.apache.cxf.service.model.AbstractMessageContainer messageContainer, javax.wsdl.Definition def)  
      protected javax.wsdl.PortType buildPortType​(org.apache.cxf.service.model.InterfaceInfo intf, javax.wsdl.Definition def)  
      protected void buildPortTypeOperation​(javax.wsdl.PortType portType, Collection<org.apache.cxf.service.model.OperationInfo> operationInfos, javax.wsdl.Definition def)  
      protected void buildService​(org.apache.cxf.service.model.ServiceInfo serviceInfo, javax.wsdl.Definition definition)  
      protected void buildTypes​(Collection<org.apache.cxf.service.model.SchemaInfo> schemas, Map<String,​org.apache.cxf.service.model.SchemaInfo> imports, javax.wsdl.Definition def)  
      protected void buildTypesWithSchemaImports​(Collection<org.apache.cxf.service.model.SchemaInfo> schemas, Map<String,​org.apache.cxf.service.model.SchemaInfo> imports, javax.wsdl.Definition def)  
      List<javax.wsdl.extensions.ExtensibilityElement> getWSDL11Extensors​(org.apache.cxf.service.model.AbstractPropertiesHolder holder)
      Return a list of ExtensibilityElements for a particular component, such as a BindingFaultInfo.
      void setBaseFileName​(String s)
      Base filename for imported files.
      void setUseSchemaImports​(boolean b)
      Set whether to emit references to imported schema files.
    • Constructor Detail

      • ServiceWSDLBuilder

        public ServiceWSDLBuilder​(org.apache.cxf.Bus b,
                                  List<org.apache.cxf.service.model.ServiceInfo> services)
        Sets up the builder on a bus with a list of services.
        Parameters:
        b - the bus.
        services - the services.
      • ServiceWSDLBuilder

        public ServiceWSDLBuilder​(org.apache.cxf.Bus b,
                                  org.apache.cxf.service.model.ServiceInfo... services)
        For callers who prefer varargs, an inline list of ServiceInfo objects instead of a List. Primarily used for tests or other callers with only one service in hand.
        Parameters:
        b - the bus.
        services - the services.
    • Method Detail

      • setUseSchemaImports

        public void setUseSchemaImports​(boolean b)
        Set whether to emit references to imported schema files. This is only effective for build(Map), which is passed additional schemas for import. build() resets this flag to false.
        Parameters:
        b - true to use imports.
      • setBaseFileName

        public void setBaseFileName​(String s)
        Base filename for imported files.
        Parameters:
        s - pathname.
      • build

        public javax.wsdl.Definition build()
                                    throws javax.wsdl.WSDLException
        Create the WSDL Definition object and return it. This function will never create imports to schemas.
        Returns:
        the WSDL definition.
        Throws:
        javax.wsdl.WSDLException
      • build

        public javax.wsdl.Definition build​(Map<String,​org.apache.cxf.service.model.SchemaInfo> imports)
                                    throws javax.wsdl.WSDLException
        Create the WSDL Definition object and return it. This function respects the setting of setUseSchemaImports(boolean).
        Parameters:
        imports - A set of schema imports to either reference as imports or read and then inline.
        Returns:
        the WSDL definition
        Throws:
        javax.wsdl.WSDLException
      • getWSDL11Extensors

        public List<javax.wsdl.extensions.ExtensibilityElement> getWSDL11Extensors​(org.apache.cxf.service.model.AbstractPropertiesHolder holder)
        Return a list of ExtensibilityElements for a particular component, such as a BindingFaultInfo. This perhaps should be protected.
        Parameters:
        holder - The item containing the extensibility elements.
        Returns:
        the extensibility elements.
      • addDocumentation

        protected void addDocumentation​(javax.wsdl.WSDLElement wsdlel,
                                        String text)
      • addExtensibilityElements

        protected void addExtensibilityElements​(javax.wsdl.Definition def,
                                                javax.wsdl.extensions.ElementExtensible elementExtensible,
                                                List<javax.wsdl.extensions.ExtensibilityElement> extensibilityElements)
      • buildTypes

        protected void buildTypes​(Collection<org.apache.cxf.service.model.SchemaInfo> schemas,
                                  Map<String,​org.apache.cxf.service.model.SchemaInfo> imports,
                                  javax.wsdl.Definition def)
      • buildTypesWithSchemaImports

        protected void buildTypesWithSchemaImports​(Collection<org.apache.cxf.service.model.SchemaInfo> schemas,
                                                   Map<String,​org.apache.cxf.service.model.SchemaInfo> imports,
                                                   javax.wsdl.Definition def)
        Parameters:
        schemas -
        imports -
        def -
      • buildBinding

        protected void buildBinding​(javax.wsdl.Definition definition,
                                    Collection<org.apache.cxf.service.model.BindingInfo> bindingInfos,
                                    Collection<javax.wsdl.PortType> portTypes)
      • buildBindingOperation

        protected void buildBindingOperation​(javax.wsdl.Definition def,
                                             javax.wsdl.Binding binding,
                                             Collection<org.apache.cxf.service.model.BindingOperationInfo> bindingOperationInfos)
      • buildBindingFault

        protected void buildBindingFault​(javax.wsdl.Definition def,
                                         javax.wsdl.BindingOperation bindingOperation,
                                         Collection<org.apache.cxf.service.model.BindingFaultInfo> bindingFaultInfos)
      • buildBindingInput

        protected void buildBindingInput​(javax.wsdl.Definition def,
                                         javax.wsdl.BindingOperation bindingOperation,
                                         org.apache.cxf.service.model.BindingMessageInfo bindingMessageInfo)
      • buildBindingOutput

        protected void buildBindingOutput​(javax.wsdl.Definition def,
                                          javax.wsdl.BindingOperation bindingOperation,
                                          org.apache.cxf.service.model.BindingMessageInfo bindingMessageInfo)
      • buildService

        protected void buildService​(org.apache.cxf.service.model.ServiceInfo serviceInfo,
                                    javax.wsdl.Definition definition)
      • buildPortType

        protected javax.wsdl.PortType buildPortType​(org.apache.cxf.service.model.InterfaceInfo intf,
                                                    javax.wsdl.Definition def)
      • addNamespace

        protected void addNamespace​(String namespaceURI,
                                    javax.wsdl.Definition def)
      • addNamespace

        protected void addNamespace​(String prefix,
                                    String namespaceURI,
                                    javax.wsdl.Definition def)
      • buildPortTypeOperation

        protected void buildPortTypeOperation​(javax.wsdl.PortType portType,
                                              Collection<org.apache.cxf.service.model.OperationInfo> operationInfos,
                                              javax.wsdl.Definition def)
      • buildMessage

        protected void buildMessage​(javax.wsdl.Message message,
                                    org.apache.cxf.service.model.AbstractMessageContainer messageContainer,
                                    javax.wsdl.Definition def)