Forum Discussion
Nov 21, 2011
To create a pool with no members, you'll just need to pass in the following parameters
string [] pool_names - array size 1 with the value of the pool name
LBMethod [] lb_methods - array size 1 with value of lb method
IPPortDefinition[][] members - 2-d array with 1st degree of size 1 (for the supplied pool) an the second degree with size 0 (for no members).
This can be done with the following perl code:
@MemberDefA;
push @memberDefAofA, [@memberDefA];
$soapResponse = $Pool->create(
SOAP::Data->name(pool_names => [$sPool]),
SOAP::Data->name(lb_methods => ["LB_METHOD_ROUND_ROBIN"]),
SOAP::Data->name(members => [@memberDefAofA])
);
&checkResponse($soapResponse);
This will result in the following SOAP message (with angle brackets replaced by brackets)
[soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"]
[soap:Body]
[create xmlns="urn:iControl:LocalLB/Pool"]
[pool_names soapenc:arrayType="xsd:string[1]" xsi:type="soapenc:Array"]
[item xsi:type="xsd:string"]foopool[/item]
[/pool_names]
[lb_methods soapenc:arrayType="xsd:string[1]" xsi:type="soapenc:Array"]
[item xsi:type="xsd:string"]LB_METHOD_ROUND_ROBIN[/item]
[/lb_methods]
[members soapenc:arrayType="soapenc:Array[1]" xsi:type="soapenc:Array"]
[item soapenc:arrayType="xsd:anyType[0]" xsi:type="soapenc:Array" /]
[/members]
[/create]
[/soap:Body]
[/soap:Envelope]
Hope this helps...
-Joe