You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
772 lines
31 KiB
772 lines
31 KiB
using System;
|
|
using System.IO;
|
|
using System.Diagnostics;
|
|
using System.Net;
|
|
using System.Web.Services;
|
|
using System.Web.Services.Description;
|
|
using System.Web.Services.Protocols;
|
|
using System.Xml;
|
|
using System.Xml.Serialization;
|
|
using System.Xml.Xsl;
|
|
using System.Xml.XPath;
|
|
using System.Text;
|
|
|
|
using Microsoft.Uddi;
|
|
using Microsoft.Uddi.Authentication;
|
|
using Microsoft.Uddi.VersionSupport;
|
|
using Microsoft.Uddi.Binding;
|
|
using Microsoft.Uddi.Business;
|
|
using Microsoft.Uddi.Service;
|
|
using Microsoft.Uddi.ServiceType;
|
|
using Microsoft.Uddi.Extensions;
|
|
using Microsoft.Uddi.Web;
|
|
|
|
namespace Microsoft.Uddi
|
|
{
|
|
/// <summary>
|
|
/// UddiOperator is the class the user will use to send their Uddi messages.
|
|
/// </summary>
|
|
public class UddiOperator
|
|
{
|
|
private SoapClient soapClient;
|
|
private AuthenticationMode authenticationMode;
|
|
private bool refreshAuthToken;
|
|
|
|
public UddiOperator()
|
|
{
|
|
soapClient = new SoapClient();
|
|
}
|
|
|
|
public string Url
|
|
{
|
|
get { return soapClient.Url; }
|
|
set { soapClient.Url = value; }
|
|
}
|
|
|
|
public SoapHttpClientProtocol HttpClient
|
|
{
|
|
get { return ( SoapHttpClientProtocol ) soapClient; }
|
|
}
|
|
|
|
public bool RefreshAuthToken
|
|
{
|
|
get { return refreshAuthToken; }
|
|
set { refreshAuthToken = value; }
|
|
}
|
|
|
|
public UddiVersion Version
|
|
{
|
|
get { return soapClient.Version; }
|
|
set { soapClient.Version = value; }
|
|
}
|
|
|
|
public AuthenticationMode AuthenticationMode
|
|
{
|
|
get { return authenticationMode; }
|
|
set
|
|
{
|
|
authenticationMode = value;
|
|
|
|
if( Microsoft.Uddi.AuthenticationMode.WindowsAuthentication == authenticationMode )
|
|
{
|
|
soapClient.Credentials = CredentialCache.DefaultCredentials;
|
|
soapClient.PreAuthenticate = true;
|
|
}
|
|
}
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// Uddi Authentication API messages
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
public DispositionReport Send( DiscardAuthToken discardAuthToken, AuthToken authToken )
|
|
{
|
|
if( discardAuthToken.AuthInfo != authToken.AuthInfo )
|
|
{
|
|
discardAuthToken.AuthInfo = authToken.AuthInfo;
|
|
}
|
|
|
|
return soapClient.DiscardAuthToken( discardAuthToken );
|
|
}
|
|
|
|
public AuthToken Send( GetAuthToken getAuthToken)
|
|
{
|
|
AuthToken authToken = soapClient.GetAuthToken( getAuthToken );
|
|
authToken.OriginatingAuthToken = getAuthToken;
|
|
|
|
return authToken;
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// Uddi Publish API messages
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
public RegisteredInfo Send( GetRegisteredInfo getRegisteredInfo, AuthToken authToken )
|
|
{
|
|
SetAuthToken( getRegisteredInfo, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.GetRegisteredInfo( getRegisteredInfo );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.GetRegisteredInfo( getRegisteredInfo );
|
|
}
|
|
}
|
|
|
|
public DispositionReport Send( DeleteBinding deleteBinding, AuthToken authToken )
|
|
{
|
|
SetAuthToken( deleteBinding, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.DeleteBinding( deleteBinding );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.DeleteBinding( deleteBinding );
|
|
}
|
|
}
|
|
|
|
public DispositionReport Send( DeleteBusiness deleteBusiness, AuthToken authToken )
|
|
{
|
|
SetAuthToken( deleteBusiness, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.DeleteBusiness( deleteBusiness );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.DeleteBusiness( deleteBusiness );
|
|
}
|
|
}
|
|
|
|
public DispositionReport Send( DeleteService deleteService, AuthToken authToken )
|
|
{
|
|
SetAuthToken( deleteService, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.DeleteService( deleteService );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.DeleteService( deleteService );
|
|
}
|
|
}
|
|
|
|
public DispositionReport Send( DeleteTModel deleteTModel, AuthToken authToken )
|
|
{
|
|
SetAuthToken( deleteTModel, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.DeleteTModel( deleteTModel );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.DeleteTModel( deleteTModel );
|
|
}
|
|
}
|
|
|
|
public BindingDetail Send( SaveBinding saveBinding, AuthToken authToken )
|
|
{
|
|
SetAuthToken( saveBinding, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.SaveBinding( saveBinding );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.SaveBinding( saveBinding );
|
|
}
|
|
}
|
|
|
|
public BusinessDetail Send( SaveBusiness saveBusiness, AuthToken authToken )
|
|
{
|
|
SetAuthToken( saveBusiness, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.SaveBusiness( saveBusiness );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.SaveBusiness( saveBusiness );
|
|
}
|
|
}
|
|
|
|
public ServiceDetail Send( SaveService saveService, AuthToken authToken )
|
|
{
|
|
SetAuthToken( saveService, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.SaveService( saveService );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.SaveService( saveService );
|
|
}
|
|
}
|
|
|
|
public TModelDetail Send( SaveTModel saveTModel, AuthToken authToken )
|
|
{
|
|
SetAuthToken( saveTModel, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.SaveTModel( saveTModel );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.SaveTModel( saveTModel );
|
|
}
|
|
}
|
|
|
|
public DispositionReport Send( AddPublisherAssertions addPublisherAssertions, AuthToken authToken)
|
|
{
|
|
SetAuthToken( addPublisherAssertions, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.AddPublisherAssertions( addPublisherAssertions );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.AddPublisherAssertions( addPublisherAssertions );
|
|
}
|
|
}
|
|
|
|
public DispositionReport Send( DeletePublisherAssertions deletePublisherAssertions, AuthToken authToken )
|
|
{
|
|
SetAuthToken( deletePublisherAssertions, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.DeletePublisherAssertions( deletePublisherAssertions );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.DeletePublisherAssertions( deletePublisherAssertions );
|
|
}
|
|
}
|
|
|
|
public AssertionStatusReport Send( GetAssertionStatusReport getAssertionStatusReport, AuthToken authToken )
|
|
{
|
|
SetAuthToken( getAssertionStatusReport, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.GetAssertionStatusReport( getAssertionStatusReport );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.GetAssertionStatusReport( getAssertionStatusReport );
|
|
}
|
|
}
|
|
|
|
public PublisherAssertionDetail Send( GetPublisherAssertions getPublisherAssertions, AuthToken authToken )
|
|
{
|
|
SetAuthToken( getPublisherAssertions, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.GetPublisherAssertions( getPublisherAssertions );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.GetPublisherAssertions( getPublisherAssertions );
|
|
}
|
|
}
|
|
|
|
public PublisherAssertionDetail Send( SetPublisherAssertions setPublisherAssertions, AuthToken authToken )
|
|
{
|
|
SetAuthToken( setPublisherAssertions, authToken );
|
|
|
|
try
|
|
{
|
|
return soapClient.SetPublisherAssertions( setPublisherAssertions );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
AttemptRefreshAuthInfo( uddiException, authToken );
|
|
|
|
return soapClient.SetPublisherAssertions( setPublisherAssertions );
|
|
}
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// Uddi Inquire API messages
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
public BindingDetail Send( FindBinding findBinding )
|
|
{
|
|
return soapClient.FindBinding( findBinding );
|
|
}
|
|
|
|
public BusinessList Send( FindBusiness findBusiness )
|
|
{
|
|
return soapClient.FindBusiness( findBusiness );
|
|
}
|
|
|
|
public RelatedBusinessList Send( FindRelatedBusinesses findRelatedBusinesses )
|
|
{
|
|
return soapClient.FindRelatedBusinesses( findRelatedBusinesses );
|
|
}
|
|
|
|
public ServiceList Send( FindService findService )
|
|
{
|
|
return soapClient.FindService( findService );
|
|
}
|
|
|
|
public TModelList Send( FindTModel findTModel )
|
|
{
|
|
return soapClient.FindTModel( findTModel );
|
|
}
|
|
|
|
public BindingDetail Send( GetBindingDetail getBindingDetail )
|
|
{
|
|
return soapClient.GetBindingDetail( getBindingDetail );
|
|
}
|
|
|
|
public BusinessDetail Send( GetBusinessDetail getBusinessDetail )
|
|
{
|
|
return soapClient.GetBusinessDetail( getBusinessDetail );
|
|
}
|
|
|
|
public BusinessDetailExt Send( GetBusinessDetailExt getBusinessDetailExt )
|
|
{
|
|
return soapClient.GetBusinessDetailExt( getBusinessDetailExt );
|
|
}
|
|
|
|
public ServiceDetail Send( GetServiceDetail getServiceDetail )
|
|
{
|
|
return soapClient.GetServiceDetail( getServiceDetail );
|
|
}
|
|
|
|
public TModelDetail Send( GetTModelDetail getTModelDetail )
|
|
{
|
|
return soapClient.GetTModelDetail( getTModelDetail );
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// Uddi Extensions API messages
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
public CategoryList Send( GetRelatedCategories getRelatedCategories )
|
|
{
|
|
return soapClient.GetRelatedCategories( getRelatedCategories );
|
|
}
|
|
|
|
private void SetAuthToken( UddiSecureMessage uddiSecureMessage, AuthToken authToken )
|
|
{
|
|
if( uddiSecureMessage.AuthInfo != authToken.AuthInfo )
|
|
{
|
|
uddiSecureMessage.AuthInfo = authToken.AuthInfo;
|
|
}
|
|
}
|
|
|
|
private void AttemptRefreshAuthInfo( UddiException uddiException, AuthToken authToken )
|
|
{
|
|
if( UddiException.ErrorType.E_authTokenExpired == uddiException.Type &&
|
|
true == RefreshAuthToken )
|
|
{
|
|
authToken = Send( authToken.OriginatingAuthToken );
|
|
}
|
|
else
|
|
{
|
|
throw uddiException;
|
|
}
|
|
}
|
|
}
|
|
|
|
[System.Web.Services.WebServiceBindingAttribute( Name="MessageHandlersSoap", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace )]
|
|
internal class SoapClient : SoapHttpClientProtocol
|
|
{
|
|
private static readonly string UddiUserAgent;
|
|
|
|
private UddiVersion uddiVersion;
|
|
|
|
public SoapClient()
|
|
{
|
|
uddiVersion = UddiVersion.Negotiate;
|
|
UserAgent = UddiUserAgent;
|
|
}
|
|
|
|
static SoapClient()
|
|
{
|
|
System.Reflection.Assembly assembly = System.Reflection.Assembly.GetExecutingAssembly();
|
|
|
|
//
|
|
//
|
|
// The assembly.FullName looks like this
|
|
// Microsoft.Uddi.Sdk, Version=1.1.1.1, Culture=neutral, PublicKeyToken=a48752033f5d4384
|
|
// I just want to use the first 2 sections.
|
|
// To convert this: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 1.0.3328.4)
|
|
// To this: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 1.0.3328.4; MS Uddi .Net SDK 1.0.xxxx.1)
|
|
//
|
|
|
|
UddiUserAgent = new Char[] { ' ', ')' } + "; MS Uddi .Net SDK " + FileVersionInfo.GetVersionInfo( assembly.Location ).FileVersion + ")";
|
|
}
|
|
|
|
public UddiVersion Version
|
|
{
|
|
get { return uddiVersion; }
|
|
set { uddiVersion = value; }
|
|
}
|
|
|
|
protected override WebRequest GetWebRequest( Uri uri )
|
|
{
|
|
UddiWebRequest webRequest = new UddiWebRequest( base.GetWebRequest( uri ), uddiVersion );
|
|
|
|
return webRequest;
|
|
}
|
|
|
|
private object[] InvokeWebMethod( string webMethodName, object[] parameters )
|
|
{
|
|
object[] results = null;
|
|
|
|
//
|
|
// The first (and only) parameter is the Uddi message we are about to send.
|
|
//
|
|
UddiCore uddiMessage = parameters[ 0 ] as UddiCore;
|
|
|
|
try
|
|
{
|
|
uddiMessage.SerializeMode = true;
|
|
results = Invoke( webMethodName, parameters );
|
|
|
|
}
|
|
catch( SoapException soapException )
|
|
{
|
|
//
|
|
// We have no meaningful results at this point.
|
|
//
|
|
results = null;
|
|
UddiException uddiException = new UddiException( soapException );
|
|
UddiVersion originalVersion = uddiVersion;
|
|
|
|
//
|
|
// If the exception is either a fatal error or a unrecognized version error, we will
|
|
// assume that the exception had something to do with a versioning problem. This is about
|
|
// the most reliable way to do this, since there is no standard way of reporting a version
|
|
// mismatch. If IterateOverVersions still does not return results, then we use the original
|
|
// exception and assume that that exception was indeed not version related.
|
|
//
|
|
if( ( uddiException.Type == UddiException.ErrorType.E_unrecognizedVersion ||
|
|
uddiException.Type == UddiException.ErrorType.E_fatalError ) &&
|
|
uddiVersion == UddiVersion.Negotiate )
|
|
{
|
|
results = InvokeForVersions( webMethodName, parameters, ref uddiException);
|
|
|
|
//
|
|
// Restore the original version. TODO: should we just keep this version as is?
|
|
//
|
|
uddiVersion = originalVersion;
|
|
}
|
|
|
|
if( null == results )
|
|
{
|
|
throw uddiException;
|
|
}
|
|
}
|
|
finally
|
|
{
|
|
uddiMessage.SerializeMode = false;
|
|
}
|
|
|
|
return results;
|
|
}
|
|
|
|
private object[] InvokeForVersions( string webMethodName, object[] parameters, ref UddiException returnException )
|
|
{
|
|
object[] results = null;
|
|
|
|
//
|
|
// Try to invoke this web method for each supported version
|
|
//
|
|
int numVersions = UddiVersionSupport.SupportedVersions.Length;
|
|
int index = 0;
|
|
|
|
while( index < numVersions && null == results )
|
|
{
|
|
try
|
|
{
|
|
UddiVersion versionToTry = UddiVersionSupport.SupportedVersions[ index++ ];
|
|
|
|
//
|
|
// Don't repeat versions.
|
|
//
|
|
if( versionToTry != uddiVersion )
|
|
{
|
|
uddiVersion = versionToTry;
|
|
}
|
|
|
|
results = Invoke( webMethodName, parameters );
|
|
}
|
|
catch( UddiException uddiException )
|
|
{
|
|
returnException = uddiException;
|
|
}
|
|
catch( Exception exception )
|
|
{
|
|
returnException = new UddiException( exception );
|
|
}
|
|
}
|
|
|
|
return results;
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// Uddi Publish API messages
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("registeredInfo", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public RegisteredInfo GetRegisteredInfo([XmlElement( Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] GetRegisteredInfo getRegisteredInfo)
|
|
{
|
|
object[] results = InvokeWebMethod("GetRegisteredInfo", new object[] {getRegisteredInfo});
|
|
return ((RegisteredInfo)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("dispositionReport", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public DispositionReport DeleteBinding([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] DeleteBinding deleteBinding)
|
|
{
|
|
object[] results = InvokeWebMethod("DeleteBinding", new object[] {deleteBinding});
|
|
return ((DispositionReport)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("dispositionReport", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public DispositionReport DeleteBusiness([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] DeleteBusiness deleteBusiness)
|
|
{
|
|
object[] results = InvokeWebMethod("DeleteBusiness", new object[] {deleteBusiness});
|
|
return ((DispositionReport)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("dispositionReport", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public DispositionReport DeleteService([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] DeleteService deleteService)
|
|
{
|
|
object[] results = InvokeWebMethod("DeleteService", new object[] {deleteService});
|
|
return ((DispositionReport)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("dispositionReport", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public DispositionReport DeleteTModel([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] DeleteTModel deleteTModel)
|
|
{
|
|
object[] results = InvokeWebMethod("DeleteTModel", new object[] {deleteTModel});
|
|
return ((DispositionReport)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("bindingDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public BindingDetail SaveBinding([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] SaveBinding saveBinding)
|
|
{
|
|
object[] results = InvokeWebMethod("SaveBinding", new object[] {saveBinding});
|
|
return ((BindingDetail)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("businessDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public BusinessDetail SaveBusiness([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] SaveBusiness saveBusiness)
|
|
{
|
|
object[] results = InvokeWebMethod("SaveBusiness", new object[] {saveBusiness});
|
|
return ((BusinessDetail)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("serviceDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public ServiceDetail SaveService([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] SaveService saveService)
|
|
{
|
|
object[] results = InvokeWebMethod("SaveService", new object[] {saveService});
|
|
return ((ServiceDetail)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("tModelDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public TModelDetail SaveTModel([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] SaveTModel saveTModel)
|
|
{
|
|
object[] results = InvokeWebMethod("SaveTModel", new object[] {saveTModel});
|
|
return ((TModelDetail)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("dispositionReport", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public DispositionReport DiscardAuthToken([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] DiscardAuthToken discardAuthToken)
|
|
{
|
|
object[] results = InvokeWebMethod("DiscardAuthToken", new object[] {discardAuthToken});
|
|
return ((DispositionReport)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("authToken", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public AuthToken GetAuthToken([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] GetAuthToken getAuthToken)
|
|
{
|
|
object[] results = InvokeWebMethod("GetAuthToken", new object[] {getAuthToken});
|
|
return ((AuthToken)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod( "", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare )]
|
|
[return: XmlElement( "dispositionReport", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )]
|
|
public DispositionReport AddPublisherAssertions( [XmlElement( Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )] AddPublisherAssertions addPublisherAssertions)
|
|
{
|
|
object[] results = InvokeWebMethod( "AddPublisherAssertions", new object[] { addPublisherAssertions });
|
|
return ( (DispositionReport)results[ 0 ] );
|
|
}
|
|
|
|
[SoapDocumentMethod( "", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare )]
|
|
[return: XmlElement( "dispositionReport", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )]
|
|
public DispositionReport DeletePublisherAssertions( [XmlElement( Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )] DeletePublisherAssertions deletePublisherAssertions )
|
|
{
|
|
object[] results = InvokeWebMethod( "DeletePublisherAssertions", new object[] { deletePublisherAssertions } );
|
|
return ( (DispositionReport)results[ 0 ] );
|
|
}
|
|
|
|
[SoapDocumentMethod( "", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare )]
|
|
[return: XmlElement( "assertionStatusReport", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )]
|
|
public AssertionStatusReport GetAssertionStatusReport( [XmlElement( Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )] GetAssertionStatusReport getAssertionStatusReport )
|
|
{
|
|
object[] results = InvokeWebMethod( "GetAssertionStatusReport", new object[] { getAssertionStatusReport } );
|
|
return ( (AssertionStatusReport)results[ 0 ] );
|
|
}
|
|
|
|
[SoapDocumentMethod( "", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare )]
|
|
[return: XmlElement( "publisherAssertions", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )]
|
|
public PublisherAssertionDetail GetPublisherAssertions( [XmlElement( Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )] GetPublisherAssertions getPublisherAssertions )
|
|
{
|
|
object[] results = InvokeWebMethod( "GetPublisherAssertions", new object[] { getPublisherAssertions } );
|
|
return ( (PublisherAssertionDetail)results[ 0 ] );
|
|
}
|
|
|
|
[SoapDocumentMethod( "", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare )]
|
|
[return: XmlElement("publisherAssertions", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public PublisherAssertionDetail SetPublisherAssertions( [XmlElement( Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )] SetPublisherAssertions setPublisherAssertions )
|
|
{
|
|
object[] results = InvokeWebMethod( "SetPublisherAssertions", new object[] { setPublisherAssertions } );
|
|
return ( (PublisherAssertionDetail)results[ 0 ] );
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// Uddi Inquire API messages
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("bindingDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public BindingDetail FindBinding([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] FindBinding findBinding)
|
|
{
|
|
object[] results = InvokeWebMethod("FindBinding", new object[] {findBinding});
|
|
return ((BindingDetail)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("businessList", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public BusinessList FindBusiness([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] FindBusiness findBusiness)
|
|
{
|
|
object[] results = InvokeWebMethod( "FindBusiness", new object[] { findBusiness } );
|
|
|
|
return ( ( BusinessList )results[0] );
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("relatedBusinessesList", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public RelatedBusinessList FindRelatedBusinesses([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] FindRelatedBusinesses findRelatedBusinesses )
|
|
{
|
|
object[] results = InvokeWebMethod( "FindRelatedBusinesses", new object[] { findRelatedBusinesses });
|
|
return ((RelatedBusinessList)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("serviceList", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public ServiceList FindService([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] FindService findService)
|
|
{
|
|
object[] results = InvokeWebMethod("FindService", new object[] {findService});
|
|
return ((ServiceList)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod( "", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare )]
|
|
[return: XmlElement( "tModelList", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )]
|
|
public TModelList FindTModel( [XmlElement( Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false )] FindTModel findTModel )
|
|
{
|
|
object[] results = InvokeWebMethod( "FindTModel", new object[] { findTModel } );
|
|
return ( (TModelList)results[ 0 ] );
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("bindingDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public BindingDetail GetBindingDetail([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] GetBindingDetail getBindingDetail)
|
|
{
|
|
object[] results = InvokeWebMethod("GetBindingDetail", new object[] {getBindingDetail});
|
|
return ((BindingDetail)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("businessDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public BusinessDetail GetBusinessDetail([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] GetBusinessDetail getBusinessDetail)
|
|
{
|
|
object[] results = InvokeWebMethod("GetBusinessDetail", new object[] {getBusinessDetail});
|
|
return ((BusinessDetail)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("businessDetailExt", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public BusinessDetailExt GetBusinessDetailExt([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] GetBusinessDetailExt getBusinessDetailExt )
|
|
{
|
|
object[] results = InvokeWebMethod("GetBusinessDetailExt", new object[] {getBusinessDetailExt});
|
|
return ((BusinessDetailExt)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("serviceDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public ServiceDetail GetServiceDetail([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] GetServiceDetail getServiceDetail)
|
|
{
|
|
object[] results = InvokeWebMethod("GetServiceDetail", new object[] {getServiceDetail});
|
|
return ((ServiceDetail)results[0]);
|
|
}
|
|
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("tModelDetail", Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)]
|
|
public TModelDetail GetTModelDetail([XmlElement(Namespace=Microsoft.Uddi.VersionSupport.UddiVersionSupport.CurrentNamespace, IsNullable=false)] GetTModelDetail getTModelDetail)
|
|
{
|
|
object[] results = InvokeWebMethod("GetTModelDetail", new object[] {getTModelDetail});
|
|
return ((TModelDetail)results[0]);
|
|
}
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
/// Uddi Extensions API messages
|
|
/////////////////////////////////////////////////////////////////////////////////////////////////
|
|
[SoapDocumentMethod("", Use=SoapBindingUse.Literal, ParameterStyle=SoapParameterStyle.Bare)]
|
|
[return: XmlElement("tModelDetail", Namespace=Microsoft.Uddi.Extensions.Namespaces.GetRelatedCategories, IsNullable=false)]
|
|
public CategoryList GetRelatedCategories( GetRelatedCategories getRelatedCategories )
|
|
{
|
|
object[] results = InvokeWebMethod("GetRelatedCategories", new object[] {getRelatedCategories});
|
|
return ((CategoryList)results[0]);
|
|
}
|
|
}
|
|
}
|