edu.uga.cs.lsdis.meteors.uddiproxy.impl
Class WSDLPublisherImpl

java.lang.Object
  extended by edu.uga.cs.lsdis.meteors.uddiproxy.impl.WSDLPublisherImpl
All Implemented Interfaces:
WSDLPublisher

public class WSDLPublisherImpl
extends java.lang.Object
implements WSDLPublisher

This class is an implementation of the publishing interface of METEOR-S

Version:
1.0
Author:
Kunal Verma, Ke Li

Field Summary
static java.lang.String BINDING_NAMESPACE
           
static java.lang.String OPERATION_NAMESPACE
           
static java.lang.String PORT_NAMESPACE
           
static java.lang.String PORTTYPE_NAMESPACE
           
static java.lang.String SERVICE_NAMESPACE
           
static java.lang.String WSDL_TYPE
           
 
Constructor Summary
WSDLPublisherImpl()
           
WSDLPublisherImpl(java.lang.String basePath)
           
 
Method Summary
 java.lang.String findBusinessEntityByName(java.lang.String businessName, org.uddi4j.util.DiscoveryURLs urls)
          find the business entity using business name and discovery urls.
 java.lang.String findTModelKeyByName(java.lang.String name, java.lang.String namespace)
          find the tmodel using wsdl file's local name and namespace
 org.uddi4j.client.UDDIProxy getProxy()
           
 void printUDDIExceptionDetails(org.uddi4j.UDDIException e)
           
 java.lang.String publishBinding(java.lang.String namespace, java.lang.String localName, java.lang.String wsdlLocation, java.lang.String portTypeKey, java.lang.String protocol, java.lang.String transport)
          publish a WSDL Binding in UDDI
 ReturnVal publishBusinessEntity(java.lang.String businessName, java.util.Vector<org.uddi4j.util.DiscoveryURL> discoveryURLs, java.util.Vector<org.uddi4j.datatype.Description> descriptions, java.util.Vector<org.uddi4j.datatype.business.Contact> conts)
          create a business entity without any business service it must has a business name and at least one discovery url
 ReturnVal publishBusinessService(java.lang.String businessKey, java.lang.String wsdlLocation, java.lang.String serviceName, java.lang.String namespace, java.lang.String description, java.util.Vector<org.uddi4j.datatype.binding.TModelInstanceInfo> tmodelInfos, java.lang.String old_tmodel_key)
          use tmodel key and business key to check whether the service is exist if it is, just update the service; otherwise, publish a new one
 ReturnVal publishOperation(java.lang.String namespace, java.lang.String localName, java.lang.String wsdlLocation, java.lang.String functionalConcept, java.lang.String inputMsg, java.lang.String outputMsg, java.util.Vector inputs, java.util.Vector outputs, org.uddi4j.util.KeyedReference domain, java.lang.String portTypeKey, java.lang.String port, java.lang.String businessName, java.lang.String serviceName)
          published a WSDL operation in UDDI
 java.lang.String publishPortType(java.lang.String namespace, java.lang.String localName, java.lang.String wsdlLocation)
          published a WSDL portType in UDDI
 void setProxy(org.uddi4j.client.UDDIProxy proxy)
           
 java.lang.String updateBusinessEntityInfo(java.lang.String businessKey, java.lang.String businessName, java.util.Vector<org.uddi4j.util.DiscoveryURL> discoveryURLs, java.util.Vector<org.uddi4j.datatype.Description> descriptions, java.util.Vector<org.uddi4j.datatype.business.Contact> conts)
          update the business entity information if want to keep the origianl value, then the vector is null
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PORTTYPE_NAMESPACE

public static final java.lang.String PORTTYPE_NAMESPACE
See Also:
Constant Field Values

BINDING_NAMESPACE

public static final java.lang.String BINDING_NAMESPACE
See Also:
Constant Field Values

PORT_NAMESPACE

public static final java.lang.String PORT_NAMESPACE
See Also:
Constant Field Values

SERVICE_NAMESPACE

public static final java.lang.String SERVICE_NAMESPACE
See Also:
Constant Field Values

OPERATION_NAMESPACE

public static final java.lang.String OPERATION_NAMESPACE
See Also:
Constant Field Values

WSDL_TYPE

public static final java.lang.String WSDL_TYPE
See Also:
Constant Field Values
Constructor Detail

WSDLPublisherImpl

public WSDLPublisherImpl()

WSDLPublisherImpl

public WSDLPublisherImpl(java.lang.String basePath)
Method Detail

publishOperation

public ReturnVal publishOperation(java.lang.String namespace,
                                  java.lang.String localName,
                                  java.lang.String wsdlLocation,
                                  java.lang.String functionalConcept,
                                  java.lang.String inputMsg,
                                  java.lang.String outputMsg,
                                  java.util.Vector inputs,
                                  java.util.Vector outputs,
                                  org.uddi4j.util.KeyedReference domain,
                                  java.lang.String portTypeKey,
                                  java.lang.String port,
                                  java.lang.String businessName,
                                  java.lang.String serviceName)
                           throws org.uddi4j.UDDIException,
                                  org.uddi4j.transport.TransportException
published a WSDL operation in UDDI

Specified by:
publishOperation in interface WSDLPublisher
Parameters:
namespace - Namespace of the operation
localName - LocalName of the operation
wsdlLocation - Location of wsdl containing operation
functionalConcept - functional concept representing operation from a domain ontology
inputMsg - input message for the operation
outputMsg - output message for the operation
inputs - Set of inputs for the operation
outputs - Set of outputs for the operation
domain - Domain for the operation
portTypeKey - Key of the TModel representing portType of the operation
Returns:
oldkey -- old tmodel key; newkey -- new tmodel key
Throws:
org.uddi4j.transport.TransportException
org.uddi4j.UDDIException

publishPortType

public java.lang.String publishPortType(java.lang.String namespace,
                                        java.lang.String localName,
                                        java.lang.String wsdlLocation)
published a WSDL portType in UDDI

Specified by:
publishPortType in interface WSDLPublisher
Parameters:
namespace - Namespace of the portType
localName - LocalName of the portType
wsdlLocation - Location of wsdl containing portType
Returns:
String Key of published TModel for portType

publishBinding

public java.lang.String publishBinding(java.lang.String namespace,
                                       java.lang.String localName,
                                       java.lang.String wsdlLocation,
                                       java.lang.String portTypeKey,
                                       java.lang.String protocol,
                                       java.lang.String transport)
publish a WSDL Binding in UDDI

Specified by:
publishBinding in interface WSDLPublisher
Parameters:
namespace - Namespace of the Binding
localName - LocalName of the Binding
wsdlLocation - Location of wsdl containing Binding
Returns:
String Key of published TModel for Binding

publishBusinessService

public ReturnVal publishBusinessService(java.lang.String businessKey,
                                        java.lang.String wsdlLocation,
                                        java.lang.String serviceName,
                                        java.lang.String namespace,
                                        java.lang.String description,
                                        java.util.Vector<org.uddi4j.datatype.binding.TModelInstanceInfo> tmodelInfos,
                                        java.lang.String old_tmodel_key)
                                 throws java.lang.Exception,
                                        org.uddi4j.UDDIException
use tmodel key and business key to check whether the service is exist if it is, just update the service; otherwise, publish a new one

Specified by:
publishBusinessService in interface WSDLPublisher
Parameters:
businessKey - business key -- String (required)
wsdlLocation - wsdl location -- String
serviceName - servcie name -- String
namespace - service namespace -- String
description - service description -- String
tmodelInfos - tmodel informations -- Vector of TModelInstanceInfo
old_tmodel_key - old tmodel key -- String
Returns:
the flag is true when do update
Throws:
java.lang.Exception
org.uddi4j.UDDIException

publishBusinessEntity

public ReturnVal publishBusinessEntity(java.lang.String businessName,
                                       java.util.Vector<org.uddi4j.util.DiscoveryURL> discoveryURLs,
                                       java.util.Vector<org.uddi4j.datatype.Description> descriptions,
                                       java.util.Vector<org.uddi4j.datatype.business.Contact> conts)
                                throws org.uddi4j.UDDIException,
                                       java.lang.Exception
create a business entity without any business service it must has a business name and at least one discovery url

Specified by:
publishBusinessEntity in interface WSDLPublisher
Parameters:
businessName - businessName -- String
discoveryURLs - discovery urls -- Vector of DiscoveryURL
descriptions - descriptions -- Vector of Description
contacts - contact informations -- Vector of Contact
Returns:
flag - true (already exist) key - business key
Throws:
java.lang.Exception
org.uddi4j.UDDIException

updateBusinessEntityInfo

public java.lang.String updateBusinessEntityInfo(java.lang.String businessKey,
                                                 java.lang.String businessName,
                                                 java.util.Vector<org.uddi4j.util.DiscoveryURL> discoveryURLs,
                                                 java.util.Vector<org.uddi4j.datatype.Description> descriptions,
                                                 java.util.Vector<org.uddi4j.datatype.business.Contact> conts)
                                          throws org.uddi4j.UDDIException,
                                                 org.uddi4j.transport.TransportException
update the business entity information if want to keep the origianl value, then the vector is null

Specified by:
updateBusinessEntityInfo in interface WSDLPublisher
Parameters:
businessKey - business key -- String
businessName - business name -- String
discoveryURLs - discovery urls -- Vector of DiscoveryURL
descriptions - descriptions -- Vector of Description
contacts - contact informations -- Vector of Contact
Returns:
business key -- String
Throws:
java.lang.Exception
org.uddi4j.UDDIException
org.uddi4j.transport.TransportException

findBusinessEntityByName

public java.lang.String findBusinessEntityByName(java.lang.String businessName,
                                                 org.uddi4j.util.DiscoveryURLs urls)
                                          throws org.uddi4j.UDDIException,
                                                 java.lang.Exception
find the business entity using business name and discovery urls. there should be only one business key exist for these pair

Specified by:
findBusinessEntityByName in interface WSDLPublisher
Parameters:
businessName - business name -- String
discoveryUrls - discovery urls -- DiscoveryURLs
Returns:
business key -- String
Throws:
org.uddi4j.UDDIException
java.lang.Exception

findTModelKeyByName

public java.lang.String findTModelKeyByName(java.lang.String name,
                                            java.lang.String namespace)
find the tmodel using wsdl file's local name and namespace

Parameters:
name -
namespace -
Returns:

printUDDIExceptionDetails

public void printUDDIExceptionDetails(org.uddi4j.UDDIException e)

getProxy

public org.uddi4j.client.UDDIProxy getProxy()
Specified by:
getProxy in interface WSDLPublisher
Returns:
Returns the proxy.

setProxy

public void setProxy(org.uddi4j.client.UDDIProxy proxy)
Parameters:
proxy - The proxy to set.