#8 skeleton
This commit is contained in:
parent
f5a4b8023c
commit
ee654609e1
|
@ -96,6 +96,10 @@ sub init {
|
|||
$self->addUnauthRoute( config => { '*' => 'config' }, ['POST'] );
|
||||
$self->addAuthRoute( config => { '*' => 'badSoapRequest' }, ['POST'] );
|
||||
}
|
||||
if ( $self->conf->{wsdlServer} ) {
|
||||
$self->addUnauthRoute( 'portal.wsdl' => 'wsdl', ['GET'] );
|
||||
$self->addAuthRoute( 'portal.wsdl' => 'wsdl', ['GET'] );
|
||||
}
|
||||
1;
|
||||
}
|
||||
|
||||
|
@ -447,4 +451,249 @@ sub _buildSoapHash {
|
|||
return \SOAP::Data->value(@tmp);
|
||||
}
|
||||
|
||||
########
|
||||
# WSDL #
|
||||
########
|
||||
|
||||
sub wsdl {
|
||||
my($self,$req)=@_;
|
||||
# <element name='$_' type='xsd:string'></element>
|
||||
# <element name='$_' type='xsd:string' nillable='true'></element>
|
||||
}
|
||||
|
||||
1;
|
||||
|
||||
__DATA__
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<wsdl:definitions
|
||||
targetNamespace="urn:Lemonldap/NG/Common/CGI/SOAPService"
|
||||
xmlns:impl="urn:Lemonldap/NG/Common/CGI/SOAPService"
|
||||
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
|
||||
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
|
||||
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:tns1="urn:Lemonldap/NG/Common/CGI/SOAPService">
|
||||
|
||||
<!-- types definitions -->
|
||||
|
||||
<wsdl:types>
|
||||
<schema targetNamespace="urn:Lemonldap/NG/Common/CGI/SOAPService" xmlns="http://www.w3.org/2001/XMLSchema">
|
||||
<import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
|
||||
|
||||
<complexType name="CookiesSequence">
|
||||
<sequence>
|
||||
$cookieList
|
||||
</sequence>
|
||||
</complexType>
|
||||
<complexType name="AttributesSequence">
|
||||
<sequence>
|
||||
$attrList
|
||||
</sequence>
|
||||
</complexType>
|
||||
<complexType name="GetCookieResponse">
|
||||
<sequence>
|
||||
<element name="errorCode" type="xsd:int"></element>
|
||||
<element name="cookies" minOccurs="0" type="tns1:CookiesSequence"></element>
|
||||
</sequence>
|
||||
</complexType>
|
||||
<complexType name="GetAttributesResponse">
|
||||
<sequence>
|
||||
<element name="error" type="xsd:int"></element>
|
||||
<element name="attributes" type="tns1:AttributesSequence"></element>
|
||||
</sequence>
|
||||
</complexType>
|
||||
|
||||
</schema>
|
||||
</wsdl:types>
|
||||
|
||||
<!-- authentication service -->
|
||||
|
||||
<wsdl:message name="errorRequest">
|
||||
<wsdl:part name="code" type="xsd:int" />
|
||||
<wsdl:part name="lang" type="xsd:string" />
|
||||
</wsdl:message>
|
||||
<wsdl:message name="errorResponse">
|
||||
<wsdl:part name="result" type="xsd:string" />
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getCookiesRequest">
|
||||
<wsdl:part name="user" type="xsd:string" />
|
||||
<wsdl:part name="password" type="xsd:string" />
|
||||
</wsdl:message>
|
||||
<wsdl:message name="getCookiesResponse">
|
||||
<wsdl:part name="session" type="tns1:GetCookieResponse" />
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:portType name="authenticationPortType">
|
||||
<wsdl:operation name="error" parameterOrder="code lang">
|
||||
<wsdl:input message="impl:errorRequest" name="errorRequest" />
|
||||
<wsdl:output message="impl:errorResponse" name="errorResponse" />
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="getCookies" parameterOrder="user password">
|
||||
<wsdl:input message="impl:getCookiesRequest" name="getCookiesRequest" />
|
||||
<wsdl:output message="impl:getCookiesResponse" name="getCookiesResponse" />
|
||||
</wsdl:operation>
|
||||
</wsdl:portType>
|
||||
|
||||
<wsdl:binding name="authenticationBinding" type="impl:authenticationPortType">
|
||||
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
|
||||
<wsdl:operation name="error">
|
||||
<wsdlsoap:operation soapAction="" />
|
||||
<wsdl:input name="errorRequest">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:input>
|
||||
<wsdl:output name="errorResponse">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="getCookies">
|
||||
<wsdlsoap:operation soapAction="" />
|
||||
<wsdl:input name="getCookiesRequest">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getCookiesResponse">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
</wsdl:binding>
|
||||
|
||||
<wsdl:service name="authenticationService">
|
||||
<wsdl:port binding="impl:authenticationBinding" name="authenticationPort">
|
||||
<wsdlsoap:address location="$portal" />
|
||||
</wsdl:port>
|
||||
</wsdl:service>
|
||||
|
||||
<!-- notification service -->
|
||||
|
||||
<wsdl:message name="newNotificationRequest">
|
||||
<wsdl:part name="notification" type="xsd:string" />
|
||||
</wsdl:message>
|
||||
<wsdl:message name="newNotificationResponse">
|
||||
<wsdl:part name="result" type="xsd:int" />
|
||||
</wsdl:message>
|
||||
<wsdl:message name="deleteNotificationRequest">
|
||||
<wsdl:part name="uid" type="xsd:string" />
|
||||
<wsdl:part name="myref" type="xsd:string" />
|
||||
</wsdl:message>
|
||||
<wsdl:message name="deleteNotificationResponse">
|
||||
<wsdl:part name="result" type="xsd:int" />
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:portType name="notificationPortType">
|
||||
<wsdl:operation name="newNotification" parameterOrder="notification">
|
||||
<wsdl:input message="impl:newNotificationRequest" name="newNotificationRequest" />
|
||||
<wsdl:output message="impl:newNotificationResponse" name="newNotificationResponse" />
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="deleteNotification" parameterOrder="uid myref">
|
||||
<wsdl:input message="impl:deleteNotificationRequest" name="deleteNotificationRequest" />
|
||||
<wsdl:output message="impl:deleteNotificationResponse" name="deleteNotificationResponse" />
|
||||
</wsdl:operation>
|
||||
</wsdl:portType>
|
||||
|
||||
<wsdl:binding name="notificationBinding" type="impl:notificationPortType">
|
||||
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
|
||||
<wsdl:operation name="newNotification">
|
||||
<wsdlsoap:operation soapAction="" />
|
||||
<wsdl:input name="newNotificationRequest">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:input>
|
||||
<wsdl:output name="newNotificationResponse">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="deleteNotification">
|
||||
<wsdlsoap:operation soapAction="" />
|
||||
<wsdl:input name="deleteNotificationRequest">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:input>
|
||||
<wsdl:output name="deleteNotificationResponse">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
</wsdl:binding>
|
||||
|
||||
<wsdl:service name="notificationService">
|
||||
<wsdl:port binding="impl:notificationBinding" name="notificationPort">
|
||||
<wsdlsoap:address location="$portal/notification" />
|
||||
</wsdl:port>
|
||||
</wsdl:service>
|
||||
|
||||
<!-- sessions service -->
|
||||
|
||||
<wsdl:message name="getAttributesRequest">
|
||||
<wsdl:part name="id" type="xsd:string" />
|
||||
</wsdl:message>
|
||||
<wsdl:message name="getAttributesResponse">
|
||||
<wsdl:part name="session" type="tns1:GetAttributesResponse" />
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="isAuthorizedURIRequest">
|
||||
<wsdl:part name="id" type="xsd:string" />
|
||||
<wsdl:part name="uri" type="xsd:string" />
|
||||
</wsdl:message>
|
||||
<wsdl:message name="isAuthorizedURIResponse">
|
||||
<wsdl:part name="result" type="xsd:int" />
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:message name="getMenuApplicationsRequest">
|
||||
<wsdl:part name="id" type="xsd:string" />
|
||||
</wsdl:message>
|
||||
<wsdl:message name="getMenuApplicationsResponse">
|
||||
<wsdl:part name="result" type="xsd:anyType" />
|
||||
</wsdl:message>
|
||||
|
||||
<wsdl:portType name="sessionsPortType">
|
||||
<wsdl:operation name="getAttributes" parameterOrder="id">
|
||||
<wsdl:input message="impl:getAttributesRequest" name="getAttributesRequest" />
|
||||
<wsdl:output message="impl:getAttributesResponse" name="getAttributesResponse" />
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="isAuthorizedURI" parameterOrder="id uri">
|
||||
<wsdl:input message="impl:isAuthorizedURIRequest" name="isAuthorizedURIRequest" />
|
||||
<wsdl:output message="impl:isAuthorizedURIResponse" name="isAuthorizedURIResponse" />
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="getMenuApplications" parameterOrder="id">
|
||||
<wsdl:input message="impl:getMenuApplicationsRequest" name="getMenuApplicationsRequest" />
|
||||
<wsdl:output message="impl:getMenuApplicationsResponse" name="getMenuApplicationsResponse" />
|
||||
</wsdl:operation>
|
||||
</wsdl:portType>
|
||||
|
||||
<wsdl:binding name="sessionsBinding" type="impl:sessionsPortType">
|
||||
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
|
||||
<wsdl:operation name="getAttributes">
|
||||
<wsdlsoap:operation soapAction="" />
|
||||
<wsdl:input name="getAttributesRequest">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getAttributesResponse">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="isAuthorizedURI">
|
||||
<wsdlsoap:operation soapAction="" />
|
||||
<wsdl:input name="isAuthorizedURIRequest">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:input>
|
||||
<wsdl:output name="isAuthorizedURIResponse">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
<wsdl:operation name="getMenuApplications">
|
||||
<wsdlsoap:operation soapAction="" />
|
||||
<wsdl:input name="getMenuApplicationsRequest">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:input>
|
||||
<wsdl:output name="getMenuApplicationsResponse">
|
||||
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:Lemonldap/NG/Common/CGI/SOAPService" use="encoded" />
|
||||
</wsdl:output>
|
||||
</wsdl:operation>
|
||||
|
||||
</wsdl:binding>
|
||||
|
||||
<wsdl:service name="sessionsService">
|
||||
<wsdl:port binding="impl:sessionsBinding" name="sessionsPort">
|
||||
<wsdlsoap:address location="$portal/sessions" />
|
||||
</wsdl:port>
|
||||
</wsdl:service>
|
||||
|
||||
</wsdl:definitions>
|
||||
|
|
Loading…
Reference in New Issue
Block a user