cdocutils.nodes
document
q)q}q(U	nametypesq}q(X   allowed domainsqNX   update load balancer attributesqNX   update ssl termination configqNX
   error pageq	NX   remove nodesq
NX
   list nodesqNX)   the complete user guide to load balancersqNX   list metadataqNX   remove metadataqNX   add virtual ipv6qNX   session persistenceqNX   set custom error pageqNX&   list session persistence configurationqNX$   remove network item from access listqNX    add network items to access listqNX   enable session persistenceqNX   list load balancing algorithmsqNX   list allowed domainsqNX   list load balancersqNX   list load balancing protocolsqNX   list load balancer detailsqNX   list virtual ipsqNX/   updating multiple attributes of a load balancerqNX   monitorsqNX   virtual ipsqNX   content cachingqNX	   protocolsq NX   delete custom error pageq!NX   nodesq"NXL   given an opencloud\loadbalancer\resource\loadbalancer instance and a node idq#NX   delete ssl termination configq$NX   disable connection loggingq%NX'   modifying multiple attributes of a nodeq&NX   update or deleteq'NX   connection loggingq(NX   enable connection loggingq)NX   enable content cachingq*NX   view access listq+NX   create load balancerq,NX   load balancersq-NX   disable session persistenceq.NX   remove load balancerq/NX#   check content caching configurationq0NX   ssl terminationq1NX	   add nodesq2NX   modify metadataq3NX   load balancer serviceq4NX   remove virtual ipsq5NX   check logging configurationq6NX   view node service eventsq7NX   disable content cachingq8NX   prerequisitesq9NX   modify nodesq:NX   view error page contentq;NX&   modifying a single attribute of a nodeq<NX   usage reportsq=NX.   updating a single attribute of a load balancerq>NX   clientq?NX
   algorithmsq@NX#   view current ssl termination configqANX   add metadataqBNX6   given an opencloud\loadbalancer\resource\node instanceqCNX   metadataqDNX   access listsqENX   cloud serversqFNX
   statisticsqGNuUsubstitution_defsqH}qIUparse_messagesqJ]qK(cdocutils.nodes
system_message
qL)qM}qN(U	rawsourceqOU UparentqPcdocutils.nodes
section
qQ)qR}qS(hOU hPhQ)qT}qU(hOU hPhQ)qV}qW(hOU hPhUsourceqXXS   /Users/jamie/projects/php/php-opencloud/doc/services/load-balancer/USERGUIDE.md.rstqYUtagnameqZUsectionq[U
attributesq\}q](Udupnamesq^]Uclassesq_]Ubackrefsq`]Uidsqa]qbU)the-complete-user-guide-to-load-balancersqcaUnamesqd]qehauUlineqfKUdocumentqghUchildrenqh]qi(cdocutils.nodes
title
qj)qk}ql(hOX)   The Complete User Guide to Load BalancersqmhPhVhXhYhZUtitleqnh\}qo(h^]h_]h`]ha]hd]uhfKhghhh]qpcdocutils.nodes
Text
qqX)   The Complete User Guide to Load Balancersqrqs}qt(hOhmhPhkubaubhQ)qu}qv(hOU hPhVhXhYhZh[h\}qw(h^]h_]h`]ha]qxUprerequisitesqyahd]qzh9auhfKhghhh]q{(hj)q|}q}(hOX   Prerequisitesq~hPhuhXhYhZhnh\}q(h^]h_]h`]ha]hd]uhfKhghhh]qhqX   Prerequisitesqq}q(hOh~hPh|ubaubhQ)q}q(hOU hPhuhXhYhZh[h\}q(h^]h_]h`]ha]qUclientqahd]qh?auhfKhghhh]q(hj)q}q(hOX   ClientqhPhhXhYhZhnh\}q(h^]h_]h`]ha]hd]uhfKhghhh]qhqX   Clientqq}q(hOhhPhubaubcdocutils.nodes
paragraph
q)q}q(hOX\   To use the load balancers service, you must first instantiate a
``Rackspace`` client object.hPhhXhYhZU	paragraphqh\}q(h^]h_]h`]ha]hd]uhfK
hghhh]q(hqX@   To use the load balancers service, you must first instantiate a
qq}q(hOX@   To use the load balancers service, you must first instantiate a
hPhubcdocutils.nodes
literal
q)q}q(hOX   ``Rackspace``h\}q(h^]h_]h`]ha]hd]uhPhhh]q hqX	   Rackspaceq”q¢}q£(hOU hPhubahZUliteralq¤ubhqX    client object.q„q¦}q§(hOX    client object.hPhubeubcdocutils.nodes
literal_block
qØ)q©}qŖ(hOXÕ   use OpenCloud\Rackspace;

$client = new Rackspace(Rackspace::US_IDENTITY_ENDPOINT, array(
    'username' => '<YOUR RACKSPACE CLOUD ACCOUNT USERNAME>',
    'apiKey'   => '<YOUR RACKSPACE CLOUD ACCOUNT API KEY>'
));hPhhXhYhZUliteral_blockq«h\}q¬(U	xml:spaceq­Upreserveq®ha]h`]h^]h_]qÆ(Ucodeq°X   phpq±ehd]uhfKhghhh]q²cdocutils.nodes
inline
q³)q“}qµ(hOXÕ   use OpenCloud\Rackspace;

$client = new Rackspace(Rackspace::US_IDENTITY_ENDPOINT, array(
    'username' => '<YOUR RACKSPACE CLOUD ACCOUNT USERNAME>',
    'apiKey'   => '<YOUR RACKSPACE CLOUD ACCOUNT API KEY>'
));h\}q¶(h^]h_]q·Uotherqøah`]ha]hd]uhPh©hh]q¹hqXÕ   use OpenCloud\Rackspace;

$client = new Rackspace(Rackspace::US_IDENTITY_ENDPOINT, array(
    'username' => '<YOUR RACKSPACE CLOUD ACCOUNT USERNAME>',
    'apiKey'   => '<YOUR RACKSPACE CLOUD ACCOUNT API KEY>'
));qŗq»}q¼(hOU hPh“ubahZUinlineq½ubaubeubhQ)q¾}qæ(hOU hPhuhXhYhZh[h\}qĄ(h^]h_]h`]ha]qĮUload-balancer-serviceqĀahd]qĆh4auhfKhghhh]qÄ(hj)qÅ}qĘ(hOX   Load Balancer ServiceqĒhPh¾hXhYhZhnh\}qČ(h^]h_]h`]ha]hd]uhfKhghhh]qÉhqX   Load Balancer ServiceqŹqĖ}qĢ(hOhĒhPhÅubaubh)qĶ}qĪ(hOXM   All operations on load balancers are done via a load balancer service
object.qĻhPh¾hXhYhZhh\}qŠ(h^]h_]h`]ha]hd]uhfKhghhh]qŃhqXM   All operations on load balancers are done via a load balancer service
object.qŅqÓ}qŌ(hOhĻhPhĶubaubhØ)qÕ}qÖ(hOXQ   $loadBalancerService = $client->loadBalancerService('cloudLoadBalancers', 'DFW');hPh¾hXhYhZh«h\}q×(h­h®ha]h`]h^]h_]qŲ(h°X   phpqŁehd]uhfKhghhh]qŚh³)qŪ}qÜ(hOXQ   $loadBalancerService = $client->loadBalancerService('cloudLoadBalancers', 'DFW');h\}qŻ(h^]h_]qŽUotherqßah`]ha]hd]uhPhÕhh]qąhqXQ   $loadBalancerService = $client->loadBalancerService('cloudLoadBalancers', 'DFW');qįqā}qć(hOU hPhŪubahZh½ubaubeubhQ)qä}qå(hOU hPhuhXhYhZh[h\}qę(h^]h_]h`]ha]qēUcloud-serversqčahd]qéhFauhfK!hghhh]qź(hj)qė}qģ(hOX   Cloud ServersqķhPhähXhYhZhnh\}qī(h^]h_]h`]ha]hd]uhfK!hghhh]qļhqX   Cloud Serversqšqń}qņ(hOhķhPhėubaubh)qó}qō(hOX­   Many of the examples in this document use two cloud servers as nodes for
the load balancer. The variables ``$serverOne`` and ``$serverTwo`` refer
to these two cloud servers.hPhähXhYhZhh\}qõ(h^]h_]h`]ha]hd]uhfK#hghhh]qö(hqXj   Many of the examples in this document use two cloud servers as nodes for
the load balancer. The variables q÷qų}qł(hOXj   Many of the examples in this document use two cloud servers as nodes for
the load balancer. The variables hPhóubh)qś}qū(hOX   ``$serverOne``h\}qü(h^]h_]h`]ha]hd]uhPhóhh]qżhqX
   $serverOneqžq’}r   (hOU hPhśubahZh¤ubhqX    and r  r  }r  (hOX    and hPhóubh)r  }r  (hOX   ``$serverTwo``h\}r  (h^]h_]h`]ha]hd]uhPhóhh]r  hqX
   $serverTwor  r	  }r
  (hOU hPj  ubahZh¤ubhqX"    refer
to these two cloud servers.r  r  }r  (hOX"    refer
to these two cloud servers.hPhóubeubeubeubhQ)r  }r  (hOU hPhVhXhYhZh[h\}r  (h^]h_]h`]ha]r  Uload-balancersr  ahd]r  h-auhfK(hghhh]r  (hj)r  }r  (hOX   Load Balancersr  hPj  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfK(hghhh]r  hqX   Load Balancersr  r  }r  (hOj  hPj  ubaubh)r  }r  (hOX²   A **load balancer** is a device that distributes incoming network
traffic amongst multiple back-end systems. These back-end systems are
called the **nodes** of the load balancer.hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfK*hghhh]r   (hqX   A r!  r"  }r#  (hOX   A hPj  ubcdocutils.nodes
strong
r$  )r%  }r&  (hOX   **load balancer**h\}r'  (h^]h_]h`]ha]hd]uhPj  hh]r(  hqX   load balancerr)  r*  }r+  (hOU hPj%  ubahZUstrongr,  ubhqX    is a device that distributes incoming network
traffic amongst multiple back-end systems. These back-end systems are
called the r-  r.  }r/  (hOX    is a device that distributes incoming network
traffic amongst multiple back-end systems. These back-end systems are
called the hPj  ubj$  )r0  }r1  (hOX	   **nodes**h\}r2  (h^]h_]h`]ha]hd]uhPj  hh]r3  hqX   nodesr4  r5  }r6  (hOU hPj0  ubahZj,  ubhqX    of the load balancer.r7  r8  }r9  (hOX    of the load balancer.hPj  ubeubhQ)r:  }r;  (hOU hPj  hXhYhZh[h\}r<  (h^]h_]h`]ha]r=  Ucreate-load-balancerr>  ahd]r?  h,auhfK/hghhh]r@  (hj)rA  }rB  (hOX   Create Load BalancerrC  hPj:  hXhYhZhnh\}rD  (h^]h_]h`]ha]hd]uhfK/hghhh]rE  hqX   Create Load BalancerrF  rG  }rH  (hOjC  hPjA  ubaubhØ)rI  }rJ  (hOXr  $loadBalancer = $loadBalancerService->loadBalancer();

$serverOneNode = $loadBalancer->node();
$serverOneNode->address = $serverOne->addresses->private[0]->addr;
$serverOneNode->port = 8080;
$serverOneNode->condition = 'ENABLED';

$serverTwoNode = $loadBalancer->node();
$serverTwoNode->address = $serverTwo->addresses->private[0]->addr;
$serverTwoNode->port = 8080;
$serverTwoNode->condition = 'ENABLED';

$loadBalancer->addVirtualIp('PUBLIC');
$loadBalancer->create(array(
    'name'     => 'My smart load balancer',
    'port'     => 80,
    'protocol' => 'HTTP',
    'nodes'    => array($serverOneNode, $serverTwoNode)
));hPj:  hXhYhZh«h\}rK  (h­h®ha]h`]h^]h_]rL  (h°X   phprM  ehd]uhfKFhghhh]rN  h³)rO  }rP  (hOXr  $loadBalancer = $loadBalancerService->loadBalancer();

$serverOneNode = $loadBalancer->node();
$serverOneNode->address = $serverOne->addresses->private[0]->addr;
$serverOneNode->port = 8080;
$serverOneNode->condition = 'ENABLED';

$serverTwoNode = $loadBalancer->node();
$serverTwoNode->address = $serverTwo->addresses->private[0]->addr;
$serverTwoNode->port = 8080;
$serverTwoNode->condition = 'ENABLED';

$loadBalancer->addVirtualIp('PUBLIC');
$loadBalancer->create(array(
    'name'     => 'My smart load balancer',
    'port'     => 80,
    'protocol' => 'HTTP',
    'nodes'    => array($serverOneNode, $serverTwoNode)
));h\}rQ  (h^]h_]rR  UotherrS  ah`]ha]hd]uhPjI  hh]rT  hqXr  $loadBalancer = $loadBalancerService->loadBalancer();

$serverOneNode = $loadBalancer->node();
$serverOneNode->address = $serverOne->addresses->private[0]->addr;
$serverOneNode->port = 8080;
$serverOneNode->condition = 'ENABLED';

$serverTwoNode = $loadBalancer->node();
$serverTwoNode->address = $serverTwo->addresses->private[0]->addr;
$serverTwoNode->port = 8080;
$serverTwoNode->condition = 'ENABLED';

$loadBalancer->addVirtualIp('PUBLIC');
$loadBalancer->create(array(
    'name'     => 'My smart load balancer',
    'port'     => 80,
    'protocol' => 'HTTP',
    'nodes'    => array($serverOneNode, $serverTwoNode)
));rU  rV  }rW  (hOU hPjO  ubahZh½ubaubeubhQ)rX  }rY  (hOU hPj  hXhYhZh[h\}rZ  (h^]h_]h`]ha]r[  Ulist-load-balancer-detailsr\  ahd]r]  hauhfKHhghhh]r^  (hj)r_  }r`  (hOX   List Load Balancer Detailsra  hPjX  hXhYhZhnh\}rb  (h^]h_]h`]ha]hd]uhfKHhghhh]rc  hqX   List Load Balancer Detailsrd  re  }rf  (hOja  hPj_  ubaubh)rg  }rh  (hOXB   You can retrieve a single load balancer's details by using its ID.ri  hPjX  hXhYhZhh\}rj  (h^]h_]h`]ha]hd]uhfKJhghhh]rk  hqXB   You can retrieve a single load balancer's details by using its ID.rl  rm  }rn  (hOji  hPjg  ubaubhØ)ro  }rp  (hOX   $loadBalancer = $loadBalancerService->loadBalancer('254889');

/** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/hPjX  hXhYhZh«h\}rq  (h­h®ha]h`]h^]h_]rr  (h°X   phprs  ehd]uhfKQhghhh]rt  h³)ru  }rv  (hOX   $loadBalancer = $loadBalancerService->loadBalancer('254889');

/** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/h\}rw  (h^]h_]rx  Uotherry  ah`]ha]hd]uhPjo  hh]rz  hqX   $loadBalancer = $loadBalancerService->loadBalancer('254889');

/** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/r{  r|  }r}  (hOU hPju  ubahZh½ubaubeubhQ)r~  }r  (hOU hPj  hXhYhZh[h\}r  (h^]h_]h`]ha]r  Ulist-load-balancersr  ahd]r  hauhfKShghhh]r  (hj)r  }r  (hOX   List Load Balancersr  hPj~  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfKShghhh]r  hqX   List Load Balancersr  r  }r  (hOj  hPj  ubaubh)r  }r  (hOX   You can retrieve a list of all your load balancers. An instance of
``OpenCloud\Common\Collection\PaginatedIterator`` is returned.hPj~  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfKUhghhh]r  (hqXC   You can retrieve a list of all your load balancers. An instance of
r  r  }r  (hOXC   You can retrieve a list of all your load balancers. An instance of
hPj  ubh)r  }r  (hOX1   ``OpenCloud\Common\Collection\PaginatedIterator``h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX-   OpenCloud\Common\Collection\PaginatedIteratorr  r  }r  (hOU hPj  ubahZh¤ubhqX    is returned.r  r  }r  (hOX    is returned.hPj  ubeubhØ)r  }r  (hOX“   $loadBalancers = $loadBalancerService->loadBalancerList();
foreach ($loadBalancers as $loadBalancer) {
    /** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/
}hPj~  hXhYhZh«h\}r   (h­h®ha]h`]h^]h_]r”  (h°X   phpr¢  ehd]uhfK^hghhh]r£  h³)r¤  }r„  (hOX“   $loadBalancers = $loadBalancerService->loadBalancerList();
foreach ($loadBalancers as $loadBalancer) {
    /** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/
}h\}r¦  (h^]h_]r§  UotherrØ  ah`]ha]hd]uhPj  hh]r©  hqX“   $loadBalancers = $loadBalancerService->loadBalancerList();
foreach ($loadBalancers as $loadBalancer) {
    /** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/
}rŖ  r«  }r¬  (hOU hPj¤  ubahZh½ubaubeubhQ)r­  }r®  (hOU hPj  hXhYhZh[h\}rÆ  (h^]h_]h`]ha]r°  Uupdate-load-balancer-attributesr±  ahd]r²  hauhfK`hghhh]r³  (hj)r“  }rµ  (hOX   Update Load Balancer Attributesr¶  hPj­  hXhYhZhnh\}r·  (h^]h_]h`]ha]hd]uhfK`hghhh]rø  hqX   Update Load Balancer Attributesr¹  rŗ  }r»  (hOj¶  hPj“  ubaubh)r¼  }r½  (hOXE   You can update one or more of the following load balancer attributes:r¾  hPj­  hXhYhZhh\}ræ  (h^]h_]h`]ha]hd]uhfKbhghhh]rĄ  hqXE   You can update one or more of the following load balancer attributes:rĮ  rĀ  }rĆ  (hOj¾  hPj¼  ubaubcdocutils.nodes
bullet_list
rÄ  )rÅ  }rĘ  (hOU hPj­  hXhYhZUbullet_listrĒ  h\}rČ  (UbulletrÉ  X   -ha]h`]h^]h_]hd]uhfKdhghhh]rŹ  (cdocutils.nodes
list_item
rĖ  )rĢ  }rĶ  (hOX'   ``name``: The name of the load balancerrĪ  hPjÅ  hXhYhZU	list_itemrĻ  h\}rŠ  (h^]h_]h`]ha]hd]uhfNhghhh]rŃ  h)rŅ  }rÓ  (hOjĪ  hPjĢ  hXhYhZhh\}rŌ  (h^]h_]h`]ha]hd]uhfKdhh]rÕ  (h)rÖ  }r×  (hOX   ``name``h\}rŲ  (h^]h_]h`]ha]hd]uhPjŅ  hh]rŁ  hqX   namerŚ  rŪ  }rÜ  (hOU hPjÖ  ubahZh¤ubhqX   : The name of the load balancerrŻ  rŽ  }rß  (hOX   : The name of the load balancerhPjŅ  ubeubaubjĖ  )rą  }rį  (hOX   ``algorithm``: The algorithm used by the load balancer to distribute
traffic amongst its nodes. See also: `Load balancing
algorithms <#algorithms>`__.hPjÅ  hXhYhZjĻ  h\}rā  (h^]h_]h`]ha]hd]uhfNhghhh]rć  h)rä  }rå  (hOX   ``algorithm``: The algorithm used by the load balancer to distribute
traffic amongst its nodes. See also: `Load balancing
algorithms <#algorithms>`__.hPją  hXhYhZhh\}rę  (h^]h_]h`]ha]hd]uhfKehh]rē  (h)rč  }ré  (hOX   ``algorithm``h\}rź  (h^]h_]h`]ha]hd]uhPjä  hh]rė  hqX	   algorithmrģ  rķ  }rī  (hOU hPjč  ubahZh¤ubhqX]   : The algorithm used by the load balancer to distribute
traffic amongst its nodes. See also: rļ  rš  }rń  (hOX]   : The algorithm used by the load balancer to distribute
traffic amongst its nodes. See also: hPjä  ubcdocutils.nodes
reference
rņ  )ró  }rō  (hOX+   `Load balancing
algorithms <#algorithms>`__h\}rõ  (UnameX   Load balancing algorithmsUrefurirö  X   #algorithmsha]h`]h^]h_]hd]uhPjä  hh]r÷  hqX   Load balancing
algorithmsrų  rł  }rś  (hOU hPjó  ubahZU	referencerū  ubhqX   .rü  }rż  (hOX   .hPjä  ubeubaubjĖ  )rž  }r’  (hOXx   ``protocol``: The network protocol used by traffic coming in to the
load balancer. See also: `Protocols <#protocols>`__.hPjÅ  hXhYhZjĻ  h\}r   (h^]h_]h`]ha]hd]uhfNhghhh]r  h)r  }r  (hOXx   ``protocol``: The network protocol used by traffic coming in to the
load balancer. See also: `Protocols <#protocols>`__.hPjž  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfKhhh]r  (h)r  }r  (hOX   ``protocol``h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r	  hqX   protocolr
  r  }r  (hOU hPj  ubahZh¤ubhqXQ   : The network protocol used by traffic coming in to the
load balancer. See also: r  r  }r  (hOXQ   : The network protocol used by traffic coming in to the
load balancer. See also: hPj  ubjņ  )r  }r  (hOX   `Protocols <#protocols>`__h\}r  (UnameX	   Protocolsjö  X
   #protocolsha]h`]h^]h_]hd]uhPj  hh]r  hqX	   Protocolsr  r  }r  (hOU hPj  ubahZjū  ubhqX   .r  }r  (hOX   .hPj  ubeubaubjĖ  )r  }r  (hOXS   ``port``: The network port on which the load balancer listens for
incoming traffic.hPjÅ  hXhYhZjĻ  h\}r  (h^]h_]h`]ha]hd]uhfNhghhh]r  h)r  }r  (hOXS   ``port``: The network port on which the load balancer listens for
incoming traffic.hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfKjhh]r   (h)r!  }r"  (hOX   ``port``h\}r#  (h^]h_]h`]ha]hd]uhPj  hh]r$  hqX   portr%  r&  }r'  (hOU hPj!  ubahZh¤ubhqXK   : The network port on which the load balancer listens for
incoming traffic.r(  r)  }r*  (hOXK   : The network port on which the load balancer listens for
incoming traffic.hPj  ubeubaubjĖ  )r+  }r,  (hOXL   ``halfClosed``: Enable or Disable Half-Closed support for the load
balancer.hPjÅ  hXhYhZjĻ  h\}r-  (h^]h_]h`]ha]hd]uhfNhghhh]r.  h)r/  }r0  (hOXL   ``halfClosed``: Enable or Disable Half-Closed support for the load
balancer.hPj+  hXhYhZhh\}r1  (h^]h_]h`]ha]hd]uhfKlhh]r2  (h)r3  }r4  (hOX   ``halfClosed``h\}r5  (h^]h_]h`]ha]hd]uhPj/  hh]r6  hqX
   halfClosedr7  r8  }r9  (hOU hPj3  ubahZh¤ubhqX>   : Enable or Disable Half-Closed support for the load
balancer.r:  r;  }r<  (hOX>   : Enable or Disable Half-Closed support for the load
balancer.hPj/  ubeubaubjĖ  )r=  }r>  (hOXS   ``timeout``: The timeout value for the load balancer to communicate
with its nodes.hPjÅ  hXhYhZjĻ  h\}r?  (h^]h_]h`]ha]hd]uhfNhghhh]r@  h)rA  }rB  (hOXS   ``timeout``: The timeout value for the load balancer to communicate
with its nodes.hPj=  hXhYhZhh\}rC  (h^]h_]h`]ha]hd]uhfKnhh]rD  (h)rE  }rF  (hOX   ``timeout``h\}rG  (h^]h_]h`]ha]hd]uhPjA  hh]rH  hqX   timeoutrI  rJ  }rK  (hOU hPjE  ubahZh¤ubhqXH   : The timeout value for the load balancer to communicate
with its nodes.rL  rM  }rN  (hOXH   : The timeout value for the load balancer to communicate
with its nodes.hPjA  ubeubaubjĖ  )rO  }rP  (hOX3  ``httpsRedirect``: Enable or disable HTTP to HTTPS redirection for
the load balancer. When enabled, any HTTP request will return status
code 301 (Moved Permanently), and the requestor will be redirected to
the requested URL via the HTTPS protocol on port 443. For example,
http://example.com/page.html would be redirected to https://
example.com/page.html. Only available for HTTPS protocol (``port`` =
443), or HTTP Protocol with a properly configured SSL Termination
(\`secureTrafficOnly=true, securePort=443). See also: `SSL
Termination <#ssl-termination>`__.
hPjÅ  hXhYhZjĻ  h\}rQ  (h^]h_]h`]ha]hd]uhfNhghhh]rR  h)rS  }rT  (hOX2  ``httpsRedirect``: Enable or disable HTTP to HTTPS redirection for
the load balancer. When enabled, any HTTP request will return status
code 301 (Moved Permanently), and the requestor will be redirected to
the requested URL via the HTTPS protocol on port 443. For example,
http://example.com/page.html would be redirected to https://
example.com/page.html. Only available for HTTPS protocol (``port`` =
443), or HTTP Protocol with a properly configured SSL Termination
(\`secureTrafficOnly=true, securePort=443). See also: `SSL
Termination <#ssl-termination>`__.hPjO  hXhYhZhh\}rU  (h^]h_]h`]ha]hd]uhfKphh]rV  (h)rW  }rX  (hOX   ``httpsRedirect``h\}rY  (h^]h_]h`]ha]hd]uhPjS  hh]rZ  hqX   httpsRedirectr[  r\  }r]  (hOU hPjW  ubahZh¤ubhqX   : Enable or disable HTTP to HTTPS redirection for
the load balancer. When enabled, any HTTP request will return status
code 301 (Moved Permanently), and the requestor will be redirected to
the requested URL via the HTTPS protocol on port 443. For example,
r^  r_  }r`  (hOX   : Enable or disable HTTP to HTTPS redirection for
the load balancer. When enabled, any HTTP request will return status
code 301 (Moved Permanently), and the requestor will be redirected to
the requested URL via the HTTPS protocol on port 443. For example,
hPjS  ubjņ  )ra  }rb  (hOX   http://example.com/page.htmlrc  h\}rd  (Urefurijc  ha]h`]h^]h_]hd]uhPjS  hh]re  hqX   http://example.com/page.htmlrf  rg  }rh  (hOU hPja  ubahZjū  ubhqX    would be redirected to ri  rj  }rk  (hOX    would be redirected to hPjS  ubjņ  )rl  }rm  (hOX   https://rn  h\}ro  (Urefurijn  ha]h`]h^]h_]hd]uhPjS  hh]rp  hqX   https://rq  rr  }rs  (hOU hPjl  ubahZjū  ubhqX;   
example.com/page.html. Only available for HTTPS protocol (rt  ru  }rv  (hOX;   
example.com/page.html. Only available for HTTPS protocol (hPjS  ubh)rw  }rx  (hOX   ``port``h\}ry  (h^]h_]h`]ha]hd]uhPjS  hh]rz  hqX   portr{  r|  }r}  (hOU hPjw  ubahZh¤ubhqXz    =
443), or HTTP Protocol with a properly configured SSL Termination
(`secureTrafficOnly=true, securePort=443). See also: r~  r  }r  (hOX{    =
443), or HTTP Protocol with a properly configured SSL Termination
(\`secureTrafficOnly=true, securePort=443). See also: hPjS  ubjņ  )r  }r  (hOX&   `SSL
Termination <#ssl-termination>`__h\}r  (UnameX   SSL Terminationjö  X   #ssl-terminationha]h`]h^]h_]hd]uhPjS  hh]r  hqX   SSL
Terminationr  r  }r  (hOU hPj  ubahZjū  ubhqX   .r  }r  (hOX   .hPjS  ubeubaubeubhQ)r  }r  (hOU hPj­  hXhYhZh[h\}r  (h^]h_]h`]ha]r  U.updating-a-single-attribute-of-a-load-balancerr  ahd]r  h>auhfK{hghhh]r  (hj)r  }r  (hOX.   Updating a single attribute of a load balancerr  hPj  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfK{hghhh]r  hqX.   Updating a single attribute of a load balancerr  r  }r  (hOj  hPj  ubaubhØ)r  }r  (hOX9   $loadBalancer->update(array(
    'name' => 'New name'
));hPj  hXhYhZh«h\}r  (h­h®ha]h`]h^]h_]r  (h°X   phpr  ehd]uhfKhghhh]r  h³)r  }r   (hOX9   $loadBalancer->update(array(
    'name' => 'New name'
));h\}r”  (h^]h_]r¢  Uotherr£  ah`]ha]hd]uhPj  hh]r¤  hqX9   $loadBalancer->update(array(
    'name' => 'New name'
));r„  r¦  }r§  (hOU hPj  ubahZh½ubaubeubhQ)rØ  }r©  (hOU hPj­  hXhYhZh[h\}rŖ  (h^]h_]h`]ha]r«  U/updating-multiple-attributes-of-a-load-balancerr¬  ahd]r­  hauhfKhghhh]r®  (hj)rÆ  }r°  (hOX/   Updating multiple attributes of a load balancerr±  hPjØ  hXhYhZhnh\}r²  (h^]h_]h`]ha]hd]uhfKhghhh]r³  hqX/   Updating multiple attributes of a load balancerr“  rµ  }r¶  (hOj±  hPjÆ  ubaubhØ)r·  }rø  (hOX`   $loadBalancer->update(array(
    'name'      => 'New name',
    'algorithm' => 'ROUND_ROBIN'
));hPjØ  hXhYhZh«h\}r¹  (h­h®ha]h`]h^]h_]rŗ  (h°X   phpr»  ehd]uhfKhghhh]r¼  h³)r½  }r¾  (hOX`   $loadBalancer->update(array(
    'name'      => 'New name',
    'algorithm' => 'ROUND_ROBIN'
));h\}ræ  (h^]h_]rĄ  UotherrĮ  ah`]ha]hd]uhPj·  hh]rĀ  hqX`   $loadBalancer->update(array(
    'name'      => 'New name',
    'algorithm' => 'ROUND_ROBIN'
));rĆ  rÄ  }rÅ  (hOU hPj½  ubahZh½ubaubeubeubhQ)rĘ  }rĒ  (hOU hPj  hXhYhZh[h\}rČ  (h^]h_]h`]ha]rÉ  Uremove-load-balancerrŹ  ahd]rĖ  h/auhfKhghhh]rĢ  (hj)rĶ  }rĪ  (hOX   Remove Load BalancerrĻ  hPjĘ  hXhYhZhnh\}rŠ  (h^]h_]h`]ha]hd]uhfKhghhh]rŃ  hqX   Remove Load BalancerrŅ  rÓ  }rŌ  (hOjĻ  hPjĶ  ubaubh)rÕ  }rÖ  (hOXH   When you no longer have a need for the load balancer, you can remove it.r×  hPjĘ  hXhYhZhh\}rŲ  (h^]h_]h`]ha]hd]uhfKhghhh]rŁ  hqXH   When you no longer have a need for the load balancer, you can remove it.rŚ  rŪ  }rÜ  (hOj×  hPjÕ  ubaubhØ)rŻ  }rŽ  (hOX   $loadBalancer->delete();hPjĘ  hXhYhZh«h\}rß  (h­h®ha]h`]h^]h_]rą  (h°X   phprį  ehd]uhfKhghhh]rā  h³)rć  }rä  (hOX   $loadBalancer->delete();h\}rå  (h^]h_]rę  Uotherrē  ah`]ha]hd]uhPjŻ  hh]rč  hqX   $loadBalancer->delete();ré  rź  }rė  (hOU hPjć  ubahZh½ubaubeubeubhThQ)rģ  }rķ  (hOU hPhVhXhYhZh[h\}rī  (h^]h_]h`]ha]rļ  Uvirtual-ipsrš  ahd]rń  hauhfM+hghhh]rņ  (hj)ró  }rō  (hOX   Virtual IPsrõ  hPjģ  hXhYhZhnh\}rö  (h^]h_]h`]ha]hd]uhfM+hghhh]r÷  hqX   Virtual IPsrų  rł  }rś  (hOjõ  hPjó  ubaubh)rū  }rü  (hOX$  A **virtual IP (VIP)** makes a load balancer accessible by clients. The
load balancing service supports either a public VIP address
(``PUBLIC``), routable on the public Internet, or a ServiceNet VIP
address (``SERVICENET``), routable only within the region in which the
load balancer resides.hPjģ  hXhYhZhh\}rż  (h^]h_]h`]ha]hd]uhfM-hghhh]rž  (hqX   A r’  r   }r  (hOX   A hPjū  ubj$  )r  }r  (hOX   **virtual IP (VIP)**h\}r  (h^]h_]h`]ha]hd]uhPjū  hh]r  hqX   virtual IP (VIP)r  r  }r  (hOU hPj  ubahZj,  ubhqXo    makes a load balancer accessible by clients. The
load balancing service supports either a public VIP address
(r	  r
  }r  (hOXo    makes a load balancer accessible by clients. The
load balancing service supports either a public VIP address
(hPjū  ubh)r  }r  (hOX
   ``PUBLIC``h\}r  (h^]h_]h`]ha]hd]uhPjū  hh]r  hqX   PUBLICr  r  }r  (hOU hPj  ubahZh¤ubhqXA   ), routable on the public Internet, or a ServiceNet VIP
address (r  r  }r  (hOXA   ), routable on the public Internet, or a ServiceNet VIP
address (hPjū  ubh)r  }r  (hOX   ``SERVICENET``h\}r  (h^]h_]h`]ha]hd]uhPjū  hh]r  hqX
   SERVICENETr  r  }r  (hOU hPj  ubahZh¤ubhqXF   ), routable only within the region in which the
load balancer resides.r  r  }r  (hOXF   ), routable only within the region in which the
load balancer resides.hPjū  ubeubhQ)r   }r!  (hOU hPjģ  hXhYhZh[h\}r"  (h^]h_]h`]ha]r#  Ulist-virtual-ipsr$  ahd]r%  hauhfM4hghhh]r&  (hj)r'  }r(  (hOX   List Virtual IPsr)  hPj   hXhYhZhnh\}r*  (h^]h_]h`]ha]hd]uhfM4hghhh]r+  hqX   List Virtual IPsr,  r-  }r.  (hOj)  hPj'  ubaubh)r/  }r0  (hOX   You can list the VIPs associated with a load balancer. An instance of
``OpenCloud\Common\Collection\PaginatedIterator`` is returned.hPj   hXhYhZhh\}r1  (h^]h_]h`]ha]hd]uhfM6hghhh]r2  (hqXF   You can list the VIPs associated with a load balancer. An instance of
r3  r4  }r5  (hOXF   You can list the VIPs associated with a load balancer. An instance of
hPj/  ubh)r6  }r7  (hOX1   ``OpenCloud\Common\Collection\PaginatedIterator``h\}r8  (h^]h_]h`]ha]hd]uhPj/  hh]r9  hqX-   OpenCloud\Common\Collection\PaginatedIteratorr:  r;  }r<  (hOU hPj6  ubahZh¤ubhqX    is returned.r=  r>  }r?  (hOX    is returned.hPj/  ubeubhØ)r@  }rA  (hOX   $vips = $loadBalancer->virtualIpList();
foreach ($vips as $vip) {
    /** @var $vip of OpenCloud\LoadBalancer\Resource\VirtualIp **/
}hPj   hXhYhZh«h\}rB  (h­h®ha]h`]h^]h_]rC  (h°X   phprD  ehd]uhfM?hghhh]rE  h³)rF  }rG  (hOX   $vips = $loadBalancer->virtualIpList();
foreach ($vips as $vip) {
    /** @var $vip of OpenCloud\LoadBalancer\Resource\VirtualIp **/
}h\}rH  (h^]h_]rI  UotherrJ  ah`]ha]hd]uhPj@  hh]rK  hqX   $vips = $loadBalancer->virtualIpList();
foreach ($vips as $vip) {
    /** @var $vip of OpenCloud\LoadBalancer\Resource\VirtualIp **/
}rL  rM  }rN  (hOU hPjF  ubahZh½ubaubeubhQ)rO  }rP  (hOU hPjģ  hXhYhZh[h\}rQ  (h^]h_]h`]ha]rR  Uadd-virtual-ipv6rS  ahd]rT  hauhfMAhghhh]rU  (hj)rV  }rW  (hOX   Add Virtual IPv6rX  hPjO  hXhYhZhnh\}rY  (h^]h_]h`]ha]hd]uhfMAhghhh]rZ  hqX   Add Virtual IPv6r[  r\  }r]  (hOjX  hPjV  ubaubh)r^  }r_  (hOX4   You can add additional IPv6 VIPs to a load balancer.r`  hPjO  hXhYhZhh\}ra  (h^]h_]h`]ha]hd]uhfMChghhh]rb  hqX4   You can add additional IPv6 VIPs to a load balancer.rc  rd  }re  (hOj`  hPj^  ubaubhØ)rf  }rg  (hOXX   use OpenCloud\LoadBalancer\Enum\IpType;

$loadBalancer->addVirtualIp(IpType::PUBLIC, 6);hPjO  hXhYhZh«h\}rh  (h­h®ha]h`]h^]h_]ri  (h°X   phprj  ehd]uhfMJhghhh]rk  h³)rl  }rm  (hOXX   use OpenCloud\LoadBalancer\Enum\IpType;

$loadBalancer->addVirtualIp(IpType::PUBLIC, 6);h\}rn  (h^]h_]ro  Uotherrp  ah`]ha]hd]uhPjf  hh]rq  hqXX   use OpenCloud\LoadBalancer\Enum\IpType;

$loadBalancer->addVirtualIp(IpType::PUBLIC, 6);rr  rs  }rt  (hOU hPjl  ubahZh½ubaubh)ru  }rv  (hOXM   The ``addVirtualIp`` method, as shown above, accepts the following
arguments:hPjO  hXhYhZhh\}rw  (h^]h_]h`]ha]hd]uhfMKhghhh]rx  (hqX   The ry  rz  }r{  (hOX   The hPju  ubh)r|  }r}  (hOX   ``addVirtualIp``h\}r~  (h^]h_]h`]ha]hd]uhPju  hh]r  hqX   addVirtualIpr  r  }r  (hOU hPj|  ubahZh¤ubhqX9    method, as shown above, accepts the following
arguments:r  r  }r  (hOX9    method, as shown above, accepts the following
arguments:hPju  ubeubcdocutils.nodes
line_block
r  )r  }r  (hOU hPjO  hXhYhZU
line_blockr  h\}r  (h^]h_]h`]ha]hd]uhfMNhghhh]r  (cdocutils.nodes
line
r  )r  }r  (hOXE   Position \| Description \| Data type \| Required? \| Default value \|Uindentr  K hPj  hXhYhZhfh\}r  (h^]h_]h`]ha]hd]uhfMNhghhh]r  hqX@   Position | Description | Data type | Required? | Default value |r  r  }r  (hOXE   Position \| Description \| Data type \| Required? \| Default value \|hPj  ubaubj  )r  }r  (hOXD   ----------- \| --------------- \| -------------- \|-------------- \|j  K hPj  hXhYhZhfh\}r  (h^]h_]h`]ha]hd]uhfMOhghhh]r  hqX@   ----------- | --------------- | -------------- |-------------- |r  r  }r  (hOXD   ----------- \| --------------- \| -------------- \|-------------- \|hPj  ubaubeubh)r  }r  (hOXg   ----------------- \|
| Ā 1 \| Type of VIP:
| Ā 2 \| IP version: Must be ``6`` \| Integer \| Yes \| - \|hPjO  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMPhghhh]r  (hqXE   ----------------- |
| Ā 1 | Type of VIP:
| Ā 2 | IP version: Must be r   r”  }r¢  (hOXH   ----------------- \|
| Ā 1 \| Type of VIP:
| Ā 2 \| IP version: Must be hPj  ubh)r£  }r¤  (hOX   ``6``h\}r„  (h^]h_]h`]ha]hd]uhPj  hh]r¦  hqX   6r§  }rØ  (hOU hPj£  ubahZh¤ubhqX    | Integer | Yes | - |r©  rŖ  }r«  (hOX    \| Integer \| Yes \| - \|hPj  ubeubeubhQ)r¬  }r­  (hOU hPjģ  hXhYhZh[h\}r®  (h^]h_]h`]ha]rÆ  Uremove-virtual-ipsr°  ahd]r±  h5auhfMUhghhh]r²  (hj)r³  }r“  (hOX   Remove Virtual IPsrµ  hPj¬  hXhYhZhnh\}r¶  (h^]h_]h`]ha]hd]uhfMUhghhh]r·  hqX   Remove Virtual IPsrø  r¹  }rŗ  (hOjµ  hPj³  ubaubh)r»  }r¼  (hOX*   You can remove a VIP from a load balancer.r½  hPj¬  hXhYhZhh\}r¾  (h^]h_]h`]ha]hd]uhfMWhghhh]ræ  hqX*   You can remove a VIP from a load balancer.rĄ  rĮ  }rĀ  (hOj½  hPj»  ubaubhØ)rĆ  }rÄ  (hOX   $vip->remove();hPj¬  hXhYhZh«h\}rÅ  (h­h®ha]h`]h^]h_]rĘ  (h°X   phprĒ  ehd]uhfM\hghhh]rČ  h³)rÉ  }rŹ  (hOX   $vip->remove();h\}rĖ  (h^]h_]rĢ  UotherrĶ  ah`]ha]hd]uhPjĆ  hh]rĪ  hqX   $vip->remove();rĻ  rŠ  }rŃ  (hOU hPjÉ  ubahZh½ubaubh)rŅ  }rÓ  (hOX³   Please note that a load balancer must have at least one VIP associated
with it. If you try to remove a load balancer's last VIP, a
``ClientErrorResponseException`` will be thrown.hPj¬  hXhYhZhh\}rŌ  (h^]h_]h`]ha]hd]uhfM]hghhh]rÕ  (hqX   Please note that a load balancer must have at least one VIP associated
with it. If you try to remove a load balancer's last VIP, a
rÖ  r×  }rŲ  (hOX   Please note that a load balancer must have at least one VIP associated
with it. If you try to remove a load balancer's last VIP, a
hPjŅ  ubh)rŁ  }rŚ  (hOX    ``ClientErrorResponseException``h\}rŪ  (h^]h_]h`]ha]hd]uhPjŅ  hh]rÜ  hqX   ClientErrorResponseExceptionrŻ  rŽ  }rß  (hOU hPjŁ  ubahZh¤ubhqX    will be thrown.rą  rį  }rā  (hOX    will be thrown.hPjŅ  ubeubeubeubhQ)rć  }rä  (hOU hPhVhXhYhZh[h\}rå  (h^]h_]h`]ha]rę  U
algorithmsrē  ahd]rč  h@auhfMbhghhh]ré  (hj)rź  }rė  (hOX
   Algorithmsrģ  hPjć  hXhYhZhnh\}rķ  (h^]h_]h`]ha]hd]uhfMbhghhh]rī  hqX
   Algorithmsrļ  rš  }rń  (hOjģ  hPjź  ubaubh)rņ  }ró  (hOXp   Load balancers use an **algorithm** to determine how incoming traffic is
distributed amongst the back-end nodes.hPjć  hXhYhZhh\}rō  (h^]h_]h`]ha]hd]uhfMdhghhh]rõ  (hqX   Load balancers use an rö  r÷  }rų  (hOX   Load balancers use an hPjņ  ubj$  )rł  }rś  (hOX   **algorithm**h\}rū  (h^]h_]h`]ha]hd]uhPjņ  hh]rü  hqX	   algorithmrż  rž  }r’  (hOU hPjł  ubahZj,  ubhqXM    to determine how incoming traffic is
distributed amongst the back-end nodes.r   r  }r  (hOXM    to determine how incoming traffic is
distributed amongst the back-end nodes.hPjņ  ubeubhQ)r  }r  (hOU hPjć  hXhYhZh[h\}r  (h^]h_]h`]ha]r  Ulist-load-balancing-algorithmsr  ahd]r  hauhfMhhghhh]r	  (hj)r
  }r  (hOX   List Load Balancing Algorithmsr  hPj  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfMhhghhh]r  hqX   List Load Balancing Algorithmsr  r  }r  (hOj  hPj
  ubaubh)r  }r  (hOXØ   You can list all supported load balancing algorithms using a load
balancer service object. An instance of
``OpenCloud\Common\Collection\PaginatedIterator`` is returned.hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMjhghhh]r  (hqXj   You can list all supported load balancing algorithms using a load
balancer service object. An instance of
r  r  }r  (hOXj   You can list all supported load balancing algorithms using a load
balancer service object. An instance of
hPj  ubh)r  }r  (hOX1   ``OpenCloud\Common\Collection\PaginatedIterator``h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX-   OpenCloud\Common\Collection\PaginatedIteratorr  r  }r  (hOU hPj  ubahZh¤ubhqX    is returned.r   r!  }r"  (hOX    is returned.hPj  ubeubhØ)r#  }r$  (hOX¢   $algorithms = $loadBalancerService->algorithmList();
foreach ($algorithms as $algorithm) {
    /** @var $algorithm OpenCloud\LoadBalancer\Resource\Algorithm **/
}hPj  hXhYhZh«h\}r%  (h­h®ha]h`]h^]h_]r&  (h°X   phpr'  ehd]uhfMthghhh]r(  h³)r)  }r*  (hOX¢   $algorithms = $loadBalancerService->algorithmList();
foreach ($algorithms as $algorithm) {
    /** @var $algorithm OpenCloud\LoadBalancer\Resource\Algorithm **/
}h\}r+  (h^]h_]r,  Uotherr-  ah`]ha]hd]uhPj#  hh]r.  hqX¢   $algorithms = $loadBalancerService->algorithmList();
foreach ($algorithms as $algorithm) {
    /** @var $algorithm OpenCloud\LoadBalancer\Resource\Algorithm **/
}r/  r0  }r1  (hOU hPj)  ubahZh½ubaubeubeubhQ)r2  }r3  (hOU hPhVhXhYhZh[h\}r4  (h^]h_]h`]ha]r5  U	protocolsr6  ahd]r7  h auhfMvhghhh]r8  (hj)r9  }r:  (hOX	   Protocolsr;  hPj2  hXhYhZhnh\}r<  (h^]h_]h`]ha]hd]uhfMvhghhh]r=  hqX	   Protocolsr>  r?  }r@  (hOj;  hPj9  ubaubh)rA  }rB  (hOX°   When a load balancer is created a network protocol must be specified.
This network protocol should be based on the network protocol of the
back-end service being load balanced.rC  hPj2  hXhYhZhh\}rD  (h^]h_]h`]ha]hd]uhfMxhghhh]rE  hqX°   When a load balancer is created a network protocol must be specified.
This network protocol should be based on the network protocol of the
back-end service being load balanced.rF  rG  }rH  (hOjC  hPjA  ubaubhQ)rI  }rJ  (hOU hPj2  hXhYhZh[h\}rK  (h^]h_]h`]ha]rL  Ulist-load-balancing-protocolsrM  ahd]rN  hauhfM}hghhh]rO  (hj)rP  }rQ  (hOX   List Load Balancing ProtocolsrR  hPjI  hXhYhZhnh\}rS  (h^]h_]h`]ha]hd]uhfM}hghhh]rT  hqX   List Load Balancing ProtocolsrU  rV  }rW  (hOjR  hPjP  ubaubh)rX  }rY  (hOX    You can list all supported network protocols using a load balancer
service object. An instance of
``OpenCloud\Common\Collection\PaginatedIterator`` is returned.hPjI  hXhYhZhh\}rZ  (h^]h_]h`]ha]hd]uhfMhghhh]r[  (hqXb   You can list all supported network protocols using a load balancer
service object. An instance of
r\  r]  }r^  (hOXb   You can list all supported network protocols using a load balancer
service object. An instance of
hPjX  ubh)r_  }r`  (hOX1   ``OpenCloud\Common\Collection\PaginatedIterator``h\}ra  (h^]h_]h`]ha]hd]uhPjX  hh]rb  hqX-   OpenCloud\Common\Collection\PaginatedIteratorrc  rd  }re  (hOU hPj_  ubahZh¤ubhqX    is returned.rf  rg  }rh  (hOX    is returned.hPjX  ubeubhØ)ri  }rj  (hOX   $protocols = $loadBalancerService->protocolList();
foreach ($protocols as $protocol) {
    /** @var $protocol OpenCloud\LoadBalancer\Resource\Protocol **/
}hPjI  hXhYhZh«h\}rk  (h­h®ha]h`]h^]h_]rl  (h°X   phprm  ehd]uhfMhghhh]rn  h³)ro  }rp  (hOX   $protocols = $loadBalancerService->protocolList();
foreach ($protocols as $protocol) {
    /** @var $protocol OpenCloud\LoadBalancer\Resource\Protocol **/
}h\}rq  (h^]h_]rr  Uotherrs  ah`]ha]hd]uhPji  hh]rt  hqX   $protocols = $loadBalancerService->protocolList();
foreach ($protocols as $protocol) {
    /** @var $protocol OpenCloud\LoadBalancer\Resource\Protocol **/
}ru  rv  }rw  (hOU hPjo  ubahZh½ubaubeubeubhQ)rx  }ry  (hOU hPhVhXhYhZh[h\}rz  (h^]h_]h`]ha]r{  Usession-persistencer|  ahd]r}  hauhfMhghhh]r~  (hj)r  }r  (hOX   Session Persistencer  hPjx  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfMhghhh]r  hqX   Session Persistencer  r  }r  (hOj  hPj  ubaubh)r  }r  (hOX  **Session persistence** is a feature of the load balancing service that
forces multiple requests, of the same protocol, from clients to be
directed to the same node. This is common with many web applications
that do not inherently share application state between back-end servers.hPjx  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMhghhh]r  (j$  )r  }r  (hOX   **Session persistence**h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX   Session persistencer  r  }r  (hOU hPj  ubahZj,  ubhqX   is a feature of the load balancing service that
forces multiple requests, of the same protocol, from clients to be
directed to the same node. This is common with many web applications
that do not inherently share application state between back-end servers.r  r  }r  (hOX   is a feature of the load balancing service that
forces multiple requests, of the same protocol, from clients to be
directed to the same node. This is common with many web applications
that do not inherently share application state between back-end servers.hPj  ubeubh)r  }r  (hOX6   There are two types (or modes) of session persistence:r  hPjx  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMhghhh]r  hqX6   There are two types (or modes) of session persistence:r  r  }r  (hOj  hPj  ubaubcdocutils.nodes
table
r  )r  }r  (hOU hPjx  hXhYhZUtabler   h\}r”  (h^]h_]h`]ha]hd]uhfNhghhh]r¢  cdocutils.nodes
tgroup
r£  )r¤  }r„  (hOU h\}r¦  (ha]h`]h^]h_]hd]UcolsKuhPj  hh]r§  (cdocutils.nodes
colspec
rØ  )r©  }rŖ  (hOU h\}r«  (ha]h`]h^]h_]hd]UcolwidthKuhPj¤  hh]hZUcolspecr¬  ubjØ  )r­  }r®  (hOU h\}rÆ  (ha]h`]h^]h_]hd]UcolwidthKćuhPj¤  hh]hZj¬  ubcdocutils.nodes
thead
r°  )r±  }r²  (hOU h\}r³  (h^]h_]h`]ha]hd]uhPj¤  hh]r“  cdocutils.nodes
row
rµ  )r¶  }r·  (hOU h\}rø  (h^]h_]h`]ha]hd]uhPj±  hh]r¹  (cdocutils.nodes
entry
rŗ  )r»  }r¼  (hOU h\}r½  (h^]h_]h`]ha]hd]uhPj¶  hh]r¾  h)ræ  }rĄ  (hOX   NamerĮ  hPj»  hXhYhZhh\}rĀ  (h^]h_]h`]ha]hd]uhfMhh]rĆ  hqX   NamerÄ  rÅ  }rĘ  (hOjĮ  hPjæ  ubaubahZUentryrĒ  ubjŗ  )rČ  }rÉ  (hOU h\}rŹ  (h^]h_]h`]ha]hd]uhPj¶  hh]rĖ  h)rĢ  }rĶ  (hOX   DescriptionrĪ  hPjČ  hXhYhZhh\}rĻ  (h^]h_]h`]ha]hd]uhfMhh]rŠ  hqX   DescriptionrŃ  rŅ  }rÓ  (hOjĪ  hPjĢ  ubaubahZjĒ  ubehZUrowrŌ  ubahZUtheadrÕ  ubcdocutils.nodes
tbody
rÖ  )r×  }rŲ  (hOU h\}rŁ  (h^]h_]h`]ha]hd]uhPj¤  hh]rŚ  (jµ  )rŪ  }rÜ  (hOU h\}rŻ  (h^]h_]h`]ha]hd]uhPj×  hh]rŽ  (jŗ  )rß  }rą  (hOU h\}rį  (h^]h_]h`]ha]hd]uhPjŪ  hh]rā  h)rć  }rä  (hOX   ``HTTP_COOKIE``rå  hPjß  hXhYhZhh\}rę  (h^]h_]h`]ha]hd]uhfMhh]rē  h)rč  }ré  (hOjå  h\}rź  (h^]h_]h`]ha]hd]uhPjć  hh]rė  hqX   HTTP_COOKIErģ  rķ  }rī  (hOU hPjč  ubahZh¤ubaubahZjĒ  ubjŗ  )rļ  }rš  (hOU h\}rń  (h^]h_]h`]ha]hd]uhPjŪ  hh]rņ  h)ró  }rō  (hOX£   A session persistence mechanism that inserts an HTTP cookie and is used to determine the destination back-end node. This is supported for HTTP load balancing only.rõ  hPjļ  hXhYhZhh\}rö  (h^]h_]h`]ha]hd]uhfMhh]r÷  hqX£   A session persistence mechanism that inserts an HTTP cookie and is used to determine the destination back-end node. This is supported for HTTP load balancing only.rų  rł  }rś  (hOjõ  hPjó  ubaubahZjĒ  ubehZjŌ  ubjµ  )rū  }rü  (hOU h\}rż  (h^]h_]h`]ha]hd]uhPj×  hh]rž  (jŗ  )r’  }r   (hOU h\}r  (h^]h_]h`]ha]hd]uhPjū  hh]r  h)r  }r  (hOX   ``SOURCE_IP``r  hPj’  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMhh]r  h)r  }r	  (hOj  h\}r
  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX	   SOURCE_IPr  r  }r  (hOU hPj  ubahZh¤ubaubahZjĒ  ubjŗ  )r  }r  (hOU h\}r  (h^]h_]h`]ha]hd]uhPjū  hh]r  h)r  }r  (hOXß   A session persistence mechanism that will keep track of the source IP address that is mapped and is able to determine the destination back-end node. This is supported for HTTPS pass-through and non-HTTP load balancing only.r  hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMhh]r  hqXß   A session persistence mechanism that will keep track of the source IP address that is mapped and is able to determine the destination back-end node. This is supported for HTTPS pass-through and non-HTTP load balancing only.r  r  }r  (hOj  hPj  ubaubahZjĒ  ubehZjŌ  ubehZUtbodyr  ubehZUtgroupr  ubaubhQ)r  }r  (hOU hPjx  hXhYhZh[h\}r  (h^]h_]h`]ha]r   U&list-session-persistence-configurationr!  ahd]r"  hauhfMhghhh]r#  (hj)r$  }r%  (hOX&   List Session Persistence Configurationr&  hPj  hXhYhZhnh\}r'  (h^]h_]h`]ha]hd]uhfMhghhh]r(  hqX&   List Session Persistence Configurationr)  r*  }r+  (hOj&  hPj$  ubaubhØ)r,  }r-  (hOXĆ   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistenceType = $sessionPersistence->persistenceType;

/** @var $sessionPersistenceType null | 'HTTP_COOKIE' | 'SOURCE_IP' **/hPj  hXhYhZh«h\}r.  (h­h®ha]h`]h^]h_]r/  (h°X   phpr0  ehd]uhfM„hghhh]r1  h³)r2  }r3  (hOXĆ   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistenceType = $sessionPersistence->persistenceType;

/** @var $sessionPersistenceType null | 'HTTP_COOKIE' | 'SOURCE_IP' **/h\}r4  (h^]h_]r5  Uotherr6  ah`]ha]hd]uhPj,  hh]r7  hqXĆ   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistenceType = $sessionPersistence->persistenceType;

/** @var $sessionPersistenceType null | 'HTTP_COOKIE' | 'SOURCE_IP' **/r8  r9  }r:  (hOU hPj2  ubahZh½ubaubh)r;  }r<  (hOX   In the example above:r=  hPj  hXhYhZhh\}r>  (h^]h_]h`]ha]hd]uhfM¦hghhh]r?  hqX   In the example above:r@  rA  }rB  (hOj=  hPj;  ubaubjÄ  )rC  }rD  (hOU hPj  hXhYhZjĒ  h\}rE  (jÉ  X   -ha]h`]h^]h_]hd]uhfMØhghhh]rF  (jĖ  )rG  }rH  (hOX   If session persistence is enabled, the value of
``$sessionPersistenceType`` is the type of session persistence:
either ``HTTP_COOKIE`` or ``SOURCE_IP``.hPjC  hXhYhZjĻ  h\}rI  (h^]h_]h`]ha]hd]uhfNhghhh]rJ  h)rK  }rL  (hOX   If session persistence is enabled, the value of
``$sessionPersistenceType`` is the type of session persistence:
either ``HTTP_COOKIE`` or ``SOURCE_IP``.hPjG  hXhYhZhh\}rM  (h^]h_]h`]ha]hd]uhfMØhh]rN  (hqX0   If session persistence is enabled, the value of
rO  rP  }rQ  (hOX0   If session persistence is enabled, the value of
hPjK  ubh)rR  }rS  (hOX   ``$sessionPersistenceType``h\}rT  (h^]h_]h`]ha]hd]uhPjK  hh]rU  hqX   $sessionPersistenceTyperV  rW  }rX  (hOU hPjR  ubahZh¤ubhqX,    is the type of session persistence:
either rY  rZ  }r[  (hOX,    is the type of session persistence:
either hPjK  ubh)r\  }r]  (hOX   ``HTTP_COOKIE``h\}r^  (h^]h_]h`]ha]hd]uhPjK  hh]r_  hqX   HTTP_COOKIEr`  ra  }rb  (hOU hPj\  ubahZh¤ubhqX    or rc  rd  }re  (hOX    or hPjK  ubh)rf  }rg  (hOX   ``SOURCE_IP``h\}rh  (h^]h_]h`]ha]hd]uhPjK  hh]ri  hqX	   SOURCE_IPrj  rk  }rl  (hOU hPjf  ubahZh¤ubhqX   .rm  }rn  (hOX   .hPjK  ubeubaubjĖ  )ro  }rp  (hOXZ   If session persistence is disabled, the value of
``$sessionPersistenceType`` is ``null``.
hPjC  hXhYhZjĻ  h\}rq  (h^]h_]h`]ha]hd]uhfNhghhh]rr  h)rs  }rt  (hOXY   If session persistence is disabled, the value of
``$sessionPersistenceType`` is ``null``.hPjo  hXhYhZhh\}ru  (h^]h_]h`]ha]hd]uhfM«hh]rv  (hqX1   If session persistence is disabled, the value of
rw  rx  }ry  (hOX1   If session persistence is disabled, the value of
hPjs  ubh)rz  }r{  (hOX   ``$sessionPersistenceType``h\}r|  (h^]h_]h`]ha]hd]uhPjs  hh]r}  hqX   $sessionPersistenceTyper~  r  }r  (hOU hPjz  ubahZh¤ubhqX    is r  r  }r  (hOX    is hPjs  ubh)r  }r  (hOX   ``null``h\}r  (h^]h_]h`]ha]hd]uhPjs  hh]r  hqX   nullr  r  }r  (hOU hPj  ubahZh¤ubhqX   .r  }r  (hOX   .hPjs  ubeubaubeubeubhQ)r  }r  (hOU hPjx  hXhYhZh[h\}r  (h^]h_]h`]ha]r  Uenable-session-persistencer  ahd]r  hauhfMÆhghhh]r  (hj)r  }r  (hOX   Enable Session Persistencer  hPj  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfMÆhghhh]r  hqX   Enable Session Persistencer  r  }r  (hOj  hPj  ubaubhØ)r  }r  (hOX   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistence->update(array(
    'persistenceType' => 'HTTP_COOKIE'
));hPj  hXhYhZh«h\}r  (h­h®ha]h`]h^]h_]r  (h°X   phpr   ehd]uhfM·hghhh]r”  h³)r¢  }r£  (hOX   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistence->update(array(
    'persistenceType' => 'HTTP_COOKIE'
));h\}r¤  (h^]h_]r„  Uotherr¦  ah`]ha]hd]uhPj  hh]r§  hqX   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistence->update(array(
    'persistenceType' => 'HTTP_COOKIE'
));rØ  r©  }rŖ  (hOU hPj¢  ubahZh½ubaubeubhQ)r«  }r¬  (hOU hPjx  hXhYhZh[h\}r­  (h^]h_]h`]ha]r®  Udisable-session-persistencerÆ  ahd]r°  h.auhfM¹hghhh]r±  (hj)r²  }r³  (hOX   Disable Session Persistencer“  hPj«  hXhYhZhnh\}rµ  (h^]h_]h`]ha]hd]uhfM¹hghhh]r¶  hqX   Disable Session Persistencer·  rø  }r¹  (hOj“  hPj²  ubaubhØ)rŗ  }r»  (hOXY   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistence->delete();hPj«  hXhYhZh«h\}r¼  (h­h®ha]h`]h^]h_]r½  (h°X   phpr¾  ehd]uhfMæhghhh]ræ  h³)rĄ  }rĮ  (hOXY   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistence->delete();h\}rĀ  (h^]h_]rĆ  UotherrÄ  ah`]ha]hd]uhPjŗ  hh]rÅ  hqXY   $sessionPersistence = $loadBalancer->sessionPersistence();
$sessionPersistence->delete();rĘ  rĒ  }rČ  (hOU hPjĄ  ubahZh½ubaubeubeubhQ)rÉ  }rŹ  (hOU hPhVhXhYhZh[h\}rĖ  (h^]h_]h`]ha]rĢ  Uconnection-loggingrĶ  ahd]rĪ  h(auhfMĮhghhh]rĻ  (hj)rŠ  }rŃ  (hOX   Connection LoggingrŅ  hPjÉ  hXhYhZhnh\}rÓ  (h^]h_]h`]ha]hd]uhfMĮhghhh]rŌ  hqX   Connection LoggingrÕ  rÖ  }r×  (hOjŅ  hPjŠ  ubaubh)rŲ  }rŁ  (hOXč   The **connection logging** feature allows logs to be delivered to a
Cloud Files account every hour. For HTTP-based protocol traffic, these
are Apache-style access logs. For all other traffic, this is connection
and transfer logging.hPjÉ  hXhYhZhh\}rŚ  (h^]h_]h`]ha]hd]uhfMĆhghhh]rŪ  (hqX   The rÜ  rŻ  }rŽ  (hOX   The hPjŲ  ubj$  )rß  }rą  (hOX   **connection logging**h\}rį  (h^]h_]h`]ha]hd]uhPjŲ  hh]rā  hqX   connection loggingrć  rä  }rå  (hOU hPjß  ubahZj,  ubhqXĪ    feature allows logs to be delivered to a
Cloud Files account every hour. For HTTP-based protocol traffic, these
are Apache-style access logs. For all other traffic, this is connection
and transfer logging.rę  rē  }rč  (hOXĪ    feature allows logs to be delivered to a
Cloud Files account every hour. For HTTP-based protocol traffic, these
are Apache-style access logs. For all other traffic, this is connection
and transfer logging.hPjŲ  ubeubhQ)ré  }rź  (hOU hPjÉ  hXhYhZh[h\}rė  (h^]h_]h`]ha]rģ  Ucheck-logging-configurationrķ  ahd]rī  h6auhfMÉhghhh]rļ  (hj)rš  }rń  (hOX   Check Logging Configurationrņ  hPjé  hXhYhZhnh\}ró  (h^]h_]h`]ha]hd]uhfMÉhghhh]rō  hqX   Check Logging Configurationrõ  rö  }r÷  (hOjņ  hPjš  ubaubhØ)rų  }rł  (hOXa   /** @var $connectionLogging bool **/

$connectionLogging = $loadBalancer->hasConnectionLogging();hPjé  hXhYhZh«h\}rś  (h­h®ha]h`]h^]h_]rū  (h°X   phprü  ehd]uhfMŠhghhh]rż  h³)rž  }r’  (hOXa   /** @var $connectionLogging bool **/

$connectionLogging = $loadBalancer->hasConnectionLogging();h\}r   (h^]h_]r  Uotherr  ah`]ha]hd]uhPjų  hh]r  hqXa   /** @var $connectionLogging bool **/

$connectionLogging = $loadBalancer->hasConnectionLogging();r  r  }r  (hOU hPjž  ubahZh½ubaubh)r  }r  (hOX   In the example above:r	  hPjé  hXhYhZhh\}r
  (h^]h_]h`]ha]hd]uhfMŃhghhh]r  hqX   In the example above:r  r  }r  (hOj	  hPj  ubaubjÄ  )r  }r  (hOU hPjé  hXhYhZjĒ  h\}r  (jÉ  X   -ha]h`]h^]h_]hd]uhfMÓhghhh]r  (jĖ  )r  }r  (hOXR   If connection logging is enabled, the value of ``$connectionLogging``
is ``true``.hPj  hXhYhZjĻ  h\}r  (h^]h_]h`]ha]hd]uhfNhghhh]r  h)r  }r  (hOXR   If connection logging is enabled, the value of ``$connectionLogging``
is ``true``.hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMÓhh]r  (hqX/   If connection logging is enabled, the value of r  r  }r  (hOX/   If connection logging is enabled, the value of hPj  ubh)r  }r  (hOX   ``$connectionLogging``h\}r   (h^]h_]h`]ha]hd]uhPj  hh]r!  hqX   $connectionLoggingr"  r#  }r$  (hOU hPj  ubahZh¤ubhqX   
is r%  r&  }r'  (hOX   
is hPj  ubh)r(  }r)  (hOX   ``true``h\}r*  (h^]h_]h`]ha]hd]uhPj  hh]r+  hqX   truer,  r-  }r.  (hOU hPj(  ubahZh¤ubhqX   .r/  }r0  (hOX   .hPj  ubeubaubjĖ  )r1  }r2  (hOXU   If connection logging is disabled, the value of
``$connectionLogging`` is ``false``.
hPj  hXhYhZjĻ  h\}r3  (h^]h_]h`]ha]hd]uhfNhghhh]r4  h)r5  }r6  (hOXT   If connection logging is disabled, the value of
``$connectionLogging`` is ``false``.hPj1  hXhYhZhh\}r7  (h^]h_]h`]ha]hd]uhfMÕhh]r8  (hqX0   If connection logging is disabled, the value of
r9  r:  }r;  (hOX0   If connection logging is disabled, the value of
hPj5  ubh)r<  }r=  (hOX   ``$connectionLogging``h\}r>  (h^]h_]h`]ha]hd]uhPj5  hh]r?  hqX   $connectionLoggingr@  rA  }rB  (hOU hPj<  ubahZh¤ubhqX    is rC  rD  }rE  (hOX    is hPj5  ubh)rF  }rG  (hOX	   ``false``h\}rH  (h^]h_]h`]ha]hd]uhPj5  hh]rI  hqX   falserJ  rK  }rL  (hOU hPjF  ubahZh¤ubhqX   .rM  }rN  (hOX   .hPj5  ubeubaubeubeubhQ)rO  }rP  (hOU hPjÉ  hXhYhZh[h\}rQ  (h^]h_]h`]ha]rR  Uenable-connection-loggingrS  ahd]rT  h)auhfMŁhghhh]rU  (hj)rV  }rW  (hOX   Enable Connection LoggingrX  hPjO  hXhYhZhnh\}rY  (h^]h_]h`]ha]hd]uhfMŁhghhh]rZ  hqX   Enable Connection Loggingr[  r\  }r]  (hOjX  hPjV  ubaubhØ)r^  }r_  (hOX-   $loadBalancer->enableConnectionLogging(true);hPjO  hXhYhZh«h\}r`  (h­h®ha]h`]h^]h_]ra  (h°X   phprb  ehd]uhfMŽhghhh]rc  h³)rd  }re  (hOX-   $loadBalancer->enableConnectionLogging(true);h\}rf  (h^]h_]rg  Uotherrh  ah`]ha]hd]uhPj^  hh]ri  hqX-   $loadBalancer->enableConnectionLogging(true);rj  rk  }rl  (hOU hPjd  ubahZh½ubaubeubhQ)rm  }rn  (hOU hPjÉ  hXhYhZh[h\}ro  (h^]h_]h`]ha]rp  Udisable-connection-loggingrq  ahd]rr  h%auhfMąhghhh]rs  (hj)rt  }ru  (hOX   Disable Connection Loggingrv  hPjm  hXhYhZhnh\}rw  (h^]h_]h`]ha]hd]uhfMąhghhh]rx  hqX   Disable Connection Loggingry  rz  }r{  (hOjv  hPjt  ubaubhØ)r|  }r}  (hOX.   $loadBalancer->enableConnectionLogging(false);hPjm  hXhYhZh«h\}r~  (h­h®ha]h`]h^]h_]r  (h°X   phpr  ehd]uhfMåhghhh]r  h³)r  }r  (hOX.   $loadBalancer->enableConnectionLogging(false);h\}r  (h^]h_]r  Uotherr  ah`]ha]hd]uhPj|  hh]r  hqX.   $loadBalancer->enableConnectionLogging(false);r  r  }r  (hOU hPj  ubahZh½ubaubeubeubhQ)r  }r  (hOU hPhVhXhYhZh[h\}r  (h^]h_]h`]ha]r  U
error-pager  ahd]r  h	auhfMēhghhh]r  (hj)r  }r  (hOX
   Error Pager  hPj  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfMēhghhh]r  hqX
   Error Pager  r  }r  (hOj  hPj  ubaubh)r  }r  (hOXū   An **error page** is the html file that is shown to the end user when an
error in the service has been thrown. By default every virtual server is
provided with the default error file. It is also possible to set a
custom error page for a load balancer.hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMéhghhh]r  (hqX   An r  r  }r   (hOX   An hPj  ubj$  )r”  }r¢  (hOX   **error page**h\}r£  (h^]h_]h`]ha]hd]uhPj  hh]r¤  hqX
   error pager„  r¦  }r§  (hOU hPj”  ubahZj,  ubhqXź    is the html file that is shown to the end user when an
error in the service has been thrown. By default every virtual server is
provided with the default error file. It is also possible to set a
custom error page for a load balancer.rØ  r©  }rŖ  (hOXź    is the html file that is shown to the end user when an
error in the service has been thrown. By default every virtual server is
provided with the default error file. It is also possible to set a
custom error page for a load balancer.hPj  ubeubhQ)r«  }r¬  (hOU hPj  hXhYhZh[h\}r­  (h^]h_]h`]ha]r®  Uview-error-page-contentrÆ  ahd]r°  h;auhfMļhghhh]r±  (hj)r²  }r³  (hOX   View Error Page Contentr“  hPj«  hXhYhZhnh\}rµ  (h^]h_]h`]ha]hd]uhfMļhghhh]r¶  hqX   View Error Page Contentr·  rø  }r¹  (hOj“  hPj²  ubaubhØ)rŗ  }r»  (hOXx   $errorPage = $loadBalancer->errorPage();
$errorPageContent = $errorPage->content;

/** @var $errorPageContent string **/hPj«  hXhYhZh«h\}r¼  (h­h®ha]h`]h^]h_]r½  (h°X   phpr¾  ehd]uhfM÷hghhh]ræ  h³)rĄ  }rĮ  (hOXx   $errorPage = $loadBalancer->errorPage();
$errorPageContent = $errorPage->content;

/** @var $errorPageContent string **/h\}rĀ  (h^]h_]rĆ  UotherrÄ  ah`]ha]hd]uhPjŗ  hh]rÅ  hqXx   $errorPage = $loadBalancer->errorPage();
$errorPageContent = $errorPage->content;

/** @var $errorPageContent string **/rĘ  rĒ  }rČ  (hOU hPjĄ  ubahZh½ubaubh)rÉ  }rŹ  (hOXØ   In the example above the value of ``$errorPageContent`` is the HTML for
that page. This could either be the HTML of the default error page or of
your custom error page.hPj«  hXhYhZhh\}rĖ  (h^]h_]h`]ha]hd]uhfMųhghhh]rĢ  (hqX"   In the example above the value of rĶ  rĪ  }rĻ  (hOX"   In the example above the value of hPjÉ  ubh)rŠ  }rŃ  (hOX   ``$errorPageContent``h\}rŅ  (h^]h_]h`]ha]hd]uhPjÉ  hh]rÓ  hqX   $errorPageContentrŌ  rÕ  }rÖ  (hOU hPjŠ  ubahZh¤ubhqXq    is the HTML for
that page. This could either be the HTML of the default error page or of
your custom error page.r×  rŲ  }rŁ  (hOXq    is the HTML for
that page. This could either be the HTML of the default error page or of
your custom error page.hPjÉ  ubeubeubhQ)rŚ  }rŪ  (hOU hPj  hXhYhZh[h\}rÜ  (h^]h_]h`]ha]rŻ  Uset-custom-error-pagerŽ  ahd]rß  hauhfMżhghhh]rą  (hj)rį  }rā  (hOX   Set Custom Error Pagerć  hPjŚ  hXhYhZhnh\}rä  (h^]h_]h`]ha]hd]uhfMżhghhh]rå  hqX   Set Custom Error Pagerę  rē  }rč  (hOjć  hPjį  ubaubhØ)ré  }rź  (hOX}   $errorPage = $loadBalancer->errorPage();
$errorPage->update(array(
    'content' => '<HTML content of custom error page>'
));hPjŚ  hXhYhZh«h\}rė  (h­h®ha]h`]h^]h_]rģ  (h°X   phprķ  ehd]uhfMhghhh]rī  h³)rļ  }rš  (hOX}   $errorPage = $loadBalancer->errorPage();
$errorPage->update(array(
    'content' => '<HTML content of custom error page>'
));h\}rń  (h^]h_]rņ  Uotherró  ah`]ha]hd]uhPjé  hh]rō  hqX}   $errorPage = $loadBalancer->errorPage();
$errorPage->update(array(
    'content' => '<HTML content of custom error page>'
));rõ  rö  }r÷  (hOU hPjļ  ubahZh½ubaubeubhQ)rų  }rł  (hOU hPj  hXhYhZh[h\}rś  (h^]h_]h`]ha]rū  Udelete-custom-error-pagerü  ahd]rż  h!auhfMhghhh]rž  (hj)r’  }r   (hOX   Delete Custom Error Pager  hPjų  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfMhghhh]r  hqX   Delete Custom Error Pager  r  }r  (hOj  hPj’  ubaubhØ)r  }r  (hOX>   $errorPage = $loadBalancer->errorPage();
$errorPage->delete();hPjų  hXhYhZh«h\}r	  (h­h®ha]h`]h^]h_]r
  (h°X   phpr  ehd]uhfMhghhh]r  h³)r  }r  (hOX>   $errorPage = $loadBalancer->errorPage();
$errorPage->delete();h\}r  (h^]h_]r  Uotherr  ah`]ha]hd]uhPj  hh]r  hqX>   $errorPage = $loadBalancer->errorPage();
$errorPage->delete();r  r  }r  (hOU hPj  ubahZh½ubaubeubeubhQ)r  }r  (hOU hPhVhXhYhZh[h\}r  (h^]h_]h`]ha]r  Uallowed-domainsr  ahd]r  hauhfMhghhh]r  (hj)r  }r  (hOX   Allowed Domainsr  hPj  hXhYhZhnh\}r   (h^]h_]h`]ha]hd]uhfMhghhh]r!  hqX   Allowed Domainsr"  r#  }r$  (hOj  hPj  ubaubh)r%  }r&  (hOXe   **Allowed domains** are a restricted set of domain names that are
allowed to add load balancer nodes.hPj  hXhYhZhh\}r'  (h^]h_]h`]ha]hd]uhfMhghhh]r(  (j$  )r)  }r*  (hOX   **Allowed domains**h\}r+  (h^]h_]h`]ha]hd]uhPj%  hh]r,  hqX   Allowed domainsr-  r.  }r/  (hOU hPj)  ubahZj,  ubhqXR    are a restricted set of domain names that are
allowed to add load balancer nodes.r0  r1  }r2  (hOXR    are a restricted set of domain names that are
allowed to add load balancer nodes.hPj%  ubeubhQ)r3  }r4  (hOU hPj  hXhYhZh[h\}r5  (h^]h_]h`]ha]r6  Ulist-allowed-domainsr7  ahd]r8  hauhfMhghhh]r9  (hj)r:  }r;  (hOX   List Allowed Domainsr<  hPj3  hXhYhZhnh\}r=  (h^]h_]h`]ha]hd]uhfMhghhh]r>  hqX   List Allowed Domainsr?  r@  }rA  (hOj<  hPj:  ubaubh)rB  }rC  (hOX   You can list all allowed domains using a load balancer service object.
An instance of ``OpenCloud\Common\Collection\PaginatedIterator`` is
returned.hPj3  hXhYhZhh\}rD  (h^]h_]h`]ha]hd]uhfMhghhh]rE  (hqXV   You can list all allowed domains using a load balancer service object.
An instance of rF  rG  }rH  (hOXV   You can list all allowed domains using a load balancer service object.
An instance of hPjB  ubh)rI  }rJ  (hOX1   ``OpenCloud\Common\Collection\PaginatedIterator``h\}rK  (h^]h_]h`]ha]hd]uhPjB  hh]rL  hqX-   OpenCloud\Common\Collection\PaginatedIteratorrM  rN  }rO  (hOU hPjI  ubahZh¤ubhqX    is
returned.rP  rQ  }rR  (hOX    is
returned.hPjB  ubeubhØ)rS  }rT  (hOXŗ   $allowedDomains = $loadBalancerService->allowedDomainList();
foreach ($allowedDomains as $allowedDomain) {
    /** @var $allowedDomain OpenCloud\LoadBalancer\Resource\AllowedDomain **/
}hPj3  hXhYhZh«h\}rU  (h­h®ha]h`]h^]h_]rV  (h°X   phprW  ehd]uhfM!hghhh]rX  h³)rY  }rZ  (hOXŗ   $allowedDomains = $loadBalancerService->allowedDomainList();
foreach ($allowedDomains as $allowedDomain) {
    /** @var $allowedDomain OpenCloud\LoadBalancer\Resource\AllowedDomain **/
}h\}r[  (h^]h_]r\  Uotherr]  ah`]ha]hd]uhPjS  hh]r^  hqXŗ   $allowedDomains = $loadBalancerService->allowedDomainList();
foreach ($allowedDomains as $allowedDomain) {
    /** @var $allowedDomain OpenCloud\LoadBalancer\Resource\AllowedDomain **/
}r_  r`  }ra  (hOU hPjY  ubahZh½ubaubeubeubhQ)rb  }rc  (hOU hPhVhXhYhZh[h\}rd  (h^]h_]h`]ha]re  Uaccess-listsrf  ahd]rg  hEauhfM#hghhh]rh  (hj)ri  }rj  (hOX   Access Listsrk  hPjb  hXhYhZhnh\}rl  (h^]h_]h`]ha]hd]uhfM#hghhh]rm  hqX   Access Listsrn  ro  }rp  (hOjk  hPji  ubaubh)rq  }rr  (hOXķ   **Access Lists** allow fine-grained network access to a load balancer's
VIP. Using access lists, network traffic to a load balancer's VIP can be
allowed or denied from a single IP address, multiple IP addresses or
entire network subnets.hPjb  hXhYhZhh\}rs  (h^]h_]h`]ha]hd]uhfM%hghhh]rt  (j$  )ru  }rv  (hOX   **Access Lists**h\}rw  (h^]h_]h`]ha]hd]uhPjq  hh]rx  hqX   Access Listsry  rz  }r{  (hOU hPju  ubahZj,  ubhqXŻ    allow fine-grained network access to a load balancer's
VIP. Using access lists, network traffic to a load balancer's VIP can be
allowed or denied from a single IP address, multiple IP addresses or
entire network subnets.r|  r}  }r~  (hOXŻ    allow fine-grained network access to a load balancer's
VIP. Using access lists, network traffic to a load balancer's VIP can be
allowed or denied from a single IP address, multiple IP addresses or
entire network subnets.hPjq  ubeubh)r  }r  (hOXe   Note that ``ALLOW`` network items will take precedence over ``DENY``
network items in an access list.hPjb  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfM*hghhh]r  (hqX
   Note that r  r  }r  (hOX
   Note that hPj  ubh)r  }r  (hOX	   ``ALLOW``h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX   ALLOWr  r  }r  (hOU hPj  ubahZh¤ubhqX)    network items will take precedence over r  r  }r  (hOX)    network items will take precedence over hPj  ubh)r  }r  (hOX   ``DENY``h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX   DENYr  r  }r  (hOU hPj  ubahZh¤ubhqX!   
network items in an access list.r  r  }r  (hOX!   
network items in an access list.hPj  ubeubh)r  }r  (hOX   To reject traffic from all network items except those with the ``ALLOW``
type, add a ``DENY`` network item with the address of ``0.0.0.0/0``.hPjb  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfM-hghhh]r  (hqX?   To reject traffic from all network items except those with the r  r  }r   (hOX?   To reject traffic from all network items except those with the hPj  ubh)r”  }r¢  (hOX	   ``ALLOW``h\}r£  (h^]h_]h`]ha]hd]uhPj  hh]r¤  hqX   ALLOWr„  r¦  }r§  (hOU hPj”  ubahZh¤ubhqX   
type, add a rØ  r©  }rŖ  (hOX   
type, add a hPj  ubh)r«  }r¬  (hOX   ``DENY``h\}r­  (h^]h_]h`]ha]hd]uhPj  hh]r®  hqX   DENYrÆ  r°  }r±  (hOU hPj«  ubahZh¤ubhqX"    network item with the address of r²  r³  }r“  (hOX"    network item with the address of hPj  ubh)rµ  }r¶  (hOX   ``0.0.0.0/0``h\}r·  (h^]h_]h`]ha]hd]uhPj  hh]rø  hqX	   0.0.0.0/0r¹  rŗ  }r»  (hOU hPjµ  ubahZh¤ubhqX   .r¼  }r½  (hOX   .hPj  ubeubhQ)r¾  }ræ  (hOU hPjb  hXhYhZh[h\}rĄ  (h^]h_]h`]ha]rĮ  Uview-access-listrĀ  ahd]rĆ  h+auhfM1hghhh]rÄ  (hj)rÅ  }rĘ  (hOX   View Access ListrĒ  hPj¾  hXhYhZhnh\}rČ  (h^]h_]h`]ha]hd]uhfM1hghhh]rÉ  hqX   View Access ListrŹ  rĖ  }rĢ  (hOjĒ  hPjÅ  ubaubh)rĶ  }rĪ  (hOXy   You can view a load balancer's access list. An instance of
``OpenCloud\Common\Collection\PaginatedIterator`` is returned.hPj¾  hXhYhZhh\}rĻ  (h^]h_]h`]ha]hd]uhfM3hghhh]rŠ  (hqX;   You can view a load balancer's access list. An instance of
rŃ  rŅ  }rÓ  (hOX;   You can view a load balancer's access list. An instance of
hPjĶ  ubh)rŌ  }rÕ  (hOX1   ``OpenCloud\Common\Collection\PaginatedIterator``h\}rÖ  (h^]h_]h`]ha]hd]uhPjĶ  hh]r×  hqX-   OpenCloud\Common\Collection\PaginatedIteratorrŲ  rŁ  }rŚ  (hOU hPjŌ  ubahZh¤ubhqX    is returned.rŪ  rÜ  }rŻ  (hOX    is returned.hPjĶ  ubeubhØ)rŽ  }rß  (hOX   $accessList = $loadBalancer->accessList();
foreach ($accessList as $networkItem) {
    /** @var $networkItem OpenCloud\LoadBalancer\Resource\Access **/
}hPj¾  hXhYhZh«h\}rą  (h­h®ha]h`]h^]h_]rį  (h°X   phprā  ehd]uhfM<hghhh]rć  h³)rä  }rå  (hOX   $accessList = $loadBalancer->accessList();
foreach ($accessList as $networkItem) {
    /** @var $networkItem OpenCloud\LoadBalancer\Resource\Access **/
}h\}rę  (h^]h_]rē  Uotherrč  ah`]ha]hd]uhPjŽ  hh]ré  hqX   $accessList = $loadBalancer->accessList();
foreach ($accessList as $networkItem) {
    /** @var $networkItem OpenCloud\LoadBalancer\Resource\Access **/
}rź  rė  }rģ  (hOU hPjä  ubahZh½ubaubeubhQ)rķ  }rī  (hOU hPjb  hXhYhZh[h\}rļ  (h^]h_]h`]ha]rš  U add-network-items-to-access-listrń  ahd]rņ  hauhfM>hghhh]ró  (hj)rō  }rõ  (hOX    Add Network Items To Access Liströ  hPjķ  hXhYhZhnh\}r÷  (h^]h_]h`]ha]hd]uhfM>hghhh]rų  hqX    Add Network Items To Access Listrł  rś  }rū  (hOjö  hPjō  ubaubh)rü  }rż  (hOXG   You can add network items to a load balancer's access list very easily:rž  hPjķ  hXhYhZhh\}r’  (h^]h_]h`]ha]hd]uhfM@hghhh]r   hqXG   You can add network items to a load balancer's access list very easily:r  r  }r  (hOjž  hPjü  ubaubhØ)r  }r  (hOXć   $loadBalancer->createAccessList(array(
    (object) array(
        'type'    => 'ALLOW',
        'address' => '206.160.165.1/24'
    ),
    (object) array(
        'type'    => 'DENY',
        'address' => '0.0.0.0/0'
    )
));hPjķ  hXhYhZh«h\}r  (h­h®ha]h`]h^]h_]r  (h°X   phpr  ehd]uhfMNhghhh]r	  h³)r
  }r  (hOXć   $loadBalancer->createAccessList(array(
    (object) array(
        'type'    => 'ALLOW',
        'address' => '206.160.165.1/24'
    ),
    (object) array(
        'type'    => 'DENY',
        'address' => '0.0.0.0/0'
    )
));h\}r  (h^]h_]r  Uotherr  ah`]ha]hd]uhPj  hh]r  hqXć   $loadBalancer->createAccessList(array(
    (object) array(
        'type'    => 'ALLOW',
        'address' => '206.160.165.1/24'
    ),
    (object) array(
        'type'    => 'DENY',
        'address' => '0.0.0.0/0'
    )
));r  r  }r  (hOU hPj
  ubahZh½ubaubh)r  }r  (hOXy   In the above example, we allowed access for 1 IP address, and used the
"0.0.0.0" wildcard to blacklist all other traffic.r  hPjķ  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMOhghhh]r  hqXy   In the above example, we allowed access for 1 IP address, and used the
"0.0.0.0" wildcard to blacklist all other traffic.r  r  }r  (hOj  hPj  ubaubeubhQ)r  }r  (hOU hPjb  hXhYhZh[h\}r  (h^]h_]h`]ha]r  U$remove-network-item-from-access-listr  ahd]r   hauhfMShghhh]r!  (hj)r"  }r#  (hOX$   Remove Network Item From Access Listr$  hPj  hXhYhZhnh\}r%  (h^]h_]h`]ha]hd]uhfMShghhh]r&  hqX$   Remove Network Item From Access Listr'  r(  }r)  (hOj$  hPj"  ubaubh)r*  }r+  (hOX@   You an remove a network item from a load balancer's access list.r,  hPj  hXhYhZhh\}r-  (h^]h_]h`]ha]hd]uhfMUhghhh]r.  hqX@   You an remove a network item from a load balancer's access list.r/  r0  }r1  (hOj,  hPj*  ubaubhØ)r2  }r3  (hOX   $networkItem->delete();hPj  hXhYhZh«h\}r4  (h­h®ha]h`]h^]h_]r5  (h°X   phpr6  ehd]uhfMZhghhh]r7  h³)r8  }r9  (hOX   $networkItem->delete();h\}r:  (h^]h_]r;  Uotherr<  ah`]ha]hd]uhPj2  hh]r=  hqX   $networkItem->delete();r>  r?  }r@  (hOU hPj8  ubahZh½ubaubeubeubhQ)rA  }rB  (hOU hPhVhXhYhZh[h\}rC  (h^]h_]h`]ha]rD  Ucontent-cachingrE  ahd]rF  hauhfM\hghhh]rG  (hj)rH  }rI  (hOX   Content CachingrJ  hPjA  hXhYhZhnh\}rK  (h^]h_]h`]ha]hd]uhfM\hghhh]rL  hqX   Content CachingrM  rN  }rO  (hOjJ  hPjH  ubaubh)rP  }rQ  (hOX9  When **content caching** is enabled on a load balancer,
recently-accessed files are stored on the load balancer for easy
retrieval by web clients. Requests to the load balancer for these files
are serviced by the load balancer itself, which reduces load off its
back-end nodes and improves response times as well.hPjA  hXhYhZhh\}rR  (h^]h_]h`]ha]hd]uhfM^hghhh]rS  (hqX   When rT  rU  }rV  (hOX   When hPjP  ubj$  )rW  }rX  (hOX   **content caching**h\}rY  (h^]h_]h`]ha]hd]uhPjP  hh]rZ  hqX   content cachingr[  r\  }r]  (hOU hPjW  ubahZj,  ubhqX!   is enabled on a load balancer,
recently-accessed files are stored on the load balancer for easy
retrieval by web clients. Requests to the load balancer for these files
are serviced by the load balancer itself, which reduces load off its
back-end nodes and improves response times as well.r^  r_  }r`  (hOX!   is enabled on a load balancer,
recently-accessed files are stored on the load balancer for easy
retrieval by web clients. Requests to the load balancer for these files
are serviced by the load balancer itself, which reduces load off its
back-end nodes and improves response times as well.hPjP  ubeubhQ)ra  }rb  (hOU hPjA  hXhYhZh[h\}rc  (h^]h_]h`]ha]rd  U#check-content-caching-configurationre  ahd]rf  h0auhfMehghhh]rg  (hj)rh  }ri  (hOX#   Check Content Caching Configurationrj  hPja  hXhYhZhnh\}rk  (h^]h_]h`]ha]hd]uhfMehghhh]rl  hqX#   Check Content Caching Configurationrm  rn  }ro  (hOjj  hPjh  ubaubhØ)rp  }rq  (hOXX   /** @var $contentCaching bool **/

$contentCaching = $loadBalancer->hasContentCaching();hPja  hXhYhZh«h\}rr  (h­h®ha]h`]h^]h_]rs  (h°X   phprt  ehd]uhfMlhghhh]ru  h³)rv  }rw  (hOXX   /** @var $contentCaching bool **/

$contentCaching = $loadBalancer->hasContentCaching();h\}rx  (h^]h_]ry  Uotherrz  ah`]ha]hd]uhPjp  hh]r{  hqXX   /** @var $contentCaching bool **/

$contentCaching = $loadBalancer->hasContentCaching();r|  r}  }r~  (hOU hPjv  ubahZh½ubaubh)r  }r  (hOX   In the example above:r  hPja  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMmhghhh]r  hqX   In the example above:r  r  }r  (hOj  hPj  ubaubjÄ  )r  }r  (hOU hPja  hXhYhZjĒ  h\}r  (jÉ  X   -ha]h`]h^]h_]hd]uhfMohghhh]r  (jĖ  )r  }r  (hOXL   If content caching is enabled, the value of ``$contentCaching`` is
``true``.hPj  hXhYhZjĻ  h\}r  (h^]h_]h`]ha]hd]uhfNhghhh]r  h)r  }r  (hOXL   If content caching is enabled, the value of ``$contentCaching`` is
``true``.hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMohh]r  (hqX,   If content caching is enabled, the value of r  r  }r  (hOX,   If content caching is enabled, the value of hPj  ubh)r  }r  (hOX   ``$contentCaching``h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX   $contentCachingr  r  }r  (hOU hPj  ubahZh¤ubhqX    is
r  r  }r  (hOX    is
hPj  ubh)r   }r”  (hOX   ``true``h\}r¢  (h^]h_]h`]ha]hd]uhPj  hh]r£  hqX   truer¤  r„  }r¦  (hOU hPj   ubahZh¤ubhqX   .r§  }rØ  (hOX   .hPj  ubeubaubjĖ  )r©  }rŖ  (hOXO   If content caching is disabled, the value of ``$contentCaching`` is
``false``.
hPj  hXhYhZjĻ  h\}r«  (h^]h_]h`]ha]hd]uhfNhghhh]r¬  h)r­  }r®  (hOXN   If content caching is disabled, the value of ``$contentCaching`` is
``false``.hPj©  hXhYhZhh\}rÆ  (h^]h_]h`]ha]hd]uhfMqhh]r°  (hqX-   If content caching is disabled, the value of r±  r²  }r³  (hOX-   If content caching is disabled, the value of hPj­  ubh)r“  }rµ  (hOX   ``$contentCaching``h\}r¶  (h^]h_]h`]ha]hd]uhPj­  hh]r·  hqX   $contentCachingrø  r¹  }rŗ  (hOU hPj“  ubahZh¤ubhqX    is
r»  r¼  }r½  (hOX    is
hPj­  ubh)r¾  }ræ  (hOX	   ``false``h\}rĄ  (h^]h_]h`]ha]hd]uhPj­  hh]rĮ  hqX   falserĀ  rĆ  }rÄ  (hOU hPj¾  ubahZh¤ubhqX   .rÅ  }rĘ  (hOX   .hPj­  ubeubaubeubeubhQ)rĒ  }rČ  (hOU hPjA  hXhYhZh[h\}rÉ  (h^]h_]h`]ha]rŹ  Uenable-content-cachingrĖ  ahd]rĢ  h*auhfMuhghhh]rĶ  (hj)rĪ  }rĻ  (hOX   Enable Content CachingrŠ  hPjĒ  hXhYhZhnh\}rŃ  (h^]h_]h`]ha]hd]uhfMuhghhh]rŅ  hqX   Enable Content CachingrÓ  rŌ  }rÕ  (hOjŠ  hPjĪ  ubaubhØ)rÖ  }r×  (hOX*   $loadBalancer->enableContentCaching(true);hPjĒ  hXhYhZh«h\}rŲ  (h­h®ha]h`]h^]h_]rŁ  (h°X   phprŚ  ehd]uhfMzhghhh]rŪ  h³)rÜ  }rŻ  (hOX*   $loadBalancer->enableContentCaching(true);h\}rŽ  (h^]h_]rß  Uotherrą  ah`]ha]hd]uhPjÖ  hh]rį  hqX*   $loadBalancer->enableContentCaching(true);rā  rć  }rä  (hOU hPjÜ  ubahZh½ubaubeubhQ)rå  }rę  (hOU hPjA  hXhYhZh[h\}rē  (h^]h_]h`]ha]rč  Udisable-content-cachingré  ahd]rź  h8auhfM|hghhh]rė  (hj)rģ  }rķ  (hOX   Disable Content Cachingrī  hPjå  hXhYhZhnh\}rļ  (h^]h_]h`]ha]hd]uhfM|hghhh]rš  hqX   Disable Content Cachingrń  rņ  }ró  (hOjī  hPjģ  ubaubhØ)rō  }rõ  (hOX+   $loadBalancer->enableContentCaching(false);hPjå  hXhYhZh«h\}rö  (h­h®ha]h`]h^]h_]r÷  (h°X   phprų  ehd]uhfMhghhh]rł  h³)rś  }rū  (hOX+   $loadBalancer->enableContentCaching(false);h\}rü  (h^]h_]rż  Uotherrž  ah`]ha]hd]uhPjō  hh]r’  hqX+   $loadBalancer->enableContentCaching(false);r 	  r	  }r	  (hOU hPjś  ubahZh½ubaubeubeubhQ)r	  }r	  (hOU hPhVhXhYhZh[h\}r	  (h^]h_]h`]ha]r	  Ussl-terminationr	  ahd]r	  h1auhfMhghhh]r		  (hj)r
	  }r	  (hOX   SSL Terminationr	  hPj	  hXhYhZhnh\}r	  (h^]h_]h`]ha]hd]uhfMhghhh]r	  hqX   SSL Terminationr	  r	  }r	  (hOj	  hPj
	  ubaubh)r	  }r	  (hOX  The SSL Termination feature allows a load balancer user to terminate SSL
traffic at the load balancer layer versus at the web server layer. A
user may choose to configure SSL Termination using a key and an SSL
certificate or an (Intermediate) SSL certificate.r	  hPj	  hXhYhZhh\}r	  (h^]h_]h`]ha]hd]uhfMhghhh]r	  hqX  The SSL Termination feature allows a load balancer user to terminate SSL
traffic at the load balancer layer versus at the web server layer. A
user may choose to configure SSL Termination using a key and an SSL
certificate or an (Intermediate) SSL certificate.r	  r	  }r	  (hOj	  hPj	  ubaubh)r	  }r	  (hOXņ  When SSL Termination is configured on a load balancer, a secure shadow
server is created that listens only for secure traffic on a
user-specified port. This shadow server is only visible to and
manageable by the system. Existing or updated attributes on a load
balancer with SSL Termination will also apply to its shadow server. For
example, if Connection Logging is enabled on an SSL load balancer, it
will also be enabled on the shadow server and Cloud Files logs will
contain log files for both.r	  hPj	  hXhYhZhh\}r	  (h^]h_]h`]ha]hd]uhfMhghhh]r	  hqXņ  When SSL Termination is configured on a load balancer, a secure shadow
server is created that listens only for secure traffic on a
user-specified port. This shadow server is only visible to and
manageable by the system. Existing or updated attributes on a load
balancer with SSL Termination will also apply to its shadow server. For
example, if Connection Logging is enabled on an SSL load balancer, it
will also be enabled on the shadow server and Cloud Files logs will
contain log files for both.r	  r 	  }r!	  (hOj	  hPj	  ubaubhQ)r"	  }r#	  (hOU hPj	  hXhYhZh[h\}r$	  (h^]h_]h`]ha]r%	  U#view-current-ssl-termination-configr&	  ahd]r'	  hAauhfMhghhh]r(	  (hj)r)	  }r*	  (hOX#   View current SSL termination configr+	  hPj"	  hXhYhZhnh\}r,	  (h^]h_]h`]ha]hd]uhfMhghhh]r-	  hqX#   View current SSL termination configr.	  r/	  }r0	  (hOj+	  hPj)	  ubaubhØ)r1	  }r2	  (hOXu   /** @var $sslConfig OpenCloud\LoadBalancer\Resource\SSLTermination **/

$sslConfig = $loadBalancer->SSLTermination();hPj"	  hXhYhZh«h\}r3	  (h­h®ha]h`]h^]h_]r4	  (h°X   phpr5	  ehd]uhfMhghhh]r6	  h³)r7	  }r8	  (hOXu   /** @var $sslConfig OpenCloud\LoadBalancer\Resource\SSLTermination **/

$sslConfig = $loadBalancer->SSLTermination();h\}r9	  (h^]h_]r:	  Uotherr;	  ah`]ha]hd]uhPj1	  hh]r<	  hqXu   /** @var $sslConfig OpenCloud\LoadBalancer\Resource\SSLTermination **/

$sslConfig = $loadBalancer->SSLTermination();r=	  r>	  }r?	  (hOU hPj7	  ubahZh½ubaubeubhQ)r@	  }rA	  (hOU hPj	  hXhYhZh[h\}rB	  (h^]h_]h`]ha]rC	  Uupdate-ssl-termination-configrD	  ahd]rE	  hauhfMhghhh]rF	  (hj)rG	  }rH	  (hOX   Update SSL termination configrI	  hPj@	  hXhYhZhnh\}rJ	  (h^]h_]h`]ha]hd]uhfMhghhh]rK	  hqX   Update SSL termination configrL	  rM	  }rN	  (hOjI	  hPjG	  ubaubhØ)rO	  }rP	  (hOX   $sslConfig->update(array(
    'enabled'     => true,
    'securePort'  => 443,
    'privateKey'  => $key,
    'certificate' => $cert
));hPj@	  hXhYhZh«h\}rQ	  (h­h®ha]h`]h^]h_]rR	  (h°X   phprS	  ehd]uhfM§hghhh]rT	  h³)rU	  }rV	  (hOX   $sslConfig->update(array(
    'enabled'     => true,
    'securePort'  => 443,
    'privateKey'  => $key,
    'certificate' => $cert
));h\}rW	  (h^]h_]rX	  UotherrY	  ah`]ha]hd]uhPjO	  hh]rZ	  hqX   $sslConfig->update(array(
    'enabled'     => true,
    'securePort'  => 443,
    'privateKey'  => $key,
    'certificate' => $cert
));r[	  r\	  }r]	  (hOU hPjU	  ubahZh½ubaubh)r^	  }r_	  (hOXŚ   For a full list, with explanations, of required and optional attributes,
please consult the `official
documentation <http://docs.rackspace.com/loadbalancers/api/v1.0/clb-devguide/content/SSLTermination-d1e2479.html>`__hPj@	  hXhYhZhh\}r`	  (h^]h_]h`]ha]hd]uhfMØhghhh]ra	  (hqX\   For a full list, with explanations, of required and optional attributes,
please consult the rb	  rc	  }rd	  (hOX\   For a full list, with explanations, of required and optional attributes,
please consult the hPj^	  ubjņ  )re	  }rf	  (hOX~   `official
documentation <http://docs.rackspace.com/loadbalancers/api/v1.0/clb-devguide/content/SSLTermination-d1e2479.html>`__h\}rg	  (UnameX   official documentationjö  Xa   http://docs.rackspace.com/loadbalancers/api/v1.0/clb-devguide/content/SSLTermination-d1e2479.htmlha]h`]h^]h_]hd]uhPj^	  hh]rh	  hqX   official
documentationri	  rj	  }rk	  (hOU hPje	  ubahZjū  ubeubeubhQ)rl	  }rm	  (hOU hPj	  hXhYhZh[h\}rn	  (h^]h_]h`]ha]ro	  Udelete-ssl-termination-configrp	  ahd]rq	  h$auhfM­hghhh]rr	  (hj)rs	  }rt	  (hOX   Delete SSL termination configru	  hPjl	  hXhYhZhnh\}rv	  (h^]h_]h`]ha]hd]uhfM­hghhh]rw	  hqX   Delete SSL termination configrx	  ry	  }rz	  (hOju	  hPjs	  ubaubhØ)r{	  }r|	  (hOX   $sslConfig->delete();hPjl	  hXhYhZh«h\}r}	  (h­h®ha]h`]h^]h_]r~	  (h°X   phpr	  ehd]uhfM²hghhh]r	  h³)r	  }r	  (hOX   $sslConfig->delete();h\}r	  (h^]h_]r	  Uotherr	  ah`]ha]hd]uhPj{	  hh]r	  hqX   $sslConfig->delete();r	  r	  }r	  (hOU hPj	  ubahZh½ubaubeubeubhQ)r	  }r	  (hOU hPhVhXhYhZh[h\}r	  (h^]h_]h`]ha]r	  Umetadatar	  ahd]r	  hDauhfM“hghhh]r	  (hj)r	  }r	  (hOX   Metadatar	  hPj	  hXhYhZhnh\}r	  (h^]h_]h`]ha]hd]uhfM“hghhh]r	  hqX   Metadatar	  r	  }r	  (hOj	  hPj	  ubaubh)r	  }r	  (hOXā   Metadata can be associated with each load balancer and each node for the
client's personal use. It is defined using key-value pairs where the key
and value consist of alphanumeric characters. A key is unique per load
balancer.r	  hPj	  hXhYhZhh\}r	  (h^]h_]h`]ha]hd]uhfM¶hghhh]r	  hqXā   Metadata can be associated with each load balancer and each node for the
client's personal use. It is defined using key-value pairs where the key
and value consist of alphanumeric characters. A key is unique per load
balancer.r	  r	  }r 	  (hOj	  hPj	  ubaubhQ)r”	  }r¢	  (hOU hPj	  hXhYhZh[h\}r£	  (h^]h_]h`]ha]r¤	  Ulist-metadatar„	  ahd]r¦	  hauhfM¼hghhh]r§	  (hj)rØ	  }r©	  (hOX   List metadatarŖ	  hPj”	  hXhYhZhnh\}r«	  (h^]h_]h`]ha]hd]uhfM¼hghhh]r¬	  hqX   List metadatar­	  r®	  }rÆ	  (hOjŖ	  hPjØ	  ubaubhØ)r°	  }r±	  (hOXØ   $metadataList = $loadBalancer->metadataList();

foreach ($metadataList as $metadataItem) {
    printf("Key: %s, Value: %s", $metadataItem->key, $metadataItem->value);
}hPj”	  hXhYhZh«h\}r²	  (h­h®ha]h`]h^]h_]r³	  (h°X   phpr“	  ehd]uhfMÅhghhh]rµ	  h³)r¶	  }r·	  (hOXØ   $metadataList = $loadBalancer->metadataList();

foreach ($metadataList as $metadataItem) {
    printf("Key: %s, Value: %s", $metadataItem->key, $metadataItem->value);
}h\}rø	  (h^]h_]r¹	  Uotherrŗ	  ah`]ha]hd]uhPj°	  hh]r»	  hqXØ   $metadataList = $loadBalancer->metadataList();

foreach ($metadataList as $metadataItem) {
    printf("Key: %s, Value: %s", $metadataItem->key, $metadataItem->value);
}r¼	  r½	  }r¾	  (hOU hPj¶	  ubahZh½ubaubh)ræ	  }rĄ	  (hOXq   Please consult the `iterator
documentation <docs/userguide/Iterators.md>`__ for more information
about iterators.hPj”	  hXhYhZhh\}rĮ	  (h^]h_]h`]ha]hd]uhfMĘhghhh]rĀ	  (hqX   Please consult the rĆ	  rÄ	  }rÅ	  (hOX   Please consult the hPjæ	  ubjņ  )rĘ	  }rĒ	  (hOX8   `iterator
documentation <docs/userguide/Iterators.md>`__h\}rČ	  (UnameX   iterator documentationjö  X   docs/userguide/Iterators.mdha]h`]h^]h_]hd]uhPjæ	  hh]rÉ	  hqX   iterator
documentationrŹ	  rĖ	  }rĢ	  (hOU hPjĘ	  ubahZjū  ubhqX&    for more information
about iterators.rĶ	  rĪ	  }rĻ	  (hOX&    for more information
about iterators.hPjæ	  ubeubeubhQ)rŠ	  }rŃ	  (hOU hPj	  hXhYhZh[h\}rŅ	  (h^]h_]h`]ha]rÓ	  Uadd-metadatarŌ	  ahd]rÕ	  hBauhfMĖhghhh]rÖ	  (hj)r×	  }rŲ	  (hOX   Add metadatarŁ	  hPjŠ	  hXhYhZhnh\}rŚ	  (h^]h_]h`]ha]hd]uhfMĖhghhh]rŪ	  hqX   Add metadatarÜ	  rŻ	  }rŽ	  (hOjŁ	  hPj×	  ubaubhØ)rß	  }rą	  (hOXv   $metadataItem = $loadBalancer->metadata();
$metadataItem->create(array(
    'key'   => 'foo',
    'value' => 'bar'
));hPjŠ	  hXhYhZh«h\}rį	  (h­h®ha]h`]h^]h_]rā	  (h°X   phprć	  ehd]uhfMŌhghhh]rä	  h³)rå	  }rę	  (hOXv   $metadataItem = $loadBalancer->metadata();
$metadataItem->create(array(
    'key'   => 'foo',
    'value' => 'bar'
));h\}rē	  (h^]h_]rč	  Uotherré	  ah`]ha]hd]uhPjß	  hh]rź	  hqXv   $metadataItem = $loadBalancer->metadata();
$metadataItem->create(array(
    'key'   => 'foo',
    'value' => 'bar'
));rė	  rģ	  }rķ	  (hOU hPjå	  ubahZh½ubaubeubhQ)rī	  }rļ	  (hOU hPj	  hXhYhZh[h\}rš	  (h^]h_]h`]ha]rń	  Umodify-metadatarņ	  ahd]ró	  h3auhfMÖhghhh]rō	  (hj)rõ	  }rö	  (hOX   Modify metadatar÷	  hPjī	  hXhYhZhnh\}rų	  (h^]h_]h`]ha]hd]uhfMÖhghhh]rł	  hqX   Modify metadatarś	  rū	  }rü	  (hOj÷	  hPjõ	  ubaubhØ)rż	  }rž	  (hOXe   $metadataItem = $loadBalancer->metadata('foo');
$metadataItem->update(array(
    'value' => 'baz'
));hPjī	  hXhYhZh«h\}r’	  (h­h®ha]h`]h^]h_]r 
  (h°X   phpr
  ehd]uhfMŽhghhh]r
  h³)r
  }r
  (hOXe   $metadataItem = $loadBalancer->metadata('foo');
$metadataItem->update(array(
    'value' => 'baz'
));h\}r
  (h^]h_]r
  Uotherr
  ah`]ha]hd]uhPjż	  hh]r
  hqXe   $metadataItem = $loadBalancer->metadata('foo');
$metadataItem->update(array(
    'value' => 'baz'
));r	
  r

  }r
  (hOU hPj
  ubahZh½ubaubeubhQ)r
  }r
  (hOU hPj	  hXhYhZh[h\}r
  (h^]h_]h`]ha]r
  Uremove-metadatar
  ahd]r
  hauhfMąhghhh]r
  (hj)r
  }r
  (hOX   Remove metadatar
  hPj
  hXhYhZhnh\}r
  (h^]h_]h`]ha]hd]uhfMąhghhh]r
  hqX   Remove metadatar
  r
  }r
  (hOj
  hPj
  ubaubhØ)r
  }r
  (hOX   $metadataItem->delete();hPj
  hXhYhZh«h\}r
  (h­h®ha]h`]h^]h_]r
  (h°X   phpr
  ehd]uhfMåhghhh]r 
  h³)r!
  }r"
  (hOX   $metadataItem->delete();h\}r#
  (h^]h_]r$
  Uotherr%
  ah`]ha]hd]uhPj
  hh]r&
  hqX   $metadataItem->delete();r'
  r(
  }r)
  (hOU hPj!
  ubahZh½ubaubeubeubhQ)r*
  }r+
  (hOU hPhVhXhYhZh[h\}r,
  (h^]h_]h`]ha]r-
  Umonitorsr.
  ahd]r/
  hauhfMēhghhh]r0
  (hj)r1
  }r2
  (hOX   Monitorsr3
  hPj*
  hXhYhZhnh\}r4
  (h^]h_]h`]ha]hd]uhfMēhghhh]r5
  hqX   Monitorsr6
  r7
  }r8
  (hOj3
  hPj1
  ubaubh)r9
  }r:
  (hOX'  The load balancing service includes a health monitoring operation which
periodically checks your back-end nodes to ensure they are responding
correctly. If a node is not responding, it is removed from rotation
until the health monitor determines that the node is functional. In
addition to being performed periodically, the health check also is
performed against every node that is added to ensure that the node is
operating properly before allowing it to service traffic. Only one
health monitor is allowed to be enabled on a load balancer at a time.r;
  hPj*
  hXhYhZhh\}r<
  (h^]h_]h`]ha]hd]uhfMéhghhh]r=
  hqX'  The load balancing service includes a health monitoring operation which
periodically checks your back-end nodes to ensure they are responding
correctly. If a node is not responding, it is removed from rotation
until the health monitor determines that the node is functional. In
addition to being performed periodically, the health check also is
performed against every node that is added to ensure that the node is
operating properly before allowing it to service traffic. Only one
health monitor is allowed to be enabled on a load balancer at a time.r>
  r?
  }r@
  (hOj;
  hPj9
  ubaubhØ)rA
  }rB
  (hOX%  /** @var $healthMonitor OpenCloud\LoadBalancer\Resource\HealthMonitor **/

$healthMonitor = $loadBalancer->healthMonitor();

printf(
    "Monitoring type: %s, delay: %s, timeout: %s, attempts before deactivation: %s",
    $healthMonitor->type, $healthMonitor->delay, $healthMonitor->timeout
);hPj*
  hXhYhZh«h\}rC
  (h­h®ha]h`]h^]h_]rD
  (h°X   phprE
  ehd]uhfMühghhh]rF
  h³)rG
  }rH
  (hOX%  /** @var $healthMonitor OpenCloud\LoadBalancer\Resource\HealthMonitor **/

$healthMonitor = $loadBalancer->healthMonitor();

printf(
    "Monitoring type: %s, delay: %s, timeout: %s, attempts before deactivation: %s",
    $healthMonitor->type, $healthMonitor->delay, $healthMonitor->timeout
);h\}rI
  (h^]h_]rJ
  UotherrK
  ah`]ha]hd]uhPjA
  hh]rL
  hqX%  /** @var $healthMonitor OpenCloud\LoadBalancer\Resource\HealthMonitor **/

$healthMonitor = $loadBalancer->healthMonitor();

printf(
    "Monitoring type: %s, delay: %s, timeout: %s, attempts before deactivation: %s",
    $healthMonitor->type, $healthMonitor->delay, $healthMonitor->timeout
);rM
  rN
  }rO
  (hOU hPjG
  ubahZh½ubaubh)rP
  }rQ
  (hOXß   For a full list, with explanations, of required and optional attributes,
please consult the `official
documentation <http://docs.rackspace.com/loadbalancers/api/v1.0/clb-devguide/content/Monitor_Connections-d1e3536.html>`__hPj*
  hXhYhZhh\}rR
  (h^]h_]h`]ha]hd]uhfMżhghhh]rS
  (hqX\   For a full list, with explanations, of required and optional attributes,
please consult the rT
  rU
  }rV
  (hOX\   For a full list, with explanations, of required and optional attributes,
please consult the hPjP
  ubjņ  )rW
  }rX
  (hOX   `official
documentation <http://docs.rackspace.com/loadbalancers/api/v1.0/clb-devguide/content/Monitor_Connections-d1e3536.html>`__h\}rY
  (UnameX   official documentationjö  Xf   http://docs.rackspace.com/loadbalancers/api/v1.0/clb-devguide/content/Monitor_Connections-d1e3536.htmlha]h`]h^]h_]hd]uhPjP
  hh]rZ
  hqX   official
documentationr[
  r\
  }r]
  (hOU hPjW
  ubahZjū  ubeubhQ)r^
  }r_
  (hOU hPj*
  hXhYhZh[h\}r`
  (h^]h_]h`]ha]ra
  Uupdate-or-deleterb
  ahd]rc
  h'auhfMhghhh]rd
  (hj)re
  }rf
  (hOX   Update or deleterg
  hPj^
  hXhYhZhnh\}rh
  (h^]h_]h`]ha]hd]uhfMhghhh]ri
  hqX   Update or deleterj
  rk
  }rl
  (hOjg
  hPje
  ubaubhØ)rm
  }rn
  (hOX¼   // Update
$healthMonitor->update(array(
    'delay'   => 120,
    'timeout' => 60,
    'type'    => 'CONNECT'
    'attemptsBeforeDeactivation' => 3
));

// Delete
$healthMonitor->delete();hPj^
  hXhYhZh«h\}ro
  (h­h®ha]h`]h^]h_]rp
  (h°X   phprq
  ehd]uhfMhghhh]rr
  h³)rs
  }rt
  (hOX¼   // Update
$healthMonitor->update(array(
    'delay'   => 120,
    'timeout' => 60,
    'type'    => 'CONNECT'
    'attemptsBeforeDeactivation' => 3
));

// Delete
$healthMonitor->delete();h\}ru
  (h^]h_]rv
  Uotherrw
  ah`]ha]hd]uhPjm
  hh]rx
  hqX¼   // Update
$healthMonitor->update(array(
    'delay'   => 120,
    'timeout' => 60,
    'type'    => 'CONNECT'
    'attemptsBeforeDeactivation' => 3
));

// Delete
$healthMonitor->delete();ry
  rz
  }r{
  (hOU hPjs
  ubahZh½ubaubeubeubhQ)r|
  }r}
  (hOU hPhVhXhYhZh[h\}r~
  (h^]h_]h`]ha]r
  U
statisticsr
  ahd]r
  hGauhfMhghhh]r
  (hj)r
  }r
  (hOX
   Statisticsr
  hPj|
  hXhYhZhnh\}r
  (h^]h_]h`]ha]hd]uhfMhghhh]r
  hqX
   Statisticsr
  r
  }r
  (hOj
  hPj
  ubaubh)r
  }r
  (hOX^   You can retrieve detailed stats about your load balancer, including the
following information:r
  hPj|
  hXhYhZhh\}r
  (h^]h_]h`]ha]hd]uhfMhghhh]r
  hqX^   You can retrieve detailed stats about your load balancer, including the
following information:r
  r
  }r
  (hOj
  hPj
  ubaubjÄ  )r
  }r
  (hOU hPj|
  hXhYhZjĒ  h\}r
  (jÉ  X   -ha]h`]h^]h_]hd]uhfMhghhh]r
  (jĖ  )r
  }r
  (hOXu   ``connectTimeOut`` ā Connections closed by this load balancer because
the 'connect\_timeout' interval was exceeded.hPj
  hXhYhZjĻ  h\}r
  (h^]h_]h`]ha]hd]uhfNhghhh]r
  h)r
  }r
  (hOXu   ``connectTimeOut`` ā Connections closed by this load balancer because
the 'connect\_timeout' interval was exceeded.hPj
  hXhYhZhh\}r
  (h^]h_]h`]ha]hd]uhfMhh]r
  (h)r
  }r 
  (hOX   ``connectTimeOut``h\}r”
  (h^]h_]h`]ha]hd]uhPj
  hh]r¢
  hqX   connectTimeOutr£
  r¤
  }r„
  (hOU hPj
  ubahZh¤ubhqXb    ā Connections closed by this load balancer because
the 'connect_timeout' interval was exceeded.r¦
  r§
  }rØ
  (hOXc    ā Connections closed by this load balancer because
the 'connect\_timeout' interval was exceeded.hPj
  ubeubaubjĖ  )r©
  }rŖ
  (hOXT   ``connectError`` ā Number of transaction or protocol errors in this
load balancer.hPj
  hXhYhZjĻ  h\}r«
  (h^]h_]h`]ha]hd]uhfNhghhh]r¬
  h)r­
  }r®
  (hOXT   ``connectError`` ā Number of transaction or protocol errors in this
load balancer.hPj©
  hXhYhZhh\}rÆ
  (h^]h_]h`]ha]hd]uhfMhh]r°
  (h)r±
  }r²
  (hOX   ``connectError``h\}r³
  (h^]h_]h`]ha]hd]uhPj­
  hh]r“
  hqX   connectErrorrµ
  r¶
  }r·
  (hOU hPj±
  ubahZh¤ubhqXD    ā Number of transaction or protocol errors in this
load balancer.rø
  r¹
  }rŗ
  (hOXD    ā Number of transaction or protocol errors in this
load balancer.hPj­
  ubeubaubjĖ  )r»
  }r¼
  (hOXK   ``connectFailure`` ā Number of connection failures in this load
balancer.hPj
  hXhYhZjĻ  h\}r½
  (h^]h_]h`]ha]hd]uhfNhghhh]r¾
  h)ræ
  }rĄ
  (hOXK   ``connectFailure`` ā Number of connection failures in this load
balancer.hPj»
  hXhYhZhh\}rĮ
  (h^]h_]h`]ha]hd]uhfMhh]rĀ
  (h)rĆ
  }rÄ
  (hOX   ``connectFailure``h\}rÅ
  (h^]h_]h`]ha]hd]uhPjæ
  hh]rĘ
  hqX   connectFailurerĒ
  rČ
  }rÉ
  (hOU hPjĆ
  ubahZh¤ubhqX9    ā Number of connection failures in this load
balancer.rŹ
  rĖ
  }rĢ
  (hOX9    ā Number of connection failures in this load
balancer.hPjæ
  ubeubaubjĖ  )rĶ
  }rĪ
  (hOXj   ``dataTimedOut`` ā Connections closed by this load balancer because
the 'timeout' interval was exceeded.hPj
  hXhYhZjĻ  h\}rĻ
  (h^]h_]h`]ha]hd]uhfNhghhh]rŠ
  h)rŃ
  }rŅ
  (hOXj   ``dataTimedOut`` ā Connections closed by this load balancer because
the 'timeout' interval was exceeded.hPjĶ
  hXhYhZhh\}rÓ
  (h^]h_]h`]ha]hd]uhfMhh]rŌ
  (h)rÕ
  }rÖ
  (hOX   ``dataTimedOut``h\}r×
  (h^]h_]h`]ha]hd]uhPjŃ
  hh]rŲ
  hqX   dataTimedOutrŁ
  rŚ
  }rŪ
  (hOU hPjÕ
  ubahZh¤ubhqXZ    ā Connections closed by this load balancer because
the 'timeout' interval was exceeded.rÜ
  rŻ
  }rŽ
  (hOXZ    ā Connections closed by this load balancer because
the 'timeout' interval was exceeded.hPjŃ
  ubeubaubjĖ  )rß
  }rą
  (hOXz   ``keepAliveTimedOut`` ā Connections closed by this load balancer
because the 'keepalive\_timeout' interval was exceeded.hPj
  hXhYhZjĻ  h\}rį
  (h^]h_]h`]ha]hd]uhfNhghhh]rā
  h)rć
  }rä
  (hOXz   ``keepAliveTimedOut`` ā Connections closed by this load balancer
because the 'keepalive\_timeout' interval was exceeded.hPjß
  hXhYhZhh\}rå
  (h^]h_]h`]ha]hd]uhfMhh]rę
  (h)rē
  }rč
  (hOX   ``keepAliveTimedOut``h\}ré
  (h^]h_]h`]ha]hd]uhPjć
  hh]rź
  hqX   keepAliveTimedOutrė
  rģ
  }rķ
  (hOU hPjē
  ubahZh¤ubhqXd    ā Connections closed by this load balancer
because the 'keepalive_timeout' interval was exceeded.rī
  rļ
  }rš
  (hOXe    ā Connections closed by this load balancer
because the 'keepalive\_timeout' interval was exceeded.hPjć
  ubeubaubjĖ  )rń
  }rņ
  (hOXq   ``maxConn`` ā Maximum number of simultaneous TCP connections this
load balancer has processed at any one time.
hPj
  hXhYhZjĻ  h\}ró
  (h^]h_]h`]ha]hd]uhfNhghhh]rō
  h)rõ
  }rö
  (hOXp   ``maxConn`` ā Maximum number of simultaneous TCP connections this
load balancer has processed at any one time.hPjń
  hXhYhZhh\}r÷
  (h^]h_]h`]ha]hd]uhfM!hh]rų
  (h)rł
  }rś
  (hOX   ``maxConn``h\}rū
  (h^]h_]h`]ha]hd]uhPjõ
  hh]rü
  hqX   maxConnrż
  rž
  }r’
  (hOU hPjł
  ubahZh¤ubhqXe    ā Maximum number of simultaneous TCP connections this
load balancer has processed at any one time.r   r  }r  (hOXe    ā Maximum number of simultaneous TCP connections this
load balancer has processed at any one time.hPjõ
  ubeubaubeubhØ)r  }r  (hOX[   /** @var $stats OpenCloud\LoadBalancer\Resource\Stats **/

$stats = $loadBalancer->stats();hPj|
  hXhYhZh«h\}r  (h­h®ha]h`]h^]h_]r  (h°X   phpr  ehd]uhfM)hghhh]r  h³)r	  }r
  (hOX[   /** @var $stats OpenCloud\LoadBalancer\Resource\Stats **/

$stats = $loadBalancer->stats();h\}r  (h^]h_]r  Uotherr  ah`]ha]hd]uhPj  hh]r  hqX[   /** @var $stats OpenCloud\LoadBalancer\Resource\Stats **/

$stats = $loadBalancer->stats();r  r  }r  (hOU hPj	  ubahZh½ubaubeubhQ)r  }r  (hOU hPhVhXhYhZh[h\}r  (h^]h_]h`]ha]r  Uusage-reportsr  ahd]r  h=auhfM+hghhh]r  (hj)r  }r  (hOX   Usage Reportsr  hPj  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfM+hghhh]r  hqX   Usage Reportsr  r  }r   (hOj  hPj  ubaubh)r!  }r"  (hOXR  The load balancer usage reports provide a view of all transfer activity,
average number of connections, and number of virtual IPs associated with
the load balancing service. Current usage represents all usage recorded
within the preceding 24 hours. Values for both incomingTransfer and
outgoingTransfer are expressed in bytes transferred.r#  hPj  hXhYhZhh\}r$  (h^]h_]h`]ha]hd]uhfM-hghhh]r%  hqXR  The load balancer usage reports provide a view of all transfer activity,
average number of connections, and number of virtual IPs associated with
the load balancing service. Current usage represents all usage recorded
within the preceding 24 hours. Values for both incomingTransfer and
outgoingTransfer are expressed in bytes transferred.r&  r'  }r(  (hOj#  hPj!  ubaubh)r)  }r*  (hOXe  The optional startTime and endTime parameters can be used to filter all
usage. If the startTime parameter is supplied but the endTime parameter
is not, then all usage beginning with the startTime will be provided.
Likewise, if the endTime parameter is supplied but the startTime
parameter is not, then all usage will be returned up to the endTime
specified.r+  hPj  hXhYhZhh\}r,  (h^]h_]h`]ha]hd]uhfM3hghhh]r-  hqXe  The optional startTime and endTime parameters can be used to filter all
usage. If the startTime parameter is supplied but the endTime parameter
is not, then all usage beginning with the startTime will be provided.
Likewise, if the endTime parameter is supplied but the startTime
parameter is not, then all usage will be returned up to the endTime
specified.r.  r/  }r0  (hOj+  hPj)  ubaubhØ)r1  }r2  (hOXc  # View billable LBs
$billable = $service->billableLoadBalancerList();

foreach ($billable as $loadBalancer) {
   /** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/

   # View usage
   /** @var $usage OpenCloud\LoadBalancer\Resource\UsageRecord **/
   $usage = $loadBalancer->usage();

   echo $usage->averageNumConnections, PHP_EOL;
}hPj  hXhYhZh«h\}r3  (h­h®ha]h`]h^]h_]r4  (h°X   phpr5  ehd]uhfMHhghhh]r6  h³)r7  }r8  (hOXc  # View billable LBs
$billable = $service->billableLoadBalancerList();

foreach ($billable as $loadBalancer) {
   /** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/

   # View usage
   /** @var $usage OpenCloud\LoadBalancer\Resource\UsageRecord **/
   $usage = $loadBalancer->usage();

   echo $usage->averageNumConnections, PHP_EOL;
}h\}r9  (h^]h_]r:  Uotherr;  ah`]ha]hd]uhPj1  hh]r<  hqXc  # View billable LBs
$billable = $service->billableLoadBalancerList();

foreach ($billable as $loadBalancer) {
   /** @var $loadBalancer OpenCloud\LoadBalancer\Resource\LoadBalancer **/

   # View usage
   /** @var $usage OpenCloud\LoadBalancer\Resource\UsageRecord **/
   $usage = $loadBalancer->usage();

   echo $usage->averageNumConnections, PHP_EOL;
}r=  r>  }r?  (hOU hPj7  ubahZh½ubaubeubeubhXhYhZh[h\}r@  (h^]h_]h`]ha]rA  UnodesrB  ahd]rC  h"auhfKhghhh]rD  (hj)rE  }rF  (hOX   NodesrG  hPhThXhYhZhnh\}rH  (h^]h_]h`]ha]hd]uhfKhghhh]rI  hqX   NodesrJ  rK  }rL  (hOjG  hPjE  ubaubh)rM  }rN  (hOX¬   A **node** is a backend device that provides a service on specified IP
and port. An example of a load balancer node might be a web server
serving HTTP traffic on port 8080.hPhThXhYhZhh\}rO  (h^]h_]h`]ha]hd]uhfKhghhh]rP  (hqX   A rQ  rR  }rS  (hOX   A hPjM  ubj$  )rT  }rU  (hOX   **node**h\}rV  (h^]h_]h`]ha]hd]uhPjM  hh]rW  hqX   noderX  rY  }rZ  (hOU hPjT  ubahZj,  ubhqX¢    is a backend device that provides a service on specified IP
and port. An example of a load balancer node might be a web server
serving HTTP traffic on port 8080.r[  r\  }r]  (hOX¢    is a backend device that provides a service on specified IP
and port. An example of a load balancer node might be a web server
serving HTTP traffic on port 8080.hPjM  ubeubh)r^  }r_  (hOXw   A load balancer typically has multiple nodes attached to it so it can
distribute incoming network traffic amongst them.r`  hPhThXhYhZhh\}ra  (h^]h_]h`]ha]hd]uhfKhghhh]rb  hqXw   A load balancer typically has multiple nodes attached to it so it can
distribute incoming network traffic amongst them.rc  rd  }re  (hOj`  hPj^  ubaubhQ)rf  }rg  (hOU hPhThXhYhZh[h\}rh  (h^]h_]h`]ha]ri  U
list-nodesrj  ahd]rk  hauhfK”hghhh]rl  (hj)rm  }rn  (hOX
   List Nodesro  hPjf  hXhYhZhnh\}rp  (h^]h_]h`]ha]hd]uhfK”hghhh]rq  hqX
   List Nodesrr  rs  }rt  (hOjo  hPjm  ubaubh)ru  }rv  (hOX   You can list the nodes attached to a load balancer. An instance of
``OpenCloud\Common\Collection\PaginatedIterator`` is returned.hPjf  hXhYhZhh\}rw  (h^]h_]h`]ha]hd]uhfK£hghhh]rx  (hqXC   You can list the nodes attached to a load balancer. An instance of
ry  rz  }r{  (hOXC   You can list the nodes attached to a load balancer. An instance of
hPju  ubh)r|  }r}  (hOX1   ``OpenCloud\Common\Collection\PaginatedIterator``h\}r~  (h^]h_]h`]ha]hd]uhPju  hh]r  hqX-   OpenCloud\Common\Collection\PaginatedIteratorr  r  }r  (hOU hPj|  ubahZh¤ubhqX    is returned.r  r  }r  (hOX    is returned.hPju  ubeubhØ)r  }r  (hOX}   $nodes = $loadBalancer->nodeList();
foreach ($nodes as $node) {
    /** @var $node OpenCloud\LoadBalancer\Resource\Node **/
}hPjf  hXhYhZh«h\}r  (h­h®ha]h`]h^]h_]r  (h°X   phpr  ehd]uhfK¬hghhh]r  h³)r  }r  (hOX}   $nodes = $loadBalancer->nodeList();
foreach ($nodes as $node) {
    /** @var $node OpenCloud\LoadBalancer\Resource\Node **/
}h\}r  (h^]h_]r  Uotherr  ah`]ha]hd]uhPj  hh]r  hqX}   $nodes = $loadBalancer->nodeList();
foreach ($nodes as $node) {
    /** @var $node OpenCloud\LoadBalancer\Resource\Node **/
}r  r  }r  (hOU hPj  ubahZh½ubaubeubhRhQ)r  }r  (hOU hPhThXhYhZh[h\}r  (h^]h_]h`]ha]r  Umodify-nodesr  ahd]r  h:auhfKĪhghhh]r  (hj)r  }r  (hOX   Modify Nodesr  hPj  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfKĪhghhh]r   hqX   Modify Nodesr”  r¢  }r£  (hOj  hPj  ubaubh)r¤  }r„  (hOX<   You can modify one or more of the following node attributes:r¦  hPj  hXhYhZhh\}r§  (h^]h_]h`]ha]hd]uhfKŠhghhh]rØ  hqX<   You can modify one or more of the following node attributes:r©  rŖ  }r«  (hOj¦  hPj¤  ubaubjÄ  )r¬  }r­  (hOU hPj  hXhYhZjĒ  h\}r®  (jÉ  X   -ha]h`]h^]h_]hd]uhfKŅhghhh]rÆ  (jĖ  )r°  }r±  (hOXg  ``condition``: The condition of the load balancer:

-  ``ENABLED`` ā Node is ready to receive traffic from the load
   balancer.
-  ``DISABLED`` ā Node should not receive traffic from the load
   balancer.
-  ``DRAINING`` ā Node should process any traffic it is already
   receiving but should not receive any further traffic from the load
   balancer.
hPj¬  hXNhZjĻ  h\}r²  (h^]h_]h`]ha]hd]uhfNhghhh]r³  (h)r“  }rµ  (hOX2   ``condition``: The condition of the load balancer:hPj°  hXhYhZhh\}r¶  (h^]h_]h`]ha]hd]uhfKŅhh]r·  (h)rø  }r¹  (hOX   ``condition``h\}rŗ  (h^]h_]h`]ha]hd]uhPj“  hh]r»  hqX	   conditionr¼  r½  }r¾  (hOU hPjø  ubahZh¤ubhqX%   : The condition of the load balancer:ræ  rĄ  }rĮ  (hOX%   : The condition of the load balancer:hPj“  ubeubjÄ  )rĀ  }rĆ  (hOU h\}rÄ  (jÉ  X   -ha]h`]h^]h_]hd]uhPj°  hh]rÅ  (jĖ  )rĘ  }rĒ  (hOXH   ``ENABLED`` ā Node is ready to receive traffic from the load
balancer.h\}rČ  (h^]h_]h`]ha]hd]uhPjĀ  hh]rÉ  h)rŹ  }rĖ  (hOXH   ``ENABLED`` ā Node is ready to receive traffic from the load
balancer.hPjĘ  hXhYhZhh\}rĢ  (h^]h_]h`]ha]hd]uhfKŌhh]rĶ  (h)rĪ  }rĻ  (hOX   ``ENABLED``h\}rŠ  (h^]h_]h`]ha]hd]uhPjŹ  hh]rŃ  hqX   ENABLEDrŅ  rÓ  }rŌ  (hOU hPjĪ  ubahZh¤ubhqX=    ā Node is ready to receive traffic from the load
balancer.rÕ  rÖ  }r×  (hOX=    ā Node is ready to receive traffic from the load
balancer.hPjŹ  ubeubahZjĻ  ubjĖ  )rŲ  }rŁ  (hOXH   ``DISABLED`` ā Node should not receive traffic from the load
balancer.h\}rŚ  (h^]h_]h`]ha]hd]uhPjĀ  hh]rŪ  h)rÜ  }rŻ  (hOXH   ``DISABLED`` ā Node should not receive traffic from the load
balancer.hPjŲ  hXhYhZhh\}rŽ  (h^]h_]h`]ha]hd]uhfKÖhh]rß  (h)rą  }rį  (hOX   ``DISABLED``h\}rā  (h^]h_]h`]ha]hd]uhPjÜ  hh]rć  hqX   DISABLEDrä  rå  }rę  (hOU hPją  ubahZh¤ubhqX<    ā Node should not receive traffic from the load
balancer.rē  rč  }ré  (hOX<    ā Node should not receive traffic from the load
balancer.hPjÜ  ubeubahZjĻ  ubjĖ  )rź  }rė  (hOX   ``DRAINING`` ā Node should process any traffic it is already
receiving but should not receive any further traffic from the load
balancer.
h\}rģ  (h^]h_]h`]ha]hd]uhPjĀ  hh]rķ  h)rī  }rļ  (hOX   ``DRAINING`` ā Node should process any traffic it is already
receiving but should not receive any further traffic from the load
balancer.hPjź  hXhYhZhh\}rš  (h^]h_]h`]ha]hd]uhfKŲhh]rń  (h)rņ  }ró  (hOX   ``DRAINING``h\}rō  (h^]h_]h`]ha]hd]uhPjī  hh]rõ  hqX   DRAININGrö  r÷  }rų  (hOU hPjņ  ubahZh¤ubhqX    ā Node should process any traffic it is already
receiving but should not receive any further traffic from the load
balancer.rł  rś  }rū  (hOX    ā Node should process any traffic it is already
receiving but should not receive any further traffic from the load
balancer.hPjī  ubeubahZjĻ  ubehZjĒ  ubeubjĖ  )rü  }rż  (hOX0  ``type``: The type of the node:

-  ``PRIMARY`` ā Nodes defined as PRIMARY are in the normal rotation
   to receive traffic from the load balancer.
-  ``SECONDARY`` ā Nodes defined as SECONDARY are only in the
   rotation to receive traffic from the load balancer when all the
   primary nodes fail.
hPj¬  hXNhZjĻ  h\}rž  (h^]h_]h`]ha]hd]uhfNhghhh]r’  (h)r   }r  (hOX   ``type``: The type of the node:hPjü  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfKÜhh]r  (h)r  }r  (hOX   ``type``h\}r  (h^]h_]h`]ha]hd]uhPj   hh]r  hqX   typer  r	  }r
  (hOU hPj  ubahZh¤ubhqX   : The type of the node:r  r  }r  (hOX   : The type of the node:hPj   ubeubjÄ  )r  }r  (hOU h\}r  (jÉ  X   -ha]h`]h^]h_]hd]uhPjü  hh]r  (jĖ  )r  }r  (hOXn   ``PRIMARY`` ā Nodes defined as PRIMARY are in the normal rotation
to receive traffic from the load balancer.h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  h)r  }r  (hOXn   ``PRIMARY`` ā Nodes defined as PRIMARY are in the normal rotation
to receive traffic from the load balancer.hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfKŽhh]r  (h)r  }r  (hOX   ``PRIMARY``h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX   PRIMARYr  r  }r   (hOU hPj  ubahZh¤ubhqXc    ā Nodes defined as PRIMARY are in the normal rotation
to receive traffic from the load balancer.r!  r"  }r#  (hOXc    ā Nodes defined as PRIMARY are in the normal rotation
to receive traffic from the load balancer.hPj  ubeubahZjĻ  ubjĖ  )r$  }r%  (hOX   ``SECONDARY`` ā Nodes defined as SECONDARY are only in the
rotation to receive traffic from the load balancer when all the
primary nodes fail.
h\}r&  (h^]h_]h`]ha]hd]uhPj  hh]r'  h)r(  }r)  (hOX   ``SECONDARY`` ā Nodes defined as SECONDARY are only in the
rotation to receive traffic from the load balancer when all the
primary nodes fail.hPj$  hXhYhZhh\}r*  (h^]h_]h`]ha]hd]uhfKąhh]r+  (h)r,  }r-  (hOX   ``SECONDARY``h\}r.  (h^]h_]h`]ha]hd]uhPj(  hh]r/  hqX	   SECONDARYr0  r1  }r2  (hOU hPj,  ubahZh¤ubhqX    ā Nodes defined as SECONDARY are only in the
rotation to receive traffic from the load balancer when all the
primary nodes fail.r3  r4  }r5  (hOX    ā Nodes defined as SECONDARY are only in the
rotation to receive traffic from the load balancer when all the
primary nodes fail.hPj(  ubeubahZjĻ  ubehZjĒ  ubeubjĖ  )r6  }r7  (hOX½   ``weight``: The weight, between 1 and 100, given to node when
distributing traffic using either the ``WEIGHTED_ROUND_ROBIN`` or the
``WEIGHTED_LEAST_CONNECTIONS`` load balancing algorithm.
hPj¬  hXhYhZjĻ  h\}r8  (h^]h_]h`]ha]hd]uhfNhghhh]r9  h)r:  }r;  (hOX¼   ``weight``: The weight, between 1 and 100, given to node when
distributing traffic using either the ``WEIGHTED_ROUND_ROBIN`` or the
``WEIGHTED_LEAST_CONNECTIONS`` load balancing algorithm.hPj6  hXhYhZhh\}r<  (h^]h_]h`]ha]hd]uhfKähh]r=  (h)r>  }r?  (hOX
   ``weight``h\}r@  (h^]h_]h`]ha]hd]uhPj:  hh]rA  hqX   weightrB  rC  }rD  (hOU hPj>  ubahZh¤ubhqXZ   : The weight, between 1 and 100, given to node when
distributing traffic using either the rE  rF  }rG  (hOXZ   : The weight, between 1 and 100, given to node when
distributing traffic using either the hPj:  ubh)rH  }rI  (hOX   ``WEIGHTED_ROUND_ROBIN``h\}rJ  (h^]h_]h`]ha]hd]uhPj:  hh]rK  hqX   WEIGHTED_ROUND_ROBINrL  rM  }rN  (hOU hPjH  ubahZh¤ubhqX    or the
rO  rP  }rQ  (hOX    or the
hPj:  ubh)rR  }rS  (hOX   ``WEIGHTED_LEAST_CONNECTIONS``h\}rT  (h^]h_]h`]ha]hd]uhPj:  hh]rU  hqX   WEIGHTED_LEAST_CONNECTIONSrV  rW  }rX  (hOU hPjR  ubahZh¤ubhqX    load balancing algorithm.rY  rZ  }r[  (hOX    load balancing algorithm.hPj:  ubeubaubeubhQ)r\  }r]  (hOU hPj  hXhYhZh[h\}r^  (h^]h_]h`]ha]r_  U&modifying-a-single-attribute-of-a-noder`  ahd]ra  h<auhfKéhghhh]rb  (hj)rc  }rd  (hOX&   Modifying a single attribute of a nodere  hPj\  hXhYhZhnh\}rf  (h^]h_]h`]ha]hd]uhfKéhghhh]rg  hqX&   Modifying a single attribute of a noderh  ri  }rj  (hOje  hPjc  ubaubhØ)rk  }rl  (hOXs   use OpenCloud\LoadBalancer\Enum\NodeCondition;

$node->update(array(
    'condition' => NodeCondition::DISABLED
));hPj\  hXhYhZh«h\}rm  (h­h®ha]h`]h^]h_]rn  (h°X   phpro  ehd]uhfKņhghhh]rp  h³)rq  }rr  (hOXs   use OpenCloud\LoadBalancer\Enum\NodeCondition;

$node->update(array(
    'condition' => NodeCondition::DISABLED
));h\}rs  (h^]h_]rt  Uotherru  ah`]ha]hd]uhPjk  hh]rv  hqXs   use OpenCloud\LoadBalancer\Enum\NodeCondition;

$node->update(array(
    'condition' => NodeCondition::DISABLED
));rw  rx  }ry  (hOU hPjq  ubahZh½ubaubeubhQ)rz  }r{  (hOU hPj  hXhYhZh[h\}r|  (h^]h_]h`]ha]r}  U'modifying-multiple-attributes-of-a-noder~  ahd]r  h&auhfKōhghhh]r  (hj)r  }r  (hOX'   Modifying multiple attributes of a noder  hPjz  hXhYhZhnh\}r  (h^]h_]h`]ha]hd]uhfKōhghhh]r  hqX'   Modifying multiple attributes of a noder  r  }r  (hOj  hPj  ubaubhØ)r  }r  (hOXÅ   use OpenCloud\LoadBalancer\Enum\NodeCondition;
use OpenCloud\LoadBalancer\Enum\NodeType;

$node->update(array(
    'condition' => NodeCondition::DISABLED,
    'type'      => NodeType::SECONDARY
));hPjz  hXhYhZh«h\}r  (h­h®ha]h`]h^]h_]r  (h°X   phpr  ehd]uhfK’hghhh]r  h³)r  }r  (hOXÅ   use OpenCloud\LoadBalancer\Enum\NodeCondition;
use OpenCloud\LoadBalancer\Enum\NodeType;

$node->update(array(
    'condition' => NodeCondition::DISABLED,
    'type'      => NodeType::SECONDARY
));h\}r  (h^]h_]r  Uotherr  ah`]ha]hd]uhPj  hh]r  hqXÅ   use OpenCloud\LoadBalancer\Enum\NodeCondition;
use OpenCloud\LoadBalancer\Enum\NodeType;

$node->update(array(
    'condition' => NodeCondition::DISABLED,
    'type'      => NodeType::SECONDARY
));r  r  }r  (hOU hPj  ubahZh½ubaubeubeubhQ)r  }r  (hOU hPhThXhYhZh[h\}r  (h^]h_]h`]ha]r  Uremove-nodesr  ahd]r  h
auhfMhghhh]r  (hj)r  }r   (hOX   Remove Nodesr”  hPj  hXhYhZhnh\}r¢  (h^]h_]h`]ha]hd]uhfMhghhh]r£  hqX   Remove Nodesr¤  r„  }r¦  (hOj”  hPj  ubaubh)r§  }rØ  (hOX$   There are two ways to remove a node.r©  hPj  hXhYhZhh\}rŖ  (h^]h_]h`]ha]hd]uhfMhghhh]r«  hqX$   There are two ways to remove a node.r¬  r­  }r®  (hOj©  hPj§  ubaubhQ)rÆ  }r°  (hOU hPj  hXhYhZh[h\}r±  (h^]h_]h`]ha]r²  U6given-an-opencloud-loadbalancer-resource-node-instancer³  ahd]r“  hCauhfMhghhh]rµ  (hj)r¶  }r·  (hOX:   Given an ``OpenCloud\LoadBalancer\Resource\Node`` instancerø  hPjÆ  hXhYhZhnh\}r¹  (h^]h_]h`]ha]hd]uhfMhghhh]rŗ  (hqX	   Given an r»  r¼  }r½  (hOX	   Given an r¾  hPj¶  ubh)ræ  }rĄ  (hOX(   ``OpenCloud\LoadBalancer\Resource\Node``rĮ  h\}rĀ  (h^]h_]h`]ha]hd]uhPj¶  hh]rĆ  hqX$   OpenCloud\LoadBalancer\Resource\NoderÄ  rÅ  }rĘ  (hOU hPjæ  ubahZh¤ubhqX	    instancerĒ  rČ  }rÉ  (hOX	    instancerŹ  hPj¶  ubeubhØ)rĖ  }rĢ  (hOX   $node->delete();hPjÆ  hXhYhZh«h\}rĶ  (h­h®ha]h`]h^]h_]rĪ  (h°X   phprĻ  ehd]uhfMhghhh]rŠ  h³)rŃ  }rŅ  (hOX   $node->delete();h\}rÓ  (h^]h_]rŌ  UotherrÕ  ah`]ha]hd]uhPjĖ  hh]rÖ  hqX   $node->delete();r×  rŲ  }rŁ  (hOU hPjŃ  ubahZh½ubaubeubhQ)rŚ  }rŪ  (hOU hPj  hXhYhZh[h\}rÜ  (h^]h_]h`]ha]rŻ  ULgiven-an-opencloud-loadbalancer-resource-loadbalancer-instance-and-a-node-idrŽ  ahd]rß  h#auhfMhghhh]rą  (hj)rį  }rā  (hOXP   Given an ``OpenCloud\LoadBalancer\Resource\LoadBalancer`` instance and a node IDrć  hPjŚ  hXhYhZhnh\}rä  (h^]h_]h`]ha]hd]uhfMhghhh]rå  (hqX	   Given an rę  rē  }rč  (hOX	   Given an ré  hPjį  ubh)rź  }rė  (hOX0   ``OpenCloud\LoadBalancer\Resource\LoadBalancer``rģ  h\}rķ  (h^]h_]h`]ha]hd]uhPjį  hh]rī  hqX,   OpenCloud\LoadBalancer\Resource\LoadBalancerrļ  rš  }rń  (hOU hPjź  ubahZh¤ubhqX    instance and a node IDrņ  ró  }rō  (hOX    instance and a node IDrõ  hPjį  ubeubhØ)rö  }r÷  (hOX"   $loadBalancer->removeNode(490639);hPjŚ  hXhYhZh«h\}rų  (h­h®ha]h`]h^]h_]rł  (h°X   phprś  ehd]uhfMhghhh]rū  h³)rü  }rż  (hOX"   $loadBalancer->removeNode(490639);h\}rž  (h^]h_]r’  Uotherr   ah`]ha]hd]uhPjö  hh]r  hqX"   $loadBalancer->removeNode(490639);r  r  }r  (hOU hPjü  ubahZh½ubaubh)r  }r  (hOXK   The ``removeNode`` method, as shown above, accepts the following
arguments:hPjŚ  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMhghhh]r  (hqX   The r	  r
  }r  (hOX   The hPj  ubh)r  }r  (hOX   ``removeNode``h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX
   removeNoder  r  }r  (hOU hPj  ubahZh¤ubhqX9    method, as shown above, accepts the following
arguments:r  r  }r  (hOX9    method, as shown above, accepts the following
arguments:hPj  ubeubj  )r  }r  (hOU hPjŚ  hXNhZj   h\}r  (h^]h_]h`]ha]hd]uhfNhghhh]r  j£  )r  }r  (hOU h\}r  (ha]h`]h^]h_]hd]UcolsKuhPj  hh]r  (jØ  )r  }r  (hOU h\}r   (ha]h`]h^]h_]hd]UcolwidthKuhPj  hh]hZj¬  ubjØ  )r!  }r"  (hOU h\}r#  (ha]h`]h^]h_]hd]UcolwidthKuhPj  hh]hZj¬  ubjØ  )r$  }r%  (hOU h\}r&  (ha]h`]h^]h_]hd]UcolwidthKuhPj  hh]hZj¬  ubjØ  )r'  }r(  (hOU h\}r)  (ha]h`]h^]h_]hd]UcolwidthKuhPj  hh]hZj¬  ubjØ  )r*  }r+  (hOU h\}r,  (ha]h`]h^]h_]hd]UcolwidthKuhPj  hh]hZj¬  ubj°  )r-  }r.  (hOU h\}r/  (h^]h_]h`]ha]hd]uhPj  hh]r0  jµ  )r1  }r2  (hOU h\}r3  (h^]h_]h`]ha]hd]uhPj-  hh]r4  (jŗ  )r5  }r6  (hOU h\}r7  (h^]h_]h`]ha]hd]uhPj1  hh]r8  h)r9  }r:  (hOX   Positionr;  hPj5  hXhYhZhh\}r<  (h^]h_]h`]ha]hd]uhfMhh]r=  hqX   Positionr>  r?  }r@  (hOj;  hPj9  ubaubahZjĒ  ubjŗ  )rA  }rB  (hOU h\}rC  (h^]h_]h`]ha]hd]uhPj1  hh]rD  h)rE  }rF  (hOX   DescriptionrG  hPjA  hXhYhZhh\}rH  (h^]h_]h`]ha]hd]uhfMhh]rI  hqX   DescriptionrJ  rK  }rL  (hOjG  hPjE  ubaubahZjĒ  ubjŗ  )rM  }rN  (hOU h\}rO  (h^]h_]h`]ha]hd]uhPj1  hh]rP  h)rQ  }rR  (hOX	   Data typerS  hPjM  hXhYhZhh\}rT  (h^]h_]h`]ha]hd]uhfMhh]rU  hqX	   Data typerV  rW  }rX  (hOjS  hPjQ  ubaubahZjĒ  ubjŗ  )rY  }rZ  (hOU h\}r[  (h^]h_]h`]ha]hd]uhPj1  hh]r\  h)r]  }r^  (hOX	   Required?r_  hPjY  hXhYhZhh\}r`  (h^]h_]h`]ha]hd]uhfMhh]ra  hqX	   Required?rb  rc  }rd  (hOj_  hPj]  ubaubahZjĒ  ubjŗ  )re  }rf  (hOU h\}rg  (h^]h_]h`]ha]hd]uhPj1  hh]rh  h)ri  }rj  (hOX   Default valuerk  hPje  hXhYhZhh\}rl  (h^]h_]h`]ha]hd]uhfMhh]rm  hqX   Default valuern  ro  }rp  (hOjk  hPji  ubaubahZjĒ  ubehZjŌ  ubahZjÕ  ubjÖ  )rq  }rr  (hOU h\}rs  (h^]h_]h`]ha]hd]uhPj  hh]rt  jµ  )ru  }rv  (hOU h\}rw  (h^]h_]h`]ha]hd]uhPjq  hh]rx  (jŗ  )ry  }rz  (hOU h\}r{  (h^]h_]h`]ha]hd]uhPju  hh]r|  h)r}  }r~  (hOX   1hPjy  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMhh]r  hqX   1r  }r  (hOX   1hPj}  ubaubahZjĒ  ubjŗ  )r  }r  (hOU h\}r  (h^]h_]h`]ha]hd]uhPju  hh]r  h)r  }r  (hOX
   ID of noder  hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMhh]r  hqX
   ID of noder  r  }r  (hOj  hPj  ubaubahZjĒ  ubjŗ  )r  }r  (hOU h\}r  (h^]h_]h`]ha]hd]uhPju  hh]r  h)r  }r  (hOX   Integerr  hPj  hXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfMhh]r  hqX   Integerr  r  }r  (hOj  hPj  ubaubahZjĒ  ubjŗ  )r  }r  (hOU h\}r  (h^]h_]h`]ha]hd]uhPju  hh]r  h)r  }r   (hOX   Yesr”  hPj  hXhYhZhh\}r¢  (h^]h_]h`]ha]hd]uhfMhh]r£  hqX   Yesr¤  r„  }r¦  (hOj”  hPj  ubaubahZjĒ  ubjŗ  )r§  }rØ  (hOU h\}r©  (h^]h_]h`]ha]hd]uhPju  hh]rŖ  jÄ  )r«  }r¬  (hOU h\}r­  (jÉ  X   -ha]h`]h^]h_]hd]uhPj§  hh]r®  jĖ  )rÆ  }r°  (hOU h\}r±  (h^]h_]h`]ha]hd]uhPj«  hh]hZjĻ  ubahZjĒ  ubahZjĒ  ubehZjŌ  ubahZj  ubehZj  ubaubeubeubhQ)r²  }r³  (hOU hPhThXhYhZh[h\}r“  (h^]h_]h`]ha]rµ  Uview-node-service-eventsr¶  ahd]r·  h7auhfMhghhh]rø  (hj)r¹  }rŗ  (hOX   View Node Service Eventsr»  hPj²  hXhYhZhnh\}r¼  (h^]h_]h`]ha]hd]uhfMhghhh]r½  hqX   View Node Service Eventsr¾  ræ  }rĄ  (hOj»  hPj¹  ubaubh)rĮ  }rĀ  (hOX¢   You can view events associated with the activity between a node and a
load balancer. An instance of
``OpenCloud\Common\Collection\PaginatedIterator`` is returned.hPj²  hXhYhZhh\}rĆ  (h^]h_]h`]ha]hd]uhfMhghhh]rÄ  (hqXd   You can view events associated with the activity between a node and a
load balancer. An instance of
rÅ  rĘ  }rĒ  (hOXd   You can view events associated with the activity between a node and a
load balancer. An instance of
hPjĮ  ubh)rČ  }rÉ  (hOX1   ``OpenCloud\Common\Collection\PaginatedIterator``h\}rŹ  (h^]h_]h`]ha]hd]uhPjĮ  hh]rĖ  hqX-   OpenCloud\Common\Collection\PaginatedIteratorrĢ  rĶ  }rĪ  (hOU hPjČ  ubahZh¤ubhqX    is returned.rĻ  rŠ  }rŃ  (hOX    is returned.hPjĮ  ubeubhØ)rŅ  }rÓ  (hOX   $nodeEvents = $loadBalancer->nodeEventList();
foreach ($nodeEvents as $nodeEvent) {
    /** @var $nodeEvent OpenCloud\LoadBalancer\Resource\NodeEvent **/
}hPj²  hXhYhZh«h\}rŌ  (h­h®ha]h`]h^]h_]rÕ  (h°X   phprÖ  ehd]uhfM)hghhh]r×  h³)rŲ  }rŁ  (hOX   $nodeEvents = $loadBalancer->nodeEventList();
foreach ($nodeEvents as $nodeEvent) {
    /** @var $nodeEvent OpenCloud\LoadBalancer\Resource\NodeEvent **/
}h\}rŚ  (h^]h_]rŪ  UotherrÜ  ah`]ha]hd]uhPjŅ  hh]rŻ  hqX   $nodeEvents = $loadBalancer->nodeEventList();
foreach ($nodeEvents as $nodeEvent) {
    /** @var $nodeEvent OpenCloud\LoadBalancer\Resource\NodeEvent **/
}rŽ  rß  }rą  (hOU hPjŲ  ubahZh½ubaubeubeubhXhYhZh[h\}rį  (h^]h_]h`]ha]rā  U	add-nodesrć  ahd]rä  h2auhfK®hghhh]rå  (hj)rę  }rē  (hOX	   Add Nodesrč  hPhRhXhYhZhnh\}ré  (h^]h_]h`]ha]hd]uhfK®hghhh]rź  hqX	   Add Nodesrė  rģ  }rķ  (hOjč  hPję  ubaubh)rī  }rļ  (hOX’   You can attach additional nodes to a load balancer. Assume
``$loadBalancer`` already has two nodes attached to it - ``$serverOne``
and ``$serverTwo`` - and you want to attach a third node to it, say
``$serverThree``, which provides a service on port 8080.hPhRhXhYhZhh\}rš  (h^]h_]h`]ha]hd]uhfK°hghhh]rń  (hqX;   You can attach additional nodes to a load balancer. Assume
rņ  ró  }rō  (hOX;   You can attach additional nodes to a load balancer. Assume
hPjī  ubh)rõ  }rö  (hOX   ``$loadBalancer``h\}r÷  (h^]h_]h`]ha]hd]uhPjī  hh]rų  hqX   $loadBalancerrł  rś  }rū  (hOU hPjõ  ubahZh¤ubhqX(    already has two nodes attached to it - rü  rż  }rž  (hOX(    already has two nodes attached to it - hPjī  ubh)r’  }r   (hOX   ``$serverOne``h\}r  (h^]h_]h`]ha]hd]uhPjī  hh]r  hqX
   $serverOner  r  }r  (hOU hPj’  ubahZh¤ubhqX   
and r  r  }r  (hOX   
and hPjī  ubh)r	  }r
  (hOX   ``$serverTwo``h\}r  (h^]h_]h`]ha]hd]uhPjī  hh]r  hqX
   $serverTwor  r  }r  (hOU hPj	  ubahZh¤ubhqX2    - and you want to attach a third node to it, say
r  r  }r  (hOX2    - and you want to attach a third node to it, say
hPjī  ubh)r  }r  (hOX   ``$serverThree``h\}r  (h^]h_]h`]ha]hd]uhPjī  hh]r  hqX   $serverThreer  r  }r  (hOU hPj  ubahZh¤ubhqX(   , which provides a service on port 8080.r  r  }r  (hOX(   , which provides a service on port 8080.hPjī  ubeubh)r  }r  (hOX   **Important:** Remember to call ``$loadBalancer->addNodes()`` after all
the calls to ``$loadBalancer->addNode()`` as shown below.hPhRhXhYhZhh\}r  (h^]h_]h`]ha]hd]uhfKµhghhh]r   (j$  )r!  }r"  (hOX   **Important:**h\}r#  (h^]h_]h`]ha]hd]uhPj  hh]r$  hqX
   Important:r%  r&  }r'  (hOU hPj!  ubahZj,  ubhqX    Remember to call r(  r)  }r*  (hOX    Remember to call hPj  ubh)r+  }r,  (hOX   ``$loadBalancer->addNodes()``h\}r-  (h^]h_]h`]ha]hd]uhPj  hh]r.  hqX   $loadBalancer->addNodes()r/  r0  }r1  (hOU hPj+  ubahZh¤ubhqX    after all
the calls to r2  r3  }r4  (hOX    after all
the calls to hPj  ubh)r5  }r6  (hOX   ``$loadBalancer->addNode()``h\}r7  (h^]h_]h`]ha]hd]uhPj  hh]r8  hqX   $loadBalancer->addNode()r9  r:  }r;  (hOU hPj5  ubahZh¤ubhqX    as shown below.r<  r=  }r>  (hOX    as shown below.hPj  ubeubhØ)r?  }r@  (hOXx   $address = $serverThree->addresses->private[0]->addr;
$loadBalancer->addNode($address, 8080);
$loadBalancer->addNodes();hPhRhXhYhZh«h\}rA  (h­h®ha]h`]h^]h_]rB  (h°X   phprC  ehd]uhfK½hghhh]rD  h³)rE  }rF  (hOXx   $address = $serverThree->addresses->private[0]->addr;
$loadBalancer->addNode($address, 8080);
$loadBalancer->addNodes();h\}rG  (h^]h_]rH  UotherrI  ah`]ha]hd]uhPj?  hh]rJ  hqXx   $address = $serverThree->addresses->private[0]->addr;
$loadBalancer->addNode($address, 8080);
$loadBalancer->addNodes();rK  rL  }rM  (hOU hPjE  ubahZh½ubaubh)rN  }rO  (hOXb   The ``addNode`` method accepts three more optional parameters, in
addition to the two shown above:hPhRhXhYhZhh\}rP  (h^]h_]h`]ha]hd]uhfK¾hghhh]rQ  (hqX   The rR  rS  }rT  (hOX   The hPjN  ubh)rU  }rV  (hOX   ``addNode``h\}rW  (h^]h_]h`]ha]hd]uhPjN  hh]rX  hqX   addNoderY  rZ  }r[  (hOU hPjU  ubahZh¤ubhqXS    method accepts three more optional parameters, in
addition to the two shown above:r\  r]  }r^  (hOXS    method accepts three more optional parameters, in
addition to the two shown above:hPjN  ubeubj  )r_  }r`  (hOU hPhRhXhYhZj  h\}ra  (h^]h_]h`]ha]hd]uhfKĮhghhh]rb  (j  )rc  }rd  (hOXE   Position \| Description \| Data type \| Required? \| Default value \|j  K hPj_  hXhYhZhfh\}re  (h^]h_]h`]ha]hd]uhfKĮhghhh]rf  hqX@   Position | Description | Data type | Required? | Default value |rg  rh  }ri  (hOXE   Position \| Description \| Data type \| Required? \| Default value \|hPjc  ubaubj  )rj  }rk  (hOXD   ----------- \| --------------- \| --------------\| -------------- \|j  K hPj_  hXhYhZhfh\}rl  (h^]h_]h`]ha]hd]uhfKĀhghhh]rm  hqX@   ----------- | --------------- | --------------| -------------- |rn  ro  }rp  (hOXD   ----------- \| --------------- \| --------------\| -------------- \|hPjj  ubaubeubh)rq  }rr  (hOX  ----------------- \|
| Ā 1 \| IP address of node \| String \| Yes \| - \|
| Ā 2 \| Port used by node's service \| Integer \| Yes \| - \|
| Ā 3 \| Starting condition of node:
| Ā 4 \| Type of node to add:
| Ā 5 \| Weight, between 1 and 100, given to node when distributing
traffic using either the ``WEIGHTED_ROUND_ROBIN`` or the
``WEIGHTED_LEAST_CONNECTIONS`` load balancing algorithm. \| Integer \|
No \| 1 \|hPhRhXhYhZhh\}rs  (h^]h_]h`]ha]hd]uhfKĆhghhh]rt  (hqX  ----------------- |
| Ā 1 | IP address of node | String | Yes | - |
| Ā 2 | Port used by node's service | Integer | Yes | - |
| Ā 3 | Starting condition of node:
| Ā 4 | Type of node to add:
| Ā 5 | Weight, between 1 and 100, given to node when distributing
traffic using either the ru  rv  }rw  (hOX)  ----------------- \|
| Ā 1 \| IP address of node \| String \| Yes \| - \|
| Ā 2 \| Port used by node's service \| Integer \| Yes \| - \|
| Ā 3 \| Starting condition of node:
| Ā 4 \| Type of node to add:
| Ā 5 \| Weight, between 1 and 100, given to node when distributing
traffic using either the hPjq  ubh)rx  }ry  (hOX   ``WEIGHTED_ROUND_ROBIN``h\}rz  (h^]h_]h`]ha]hd]uhPjq  hh]r{  hqX   WEIGHTED_ROUND_ROBINr|  r}  }r~  (hOU hPjx  ubahZh¤ubhqX    or the
r  r  }r  (hOX    or the
hPjq  ubh)r  }r  (hOX   ``WEIGHTED_LEAST_CONNECTIONS``h\}r  (h^]h_]h`]ha]hd]uhPjq  hh]r  hqX   WEIGHTED_LEAST_CONNECTIONSr  r  }r  (hOU hPj  ubahZh¤ubhqX/    load balancing algorithm. | Integer |
No | 1 |r  r  }r  (hOX3    load balancing algorithm. \| Integer \|
No \| 1 \|hPjq  ubeubeubhXhYhZUsystem_messager  h\}r  (h^]UlevelKha]h`]UsourcehYh_]hd]UlineKĀUtypeUWARNINGr  uhfKĀhghhh]r  h)r  }r  (hOU h\}r  (h^]h_]h`]ha]hd]uhPhMhh]r  hqX%   Line block ends without a blank line.r  r  }r  (hOU hPj  ubahZhubaubhL)r  }r  (hOU hPjO  hXhYhZj  h\}r  (h^]UlevelKha]h`]UsourcehYh_]hd]UlineMOUtypej  uhfMOhghhh]r  h)r  }r  (hOU h\}r  (h^]h_]h`]ha]hd]uhPj  hh]r  hqX%   Line block ends without a blank line.r  r   }r”  (hOU hPj  ubahZhubaubeUcurrent_sourcer¢  NU
decorationr£  NUautofootnote_startr¤  KUnameidsr„  }r¦  (hj  hj±  hjD	  h	j  h
j  hjj  hhchj„	  hj
  hjS  hj|  hjŽ  hj!  hj  hjń  hj  hj  hj7  hj  hjM  hj\  hj$  hj¬  hj.
  hjš  hjE  h j6  h!jü  h"jB  h#jŽ  h$jp	  h%jq  h&j~  h'jb
  h(jĶ  h)jS  h*jĖ  h+jĀ  h,j>  h-j  h.jÆ  h/jŹ  h0je  h1j	  h2jć  h3jņ	  h4hĀh5j°  h6jķ  h7j¶  h8jé  h9hyh:j  h;jÆ  h<j`  h=j  h>j  h?hh@jē  hAj&	  hBjŌ	  hCj³  hDj	  hEjf  hFhčhGj
  uhh]r§  hVahOU UtransformerrØ  NUfootnote_refsr©  }rŖ  Urefnamesr«  }r¬  Usymbol_footnotesr­  ]r®  Uautofootnote_refsrÆ  ]r°  Usymbol_footnote_refsr±  ]r²  U	citationsr³  ]r“  hghUcurrent_linerµ  NUtransform_messagesr¶  ]r·  Ureporterrø  NUid_startr¹  KUautofootnotesrŗ  ]r»  Ucitation_refsr¼  }r½  Uindirect_targetsr¾  ]ræ  UsettingsrĄ  (cdocutils.frontend
Values
rĮ  orĀ  }rĆ  (Ufootnote_backlinksrÄ  KUrecord_dependenciesrÅ  NUrfc_base_urlrĘ  Uhttp://tools.ietf.org/html/rĒ  U	tracebackrČ  Upep_referencesrÉ  NUstrip_commentsrŹ  NUtoc_backlinksrĖ  jĒ  Ulanguage_coderĢ  UenrĶ  U	datestamprĪ  NUreport_levelrĻ  KU_destinationrŠ  NU
halt_levelrŃ  KUstrip_classesrŅ  NhnNUerror_encoding_error_handlerrÓ  UbackslashreplacerŌ  UdebugrÕ  NUembed_stylesheetrÖ  Uoutput_encoding_error_handlerr×  UstrictrŲ  Usectnum_xformrŁ  KUdump_transformsrŚ  NUdocinfo_xformrŪ  KUwarning_streamrÜ  NUpep_file_url_templaterŻ  Upep-%04drŽ  Uexit_status_levelrß  KUconfigrą  NUstrict_visitorrį  NUcloak_email_addressesrā  Utrim_footnote_reference_spacerć  Uenvrä  NUdump_pseudo_xmlrå  NUexpose_internalsrę  NUsectsubtitle_xformrē  Usource_linkrč  NUrfc_referencesré  NUoutput_encodingrź  Uutf-8rė  U
source_urlrģ  NUinput_encodingrķ  U	utf-8-sigrī  U_disable_configrļ  NU	id_prefixrš  U U	tab_widthrń  KUerror_encodingrņ  UUTF-8ró  U_sourcerō  hYUgettext_compactrõ  U	generatorrö  NUdump_internalsr÷  NUsmart_quotesrų  Upep_base_urlrł  Uhttp://www.python.org/dev/peps/rś  Usyntax_highlightrū  Ulongrü  Uinput_encoding_error_handlerrż  jŲ  Uauto_id_prefixrž  Uidr’  Udoctitle_xformr   Ustrip_elements_with_classesr  NU_config_filesr  ]Ufile_insertion_enabledr  Uraw_enabledr  KUdump_settingsr  NubUsymbol_footnote_startr  K Uidsr  }r  (hĀh¾jM  jI  jf  jb  j	  j	  j  j  j°  j¬  j$  j   j  j  jq  jm  jĖ  jĒ  hčhäjp	  jl	  je  ja  j7  j3  jŽ  jŚ  j>  j:  j|  jx  j  j  j„	  j”	  j  j  jš  jģ  j`  j\  jé  jå  jĶ  jÉ  jń  jķ  j6  j2  j  j  jŌ	  jŠ	  jB  hTjS  jO  j  j  jŽ  jŚ  j	  j	  j.
  j*
  j¶  j²  jE  jA  j
  j
  j¬  jØ  j
  j|
  j  j  jĀ  j¾  j³  jÆ  jŹ  jĘ  jS  jO  jD	  j@	  jÆ  j«  j  j  j\  jX  j  j  j~  jz  j!  j  jj  jf  j  j  hyhujü  jų  jć  hRj&	  j"	  j  j~  hhjē  jć  jķ  jé  hchVjņ	  jī	  j±  j­  jb
  j^
  jÆ  j«  uUsubstitution_namesr	  }r
  hZhgh\}r  (h^]ha]h`]UsourcehYh_]hd]uU	footnotesr  ]r  Urefidsr  }r  ub.