<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions
	targetNamespace="http://amqp.apache.org/qpid/management/qman"
	xmlns:qman="http://amqp.apache.org/qpid/management/qman"
	xmlns="http://schemas.xmlsoap.org/wsdl/"
	xmlns:wsa="http://www.w3.org/2005/08/addressing"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
	xmlns:wsdl-soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" 
	xmlns:wsrf-r="http://docs.oasis-open.org/wsrf/r-2" 
	xmlns:wsrf-rl="http://docs.oasis-open.org/wsrf/rl-2" 
	xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2" 
	xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2"
	xmlns:wsrf-sg="http://docs.oasis-open.org/wsrf/sg-2" 
	xmlns:wsrf-sgw="http://docs.oasis-open.org/wsrf/sgw-2" 
	xmlns:wsrmd="http://docs.oasis-open.org/wsrf/rmd-1" 
	name="QManAdapter" >
	<wsdl:types>	
		<xsd:schema  elementFormDefault="qualified"  targetNamespace="http://docs.oasis-open.org/wsrf/bf-2">
			<xsd:include schemaLocation="WS-BaseFaults-1_2.xsd" />
		</xsd:schema>
		<xsd:schema  elementFormDefault="qualified"  targetNamespace="http://docs.oasis-open.org/wsrf/rp-2">
			<xsd:include schemaLocation="WS-ResourceProperties-1_2.xsd" />
		</xsd:schema>
		<xsd:schema elementFormDefault="qualified" targetNamespace="http://docs.oasis-open.org/wsrf/r-2">
			<xsd:include schemaLocation="WS-Resource-1_2.xsd" />
		</xsd:schema>
		<xsd:schema elementFormDefault="qualified" targetNamespace="http://www.w3.org/2005/08/addressing">
			<xsd:include schemaLocation="WS-Addressing-2005_08.xsd"/>
		</xsd:schema>
		<xsd:schema elementFormDefault="qualified" targetNamespace="http://schemas.xmlsoap.org/ws/2004/09/mex">
			<xsd:include schemaLocation="WS-MetadataExchange-2004_09.xsd"/>
		</xsd:schema>
		<xsd:schema elementFormDefault="qualified" targetNamespace="http://docs.oasis-open.org/wsrf/sg-2">
			<xsd:include schemaLocation="WS-ServiceGroup-1_2.xsd" />
		</xsd:schema>
		<xsd:schema targetNamespace="http://amqp.apache.org/qpid/management/qman">
			<xsd:import namespace="http://docs.oasis-open.org/wsrf/bf-2" schemaLocation="WS-BaseFaults-1_2.xsd"/>
			<xsd:import namespace="http://docs.oasis-open.org/wsrf/sg-2" schemaLocation="WS-ServiceGroup-1_2.xsd"/>
			<xsd:import namespace="http://docs.oasis-open.org/wsrf/rp-2" schemaLocation="WS-ResourceProperties-1_2.xsd"/>
			
			<!--  QMAN ADAPTER PROPERTIES 
			<xsd:element name="ConnectedBrokerCount" type="xsd:integer"/>			
			<xsd:element name="ManagedInstanceCount" type="xsd:integer"/>			
			<xsd:element name="QManAdapterProperties">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="qman:ConnectedBrokerCount" />
						<xsd:element ref="qman:ManagedInstanceCount" />
						<xsd:element ref="wsrf-sg:MembershipContentRule"/>
						<xsd:element ref="wsrf-sg:Entry" minOccurs="0"/>
						<xsd:element ref="wsrf-rp:QueryExpressionDialect"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
-->			
			<xsd:element name="OperationInvocationFault">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="wsrf-bf:BaseFaultType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="EntityInstanceNotFoundFault">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="wsrf-bf:BaseFaultType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="MalformedEntityNameFault">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="wsrf-bf:BaseFaultType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="NoSuchAttributeFault">
				<xsd:complexType>
					<xsd:complexContent>
						<xsd:extension base="wsrf-bf:BaseFaultType"/>
					</xsd:complexContent>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Connect">
				<xsd:complexType>
					<xsd:sequence>
		            	<xsd:element name="host" type="xsd:string" minOccurs="1" nillable="false"/>
		            	<xsd:element name="port" type="xsd:integer" minOccurs="1" nillable="false"/>
		            	<xsd:element name="username" type="xsd:string" minOccurs="1" nillable="false"/>
		            	<xsd:element name="password" type="xsd:string" minOccurs="1" nillable="false"/>
		            	<xsd:element name="virtualHost" type="xsd:string" minOccurs="1" nillable="false"/>
		          </xsd:sequence>
		        </xsd:complexType>
			</xsd:element>
			<xsd:element name="ConnectResponse"/>
		</xsd:schema>	
	</wsdl:types>	
	<wsdl:message name="OperationInvocationFaultMessage">
    	<wsdl:part name="OperationInvocationFault" element="qman:OperationInvocationFault" />
    </wsdl:message>
	<wsdl:message name="EntityInstanceNotFoundFaultMessage">
    	<wsdl:part name="EntityInstanceNotFound" element="qman:EntityInstanceNotFoundFault" />
    </wsdl:message>
	<wsdl:message name="MalformedEntityNameFaultMessage">
    	<wsdl:part name="MalformedEntityName" element="qman:MalformedEntityNameFault" />
    </wsdl:message>
	<wsdl:message name="NoSuchAttributeFaultMessage">
    	<wsdl:part name="NoSuchAttributeFault" element="qman:NoSuchAttributeFault" />
    </wsdl:message>
	<wsdl:message name="ConnectRequestMessage">
		<wsdl:part name="ConnectRequest" element="qman:Connect" />
	</wsdl:message>
	<wsdl:message name="ConnectResponseMessage">
		<wsdl:part name="ConnectResponse" element="qman:ConnectResponse" />
	</wsdl:message>
	<wsdl:message name="InvalidResourcePropertyQNameFault">
		<wsdl:part name="InvalidResourcePropertyQNameFault" element="wsrf-rp:InvalidResourcePropertyQNameFault" />
	</wsdl:message>
	<wsdl:message name="ResourceUnknownFault">
		<wsdl:part name="ResourceUnknownFault" element="wsrf-r:ResourceUnknownFault" />
	</wsdl:message> 
	<wsdl:message name="ResourceUnavailableFault">
		<wsdl:part name="ResourceUnavailableFault" element="wsrf-r:ResourceUnavailableFault" />
	</wsdl:message>
	<wsdl:message name="GetResourcePropertyDocumentRequest">
		<wsdl:part name="GetResourcePropertyDocumentRequest" element="wsrf-rp:GetResourcePropertyDocument"/>
	</wsdl:message>
	<wsdl:message name="GetResourcePropertyDocumentResponse">
		<wsdl:part name="GetResourcePropertyDocumentResponse" element="wsrf-rp:GetResourcePropertyDocumentResponse"/>
	</wsdl:message>
	<wsdl:message name="GetMultipleResourcePropertiesRequest">
    	<wsdl:part name="GetMultipleResourcePropertiesRequest" element="wsrf-rp:GetMultipleResourceProperties" />
    </wsdl:message>
    <wsdl:message name="GetMultipleResourcePropertiesResponse">
    	<wsdl:part name="GetMultipleResourcePropertiesResponse" element="wsrf-rp:GetMultipleResourcePropertiesResponse" />
    </wsdl:message>		
	<wsdl:message name="GetResourcePropertyRequest">
		<wsdl:part name="GetResourcePropertyRequest" element="wsrf-rp:GetResourceProperty" />
	</wsdl:message>
	<wsdl:message name="GetResourcePropertyResponse">
		<wsdl:part name="GetResourcePropertyResponse" element="wsrf-rp:GetResourcePropertyResponse" />
	</wsdl:message>	 
	<wsdl:message name="GetMetadataRequestMessage">
  		<wsdl:part name="GetMetadataMsg" element="wsx:GetMetadata" />
	</wsdl:message>
	<wsdl:message name="GetMetadataResponseMessage">
  		<wsdl:part name="GetMetadataResponseMsg" element="wsx:Metadata" />
	</wsdl:message>
	    <wsdl:message name="QueryResourcePropertiesRequest">
    	<wsdl:part name="QueryResourcePropertiesRequest" element="wsrf-rp:QueryResourceProperties" />
    </wsdl:message>
    <wsdl:message name="QueryResourcePropertiesResponse">
    	<wsdl:part name="QueryResourcePropertiesResponse" element="wsrf-rp:QueryResourcePropertiesResponse" />
    </wsdl:message>
    <wsdl:message name="UnknownQueryExpressionDialectFault">
    	<wsdl:part name="UnknownQueryExpressionDialectFault" element="wsrf-rp:UnknownQueryExpressionDialectFault" />
    </wsdl:message>
    <wsdl:message name="InvalidQueryExpressionFault">
    	<wsdl:part name="InvalidQueryExpressionFault" element="wsrf-rp:InvalidQueryExpressionFault" />
    </wsdl:message>
    <wsdl:message name="QueryEvaluationErrorFault">
    	<wsdl:part name="QueryEvaluationErrorFault" element="wsrf-rp:QueryEvaluationErrorFault" />
    </wsdl:message>
	<wsdl:portType 
	name="QManAdapterPortType" 
		wsrf-rp:ResourceProperties="wsrf-sg:ServiceGroupRP" 
	    wsrmd:Descriptor="ServiceGroupMetadata" wsrmd:DescriptorLocation="QManAdapter.rmd">
	
	<!-- 
		name="QManAdapterPortType" 
		wsrf-rp:ResourceProperties="qman:QManAdapterProperties" 
		wsrmd:Descriptor="QManAdapterMetadata" 
		wsrmd:DescriptorLocation="QManAdapter.rmd">
		 -->
		<wsdl:operation name="QueryResourceProperties">
			<wsdl:input 
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/QueryResourceProperties/QueryResourcePropertiesRequest" 
				name="QueryResourcePropertiesRequest" 
				message="qman:QueryResourcePropertiesRequest" />
			<wsdl:output 
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/QueryResourceProperties/QueryResourcePropertiesResponse" 
			    name="QueryResourcePropertiesResponse" 
			    message="qman:QueryResourcePropertiesResponse" />
			<wsdl:fault name="ResourceUnknownFault" message="qman:ResourceUnknownFault"/>
			<wsdl:fault name="ResourceUnavailableFault" message="qman:ResourceUnavailableFault"/>
			<wsdl:fault name="UnknownQueryExpressionDialectFault" message="qman:UnknownQueryExpressionDialectFault"/>
			<wsdl:fault name="InvalidQueryExpressionFault" message="qman:InvalidQueryExpressionFault"/>
			<wsdl:fault name="QueryEvaluationErrorFault" message="qman:QueryEvaluationErrorFault" />
    	</wsdl:operation>
		<wsdl:operation name="Connect">
			<wsdl:documentation>
				Connects QMan with a new broker.
			</wsdl:documentation>
			<wsdl:input 
				wsa:Action="http://amqp.apache.org/qpid/management/qman/Connect" 
			    name="ConnectRequestInput" 
			    message="qman:ConnectRequestMessage" />
			<wsdl:output 
				wsa:Action="http://amqp.apache.org/qpid/management/qman/ConnectResponse" 
			    name="ConnectResponseOutput" 
			    message="qman:ConnectResponseMessage" />
		</wsdl:operation>
		<wsdl:operation name="GetMultipleResourceProperties">
			<wsdl:documentation>				
				Returns an array containing values for the requested properties.
				Note that using this method it's possibile to retrieve only the value of the QManService properties.
				That is : this method is not supposed to be used for retrieve attributes of the QMan managed entities. For that, the GetManagedEntityAttributeValue must be used.</wsdl:documentation>
			<wsdl:input 
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetMultipleResourceProperties/GetMultipleResourcePropertiesRequest" 
			    name="GetMultipleResourcePropertiesRequest" 
			    message="qman:GetMultipleResourcePropertiesRequest" />
			<wsdl:output 
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetMultipleResourceProperties/GetMultipleResourcePropertiesResponse" 
			    name="GetMultipleResourcePropertiesResponse" 
			    message="qman:GetMultipleResourcePropertiesResponse" />
			<wsdl:fault name="ResourceUnknownFault" message="qman:ResourceUnknownFault"/>
			<wsdl:fault name="ResourceUnavailableFault" message="qman:ResourceUnavailableFault"/>
			<wsdl:fault name="InvalidResourcePropertyQNameFault" message="qman:InvalidResourcePropertyQNameFault" />
    	</wsdl:operation>	
		<wsdl:operation name="GetResourcePropertyDocument">
			<wsdl:documentation>
				Returns resource's entire WS-RP document, with the most up-to-date values of all properties. Note that using this method it's possibile to retrieve only the value of the QManService properties.
				That is : this method is not supposed to be used for retrieve attributes of the QMan managed entities. For that, the GetManagedEntityAttributeValue must be used.</wsdl:documentation>
			<wsdl:input 
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetResourcePropertyDocument/GetResourcePropertyDocumentRequest" 
			    name="GetResourcePropertyDocumentRequest" 
			    message="qman:GetResourcePropertyDocumentRequest"/>
			<wsdl:output 
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetResourcePropertyDocument/GetResourcePropertyDocumentResponse" 
				name="GetResourcePropertyDocumentResponse" 
				message="qman:GetResourcePropertyDocumentResponse"/>
			<wsdl:fault name="ResourceUnknownFault" message="qman:ResourceUnknownFault"/>
			<wsdl:fault name="ResourceUnavailableFault" message="qman:ResourceUnavailableFault"/>
		</wsdl:operation>
		<wsdl:operation name="GetResourceProperty">
			<wsdl:documentation>
				Returns the value of the given property. Note that using this method it's possibile to retrieve only the value of the QManService properties.
				That is : this method is not supposed to be used for retrieve attributes of the QMan managed entities. For that, the GetManagedEntityAttributeValue must be used.
			</wsdl:documentation>
			<wsdl:input 
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetResourceProperty/GetResourcePropertyRequest" 
			    name="GetResourcePropertyRequest" 
			    message="qman:GetResourcePropertyRequest" />
			<wsdl:output 
				wsa:Action="http://docs.oasis-open.org/wsrf/rpw-2/GetResourceProperty/GetResourcePropertyResponse" 
			    name="GetResourcePropertyResponse" 
			    message="qman:GetResourcePropertyResponse" />		    
			<wsdl:fault name="ResourceUnknownFault" message="qman:ResourceUnknownFault"/>
			<wsdl:fault name="ResourceUnavailableFault" message="qman:ResourceUnavailableFault"/>
			<wsdl:fault name="InvalidResourcePropertyQNameFault" message="qman:InvalidResourcePropertyQNameFault" />
		</wsdl:operation>	
		<wsdl:operation name="GetMetadata">
			<wsdl:documentation>
				Implementation of the WS-MetadataExchange GetMetadata port type. Note that the only supported metadata type (dialect) is WSDL.
			</wsdl:documentation>
			<wsdl:input 
				wsa:Action="http://schemas.xmlsoap.org/ws/2004/09/mex/GetMetadata" 
			    name="GetMetadataMsg" 
			    message="qman:GetMetadataRequestMessage"/>
			<wsdl:output 
				wsa:Action="http://schemas.xmlsoap.org/ws/2004/09/mex/GetMetadataResponse" 
			    name="GetMetadataResponseMsg" 
			    message="qman:GetMetadataResponseMessage"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="QManAdapterBinding" type="qman:QManAdapterPortType">
		<wsdl-soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />        
		<wsdl:operation name="QueryResourceProperties">
        	<wsdl-soap:operation soapAction="QueryResourceProperties"/>
        	<wsdl:input name="QueryResourcePropertiesRequest">
        		<wsdl-soap:body 
        			use="encoded"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        	</wsdl:input>
        	<wsdl:output name="QueryResourcePropertiesResponse">
        		<wsdl-soap:body 
        			use="encoded" 
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        	</wsdl:output>
        	<wsdl:fault name="ResourceUnknownFault">
        		<wsdl-soap:fault 
        			use="encoded" 
        			name="ResourceUnknownFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="ResourceUnavailableFault">
        		<wsdl-soap:fault 
        			use="encoded" 
        			name="ResourceUnavailableFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="UnknownQueryExpressionDialectFault">
        		<wsdl-soap:fault 
        			use="encoded" 
        			name="UnknownQueryExpressionDialectFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="InvalidQueryExpressionFault">
        		<wsdl-soap:fault 
        			use="encoded" 
        			name="InvalidQueryExpressionFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="QueryEvaluationErrorFault">
        		<wsdl-soap:fault 
        			use="encoded" 
        			name="QueryEvaluationErrorFault"/>
        	</wsdl:fault>
        </wsdl:operation>
        <wsdl:operation name="Connect">
			<wsdl-soap:operation soapAction="Connect" />
			<wsdl:input>
				<wsdl-soap:body 
					use="literal" 
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:input>
			<wsdl:output>
				<wsdl-soap:body 
					use="literal" 
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:output>
		</wsdl:operation>	
        <wsdl:operation name="GetMultipleResourceProperties">
        	<wsdl-soap:operation soapAction="GetMultipleResourceProperties"/>
        	<wsdl:input name="GetMultipleResourcePropertiesRequest">
        		<wsdl-soap:body 
        			use="literal"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        	</wsdl:input>
        	<wsdl:output name="GetMultipleResourcePropertiesResponse">
        		<wsdl-soap:body 
        			use="literal" 
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        	</wsdl:output>
        	<wsdl:fault name="ResourceUnknownFault">
        		<wsdl-soap:fault 
        			use="literal" 
        			name="ResourceUnknownFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="ResourceUnavailableFault">
        		<wsdl-soap:fault 
        			use="literal" 
        			name="ResourceUnavailableFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="InvalidResourcePropertyQNameFault">
        		<wsdl-soap:fault 
        			use="literal" 
        			name="InvalidResourcePropertyQNameFault"/>
        	</wsdl:fault>
        </wsdl:operation>		
        <wsdl:operation name="GetResourcePropertyDocument">
        	<wsdl-soap:operation soapAction="GetResourcePropertyDocument"/>
        	<wsdl:input name="GetResourcePropertyDocumentRequest">
        		<wsdl-soap:body 
        			use="literal"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        	</wsdl:input>
        	<wsdl:output name="GetResourcePropertyDocumentResponse">
        		<wsdl-soap:body 
        			use="literal" 
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        	</wsdl:output>
        	<wsdl:fault name="ResourceUnknownFault">
        		<wsdl-soap:fault 
        			use="literal" 
        			name="ResourceUnknownFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="ResourceUnavailableFault">
        		<wsdl-soap:fault 
        			use="literal" 
        			name="ResourceUnavailableFault"/>
        	</wsdl:fault>
        </wsdl:operation>		
      	<wsdl:operation name="GetResourceProperty">
        	<wsdl-soap:operation soapAction="GetResourceProperty"/>
        	<wsdl:input name="GetResourcePropertyRequest">
        		<wsdl-soap:body 
        			use="literal"
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        	</wsdl:input>
        	<wsdl:output name="GetResourcePropertyResponse">
        		<wsdl-soap:body 
        			use="literal" 
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
        	</wsdl:output>
        	<wsdl:fault name="ResourceUnknownFault">
        		<wsdl-soap:fault 
        			use="literal" 
        			name="ResourceUnknownFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="ResourceUnavailableFault">
        		<wsdl-soap:fault 
        			use="literal" 
        			name="ResourceUnavailableFault"/>
        	</wsdl:fault>
        	<wsdl:fault name="InvalidResourcePropertyQNameFault">
        		<wsdl-soap:fault 
        			use="literal" 
        			name="InvalidResourcePropertyQNameFault"/>
        	</wsdl:fault>
        </wsdl:operation>
		<wsdl:operation name="GetMetadata">
			<wsdl-soap:operation soapAction="GetMetadata" />
			<wsdl:input>
				<wsdl-soap:body 
					use="literal" 
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:input>
			<wsdl:output>
				<wsdl-soap:body 
					use="literal" 
					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="QManAdapterService">
    	<wsdl:port name="QManAdapterPort" binding="qman:QManAdapterBinding">
    		<wsdl-soap:address location="http://romagazzarini:8080/qman/services/adapter"/>
    	</wsdl:port>
	</wsdl:service>
</wsdl:definitions>