Archive Content

Please note this page is present for reference only. QMan has been removed and is no longer a released component.

SetResourceProperties

Description

This interface allows a requestor to change the state of a WS-Resource, modifying the values of multiple resource properties.

There are two types of changes that can be done on a resource property :

  • Insert: wherein a new resource property element is inserted into the resource properties document; before of that the property was null and therefore wasn't part of the resource property document;
  • Update: wherein existing resource property element(s) are udpated; that is, the property was already part of the resource property document;

    In order to be fully WSRF compliant, there should be a third type of change : Delete. It will be implemented sooner but keep in mind that at the moment is not supported.

Request

01.	<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
02.		<soap:Header>
03.			<wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">
04.				http://localhost:8080/qman/services/QManWsResource
05.			</wsa:To>
06.     	        <wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">
07.				http://docs.oasis-open.org/wsrf/rpw-2/SetResourceProperties/SetResourcePropertiesRequest
08.			</wsa:Action>
09.     	        <wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">
10.				uuid:0cdb5112-09e0-ac39-06ba-393843f06e42
11.			</wsa:MessageID>
12.			<wsa:From xmlns:wsa="http://www.w3.org/2005/08/addressing">
13.     		        <wsa:Address>
14.					http://www.w3.org/2005/08/addressing/role/anonymous
15.				</wsa:Address>
16.			</wsa:From>
17.			<qman:ResourceId
				xmlns:wsa="http://www.w3.org/2005/08/addressing"
				wsa:IsReferenceParameter="true"
				xmlns:qman="http://amqp.apache.org/qpid/management/qman">
18.				781f4ad7-4c96-4caa-b69d-291461cdb1fc
19.			</qman:ResourceId>
		</soap:Header>
		<soap:Body xmlns:qman="http://amqp.apache.org/qpid/management/qman">
21.			<wsrf-rp:SetResourceProperties xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2">
22.				<wsrf-rp:Insert>
					<qman:Type>
						This is a value for a string property.
					</qman:Type>
23.				</wsrf-rp:Insert>
24.				<wsrf-rp:Update>
					<qman:MgmtPubInterval>
						12
					</qman:MgmtPubInterval>
25.				</wsrf-rp:Update>
			</wsrf-rp:SetResourceProperties>
		</soap:Body>
	</soap:Envelope>

Line(s)

Description

01

The SOAP <Envelope> is the root element in every SOAP message, and contains two child elements, <Header> and <Body>.

02

The SOAP Header will contain all metadata used for identifying the conversation participants (requestor and provider).

03 - 05

Convey the target endpoint also known (in the request phase) as service provider.

06 - 08

Indicate this is a SetResourceProperties request.

09 - 11

Convey a unique identifier associated with the current message. This will be used for request / response messages correlation.

12 - 15

Provide the address of the source endpoint also known (in the request phase) as service requestor.

17 - 19

This indicates the target resource of this request. Specifically the line 18 contains the resource identifier.

20 - 22

The SetResourceProperties request. Change types are specified using nested children.

21 - 23

This is an Insert change type. The property "Type" (specified using the nested child) is null on the target resource and therefore is not yet part
of the resource property document. After that request, that property will be inserted on the property document and will have a value of "This is a value for a string property."

24 - 25

This is an Update change type. The property "MgmtPubInterval" is not null on the target resource and therefore is already part of its property document.
After the request will be processed, that property will have a value of 12.

Response

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
		<soap:Header>
01.			<wsa:To xmlns:wsa="http://www.w3.org/2005/08/addressing">
02.				http://www.w3.org/2005/08/addressing/role/anonymous
03.			</wsa:To>
04.			<wsa:Action xmlns:wsa="http://www.w3.org/2005/08/addressing">
05.				http://docs.oasis-open.org/wsrf/rpw-2/SetResourceProperties/SetResourcePropertiesResponse
06.			</wsa:Action>
07.			<wsa:MessageID xmlns:wsa="http://www.w3.org/2005/08/addressing">
08.				uuid:980617c8-e3a0-ebf1-8f5a-2b43d3d6d416
09.			</wsa:MessageID>
10.			<wsa:RelatesTo RelationshipType="wsa:Reply" xmlns:wsa="http://www.w3.org/2005/08/addressing">
11.				uuid:0cdb5112-09e0-ac39-06ba-393843f06e42
12.			</wsa:RelatesTo>
13.			<wsa:From xmlns:wsa="http://www.w3.org/2005/08/addressing">
14.				<wsa:Address>
15.					http://localhost:8080/qman/services/QManWsResource
16.				</wsa:Address>
17.				<wsa:ReferenceParameters>
					<qman:ResourceId
						xmlns:wsa="http://www.w3.org/2005/08/addressing"
						wsa:IsReferenceParameter="true"
						xmlns:qman="http://amqp.apache.org/qpid/management/qman">
18.						781f4ad7-4c96-4caa-b69d-291461cdb1fc
19.				</qman:ResourceId>
20.            </wsa:ReferenceParameters>
			</wsa:From>
		</soap:Header>
		<soap:Body>
21.			<wsrf-rp:SetResourcePropertyResponse xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2"/>
		</soapBody>
	</soap:Envelope>

Line(s)

Description

01 - 03

Convey the recipient of the response message. Note that this time we are talking about the service requestor; The address matches the <wsa:From> previously found in the corresponding request.

04 - 06

Indicate this is a SetResourceProperties response. This is done as usual using a wsa:Action that is part of WS-Addressing specification.

07 - 09

Convey a unique identifier associated with the current response message.

10 - 12

This element provides the identifier of the correlated (request) message.

13

The <wsa:From> element (part of WS-Addressing specs too) identifies the source endpoint, the originator of this response message.

14 - 16

This is the address of the source service endpoint. As said for lines 01-03 this time this is referred to service provider (the message originator).

17 - 20

As part of wsa:From element, this contains (specifically on line 18) additional information needed for identifying the originator of this message.

21 - 25

This is the SetResourceProperties response element.

Faults

  • ResourceUnknownFault : There's no resource on QMan associated with the given reference information (soap address and identifier).
  • ResourceUnavailableFault : The requested resource is unavailable. This fault should indicate a transient condition. That means a requester might resend the message.
  • InvalidResourcePropertyQNameFault : The name (QName) in the request message doesn't correspond to a property element of the target WS-Resource.
  • SetResourcePropertyRequestFailedFault : Service provider was unable to satisfy the SetResourceProperties request.
  • InvalidModificationFault : The content of the SetResourceProperties request cause the resource properties document to no longer be able to validate.
  • UnableToModifyResourcePropertyFault : One or more properties contained in the SetResourceProperties request are read-only.

Web Services Resource
Web Services Resource Properties

  • No labels