Location: PHPKode > projects > php-opencloud > php-opencloud-master/docs/api/objectstore.html
<html xmlns="http://www.w3.org/1999/xhtml"><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta><link rel="stylesheet" href="css/black-tie/jquery-ui-1.8.2.custom.css" type="text/css"></link><link rel="stylesheet" href="css/jquery.treeview.css" type="text/css"></link><link rel="stylesheet" href="css/default.css" type="text/css"></link><script type="text/javascript" src="js/jquery-1.4.2.min.js"></script><script type="text/javascript" src="js/jquery-ui-1.8.2.custom.min.js"></script><script type="text/javascript" src="js/jquery.cookie.js"></script><script type="text/javascript" src="js/jquery.treeview.js"></script></head><body><script type="text/javascript">
          $(document).ready(function()
          {
            $(".filetree").treeview({
              animated: "fast",
              collapsed: true,
              persist: "cookie"
            });
          });

          function jq_escape(myid)
          {
            return '#' + myid.replace(/(#|\$|:|\.|\(|\))/g, '\\$1');
          }

          function applySearchHash()
          {
            hashes = document.location.hash.substr(1, document.location.hash.length);
            if (hashes != "")
            {
              hashes = hashes.split('/');
              $.each(hashes, function(index, hash)
              {
                node = $(jq_escape(hash));
                switch (node[0].nodeName)
                {
                  case 'DIV':
                    tabs = node.parents('.tabs');
                    $(tabs[0]).tabs('select', '#' + hash)
                    break;
                  case 'A':
                    window.scrollTo(0, node.offset().top);
                    break;
                }
              });
            }
          }

          jQuery(function()
          {
            jQuery(".tabs").tabs();
            applySearchHash();
          });
        </script><div id="maincontainer"><div id="header"><h1>
                phpDocumentor
              <img src="images/top-stopper.png"></img></h1></div><ul xmlns="" id="menu">
<li><a href="graph.html">Class diagram</a></li>
<li><a href="markers.html">TODO / Markers</a></li>
<li><a href="parse_markers.html">Errors</a></li>
</ul>
<div id="content_container"><div xmlns="" id="content">
<h1>objectstore.php</h1>
<div class="file_menu">
<a href="#includes">Includes</a> |<a href="#constants">Constants</a> |<a href="#classes">Classes</a> |</div>
<div class="properties">
<h1>Properties</h1>
<label class="property-key">author</label><div class="property-value"></div>
<label class="property-key">copyright</label><div class="property-value"></div>
<label class="property-key">package</label><div class="property-value"></div>
<label class="property-key">version</label><div class="property-value"></div>
</div>
<h2>Description</h2>The Object Storage service<br><br><a name="includes"></a><h2>Includes</h2> <span class="nb-faded-text">(Require Once)</span><br> <span class="nb-faded-text">(Require Once)</span><br><a name="constants"></a><h2>Constants</h2>
<a id="::SWIFT_MAX_OBJECT_SIZE"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>SWIFT_MAX_OBJECT_SIZE<span class="nb-faded-text">
         = 5 * 1024 * 1024 * 1024 + 1</span>
</h3>
<em></em><br><br>
</div>
<a name="classes"></a><h2>Classes</h2>
<div id="ObjectStoreBase" class="class">
<h3>ObjectStoreBase</h3>
<div class="properties">
<h1>Properties</h1>
<label class="property-key">Extends</label><div class="property-value">
<a href="service.html#%5COpenCloud%5CService">\OpenCloud\Service</a>
         </div>
<label class="property-key">Implements</label><div class="property-value"> 
      </div>
<label class="property-key">author</label><div class="property-value">
<a title="" href="mailto:hide@address.com">Glen Campbell</a>
             
        </div>
<label class="property-key">Abstract</label><div class="property-value">No 
      </div>
<label class="property-key">Final</label><div class="property-value">No 
      </div>
</div>
<h4>Description</h4>
<em>A base class for common code shared between the ObjectStore and ObjectStoreCDN
objects</em><br><p>Because Service is an abstract class, it cannot be called directly. Provider
services such as Rackspace Cloud Servers or OpenStack Swift are each
subclassed from Service.</p><br><div id="methods_ObjectStoreBase">
<h4>Methods</h4>
<a style="font-style: italic;" href="#ObjectStoreBase::CheckAttributePrefix()">CheckAttributePrefix</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::CheckJsonError()">CheckJsonError</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::Collection()">Collection</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::Container()">Container</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::ContainerList()">ContainerList</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::Extensions()">Extensions</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::GetHttpRequestObject()">GetHttpRequestObject</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::GetMetaUrl()">GetMetaUrl</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::Limits()">Limits</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::MakeQueryString()">MakeQueryString</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::Name()">Name</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::Region()">Region</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::Request()">Request</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::SetProperty()">SetProperty</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::Url()">Url</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::__construct()">__construct</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::__set()">__set</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::debug()">debug</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::get_endpoint()">get_endpoint</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::namespaces()">namespaces</a>,
      <a style="font-style: italic;" href="#ObjectStoreBase::to_string()">to_string</a>,
      <div class="method">
<a id="ObjectStoreBase::CheckAttributePrefix()"></a><h3>CheckAttributePrefix<span class="nb-faded-text">(
          string
             
            $property,
          array
             
            $prefixes
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">boolean</span>
</h3>
<h4>Description</h4>
<em>Checks the attribute $property and only permits it if the prefix is
in the specified $prefixes array</em><br><small><p>This is to support extension namespaces in some services.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the attribute</p></td>
<td></td>
</tr>
<tr>
<td>$prefixes</td>
<td style="white-space: normal;">array</td>
<td><p>a list of prefixes</p></td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>boolean</td>
<td>TRUE if valid; FALSE if not</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::CheckAttributePrefix()"><small>\OpenCloud\Base::CheckAttributePrefix()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::CheckAttributePrefix()"><small>\OpenCloud\Service::CheckAttributePrefix()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::CheckJsonError()"></a><h3>CheckJsonError<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">boolean</span>
</h3>
<h4>Description</h4>
<em>Checks the most recent JSON operation for errors</em><br><small><p>This function should be called after any <code>json_*()</code> function call.
This ensures that nasty JSON errors are detected and the proper
exception thrown.</p>

<p>Example:
  <code>$obj = json_decode($string);</code>
  <code>if (check_json_error()) do something ...</code></p></small><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>boolean</td>
<td>TRUE if an error occurred, FALSE if none</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>throws</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::CheckJsonError()"><small>\OpenCloud\Base::CheckJsonError()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::CheckJsonError()"><small>\OpenCloud\Service::CheckJsonError()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::Collection()"></a><h3>Collection<span class="nb-faded-text">(
          string
             
            $class,
          string
             
            $url
            = NULL,
          mixed
             
            $parent
            = NULL,
          array
             
            $parm
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\Collection</span>
</h3>
<h4>Description</h4>
<em>returns a collection of objects</em><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$class</td>
<td style="white-space: normal;">string</td>
<td><p>the class of objects to fetch</p></td>
<td></td>
</tr>
<tr>
<td>$url</td>
<td style="white-space: normal;">string</td>
<td><p>(optional) the URL to retrieve</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$parent</td>
<td style="white-space: normal;">mixed</td>
<td><p>(optional) the parent service/object</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$parm</td>
<td style="white-space: normal;">array</td>
<td><p>(optional) array of key/value pairs to use as
    query strings</p>
</td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\Collection</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Collection()"><small>\OpenCloud\Service::Collection()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::Container()"></a><h3>Container<span class="nb-faded-text">(
          mixed
             
            $cdata
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\ObjectStore\Container</span>
</h3>
<h4>Description</h4>
<em>Creates a Container object associated with the ObjectStore</em><br><small><p>This is a factory method and should generally be used instead of
calling the Container class directly.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$cdata</td>
<td style="white-space: normal;">mixed</td>
<td><p>(optional) the name of the container (if string)
     or an object from which to set values</p>
</td>
<td>NULL</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\ObjectStore\Container</td>
<td></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::ContainerList()"></a><h3>ContainerList<span class="nb-faded-text">(
          array
             
            $filter
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\ObjectStore\ContainerList</span>
</h3>
<h4>Description</h4>
<em>Returns a Collection of Container objects</em><br><small><p>This is a factory method and should generally be used instead of
calling the ContainerList class directly.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$filter</td>
<td style="white-space: normal;">array</td>
<td><p>a list of key-value pairs to pass to the
     service to filter the results</p>
</td>
<td>array()</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\ObjectStore\ContainerList</td>
<td></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::Extensions()"></a><h3>Extensions<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns the /extensions for the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td>of objects</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Extensions()"><small>\OpenCloud\Service::Extensions()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::GetHttpRequestObject()"></a><h3>GetHttpRequestObject<span class="nb-faded-text">(
          
             
            $url,
          
             
            $method
            = 'GET',
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Returns a class that implements the HttpRequest interface.</em><br><small><p>This can be stubbed out for unit testing and avoid making live calls.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$url</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td></td>
</tr>
<tr>
<td>$method</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td>'GET'</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::GetHttpRequestObject()"><small>\OpenCloud\Base::GetHttpRequestObject()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::GetHttpRequestObject()"><small>\OpenCloud\Service::GetHttpRequestObject()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::GetMetaUrl()"></a><h3>GetMetaUrl<span class="nb-faded-text">(
          string
             
            $resource,
          
          )
        </span>
        :
        <span class="nb-faded-text">\stdClass</span>
</h3>
<h4>Description</h4>
<em>Constructs a specified URL from the subresource</em><br><small><p>Given a subresource (e.g., "extensions"), this constructs the proper
URL and retrieves the resource.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$resource</td>
<td style="white-space: normal;">string</td>
<td><p>The resource requested; should NOT have slashes
     at the beginning or end</p></td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\stdClass</td>
<td>object</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::GetMetaUrl()"><small>\OpenCloud\Service::GetMetaUrl()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::Limits()"></a><h3>Limits<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns the /limits for the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td>of limits</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Limits()"><small>\OpenCloud\Service::Limits()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::MakeQueryString()"></a><h3>MakeQueryString<span class="nb-faded-text">(
          array
             
            $arr,
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Converts an array of key/value pairs into a single query string</em><br><small><p>For example, array('A'=>1,'B'=>2) would become 'A=1&amp;B=2'.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$arr</td>
<td style="white-space: normal;">array</td>
<td><p>array of key/value pairs</p>
</td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::MakeQueryString()"><small>\OpenCloud\Base::MakeQueryString()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::MakeQueryString()"><small>\OpenCloud\Service::MakeQueryString()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::Name()"></a><h3>Name<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>returns the serviceName associated with the service</em><br><small><p>This is used by DNS for PTR record lookups</p></small><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Name()"><small>\OpenCloud\Service::Name()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::Region()"></a><h3>Region<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>returns the Region associated with the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Region()"><small>\OpenCloud\Service::Region()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::Request()"></a><h3>Request<span class="nb-faded-text">(
          string
             
            $url,
          string
             
            $method
            = 'GET',
          array
             
            $headers
            = array(),
          string
             
            $body
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\HttpResult</span>
</h3>
<h4>Description</h4>
<em>Performs an authenticated request</em><br><small><p>This method handles the addition of authentication headers to each
request. It always adds the X-Auth-Token: header and will add the
X-Auth-Project-Id: header if there is a tenant defined on the
connection.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$url</td>
<td style="white-space: normal;">string</td>
<td><p>The URL of the request</p></td>
<td></td>
</tr>
<tr>
<td>$method</td>
<td style="white-space: normal;">string</td>
<td><p>The HTTP method (defaults to "GET")</p>
</td>
<td>'GET'</td>
</tr>
<tr>
<td>$headers</td>
<td style="white-space: normal;">array</td>
<td><p>An associative array of headers</p></td>
<td>array()</td>
</tr>
<tr>
<td>$body</td>
<td style="white-space: normal;">string</td>
<td><p>An optional body for POST/PUT requests</p>
</td>
<td>NULL</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\HttpResult</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Request()"><small>\OpenCloud\Service::Request()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::SetProperty()"></a><h3>SetProperty<span class="nb-faded-text">(
          string
             
            $property,
          mixed
             
            $value,
          array
             
            $prefixes
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Sets an extended (unrecognized) property on the current object</em><br><small><p>If RAXSDK_STRICT_PROPERTY_CHECKS is TRUE, then the prefix of the
property name must appear in the $prefixes array, or else an
exception is thrown.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the property name</p></td>
<td></td>
</tr>
<tr>
<td>$value</td>
<td style="white-space: normal;">mixed</td>
<td><p>the value of the property</p></td>
<td></td>
</tr>
<tr>
<td>$prefixes</td>
<td style="white-space: normal;">array</td>
<td><p>optional list of supported prefixes</p></td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>throws</td>
<td>if strict checks are on and
     the property prefix is not in the list of prefixes.</td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::SetProperty()"><small>\OpenCloud\Base::SetProperty()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::SetProperty()"><small>\OpenCloud\Service::SetProperty()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::Url()"></a><h3>Url<span class="nb-faded-text">(
          
             
            $param
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Returns the URL of the service, selected from the connection's
serviceCatalog</em><br><small><p>The assumption is that nearly all objects will have a URL; at this
base level, it simply throws an exception to enforce the idea that
subclasses need to define this method.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$param</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td>array()</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>throws</td>
<td></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::__construct()"></a><h3>__construct<span class="nb-faded-text">(
          <a href="openstack.html#%5COpenCloud%5COpenStack">\OpenCloud\OpenStack</a>
             
            $conn,
          string
             
            $type,
          string
             
            $name,
          string
             
            $region,
          string
             
            $urltype
            = RAXSDK_URL_PUBLIC,
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Creates a service on the specified connection</em><br><small><p>Usage: <code>$x = new Service($conn, $type, $name, $region, $urltype);</code>
The service's URL is defined in the OpenStack's serviceCatalog; it
uses the $type, $name, $region, and $urltype to find the proper URL
and set it. If it cannot find a URL in the service catalog that matches
the criteria, then an exception is thrown.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$conn</td>
<td style="white-space: normal;"><a href="openstack.html#%5COpenCloud%5COpenStack">\OpenCloud\OpenStack</a></td>
<td><ul>
<li>a Connection object</li>
</ul>
</td>
<td></td>
</tr>
<tr>
<td>$type</td>
<td style="white-space: normal;">string</td>
<td><ul>
<li>the service type (e.g., "compute")</li>
</ul>
</td>
<td></td>
</tr>
<tr>
<td>$name</td>
<td style="white-space: normal;">string</td>
<td><ul>
<li>the service name (e.g., "cloudServersOpenStack")</li>
</ul>
</td>
<td></td>
</tr>
<tr>
<td>$region</td>
<td style="white-space: normal;">string</td>
<td><ul>
<li>the region (e.g., "ORD")</li>
</ul>
</td>
<td></td>
</tr>
<tr>
<td>$urltype</td>
<td style="white-space: normal;">string</td>
<td><ul>
<li>the specified URL from the catalog
 (e.g., "publicURL")</li>
</ul>
</td>
<td>RAXSDK_URL_PUBLIC</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::__construct()"><small>\OpenCloud\Service::__construct()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::__set()"></a><h3>__set<span class="nb-faded-text">(
          string
             
            $property,
          mixed
             
            $value,
          
          )
        </span>
        :
        <span class="nb-faded-text">void</span>
</h3>
<h4>Description</h4>
<em>Sets extended attributes on an object and validates them</em><br><small><p>This function is provided to ensure that attributes cannot
arbitrarily added to an object. If this function is called, it
means that the attribute is not defined on the object, and thus
an exception is thrown.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the attribute</p></td>
<td></td>
</tr>
<tr>
<td>$value</td>
<td style="white-space: normal;">mixed</td>
<td><p>the value of the attribute</p></td>
<td></td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>void</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::__set()"><small>\OpenCloud\Base::__set()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::__set()"><small>\OpenCloud\Service::__set()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::debug()"></a><h3>debug<span class="nb-faded-text">(
          string
             
            $msg,
          mixed
             
            $p1
            = NULL,
          mixed
             
            $p2
            = NULL,
          mixed
             
            $p3
            = NULL,
          mixed
             
            $p4
            = NULL,
          mixed
             
            $p5
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">void</span>
</h3>
<h4>Description</h4>
<em>Displays a debug message if $RAXSDK_DEBUG is TRUE</em><br><small><p>The primary parameter is a string in sprintf() format, and it can accept
up to five optional parameters. It prints the debug message, prefixed
with "Debug:" and the class name, to the standard output device.</p>

<p>Example:
  <code>$this-&gt;debug('Starting execution of %s', get_class($this))</code></p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$msg</td>
<td style="white-space: normal;">string</td>
<td><p>The message string (required); can be in
     sprintf() format.</p>
</td>
<td></td>
</tr>
<tr>
<td>$p1</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p2</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p3</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p4</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p5</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>void</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::debug()"><small>\OpenCloud\Base::debug()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::debug()"><small>\OpenCloud\Service::debug()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::get_endpoint()"></a><h3>get_endpoint<span class="nb-faded-text">(
          string
             
            $type,
          string
             
            $name,
          string
             
            $region,
          string
             
            $urltype
            = 'publicURL',
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Given a service type, name, and region, return the url</em><br><small><p>This function ensures that services are represented by an entry in the
service catalog, and NOT by an arbitrarily-constructed URL.</p>

<p>Note that it will always return the first match found in the
service catalog (there <em>should</em> be only one, but you never know...)</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$type</td>
<td style="white-space: normal;">string</td>
<td><p>The OpenStack service type ("compute" or
     "object-store", for example</p>
</td>
<td></td>
</tr>
<tr>
<td>$name</td>
<td style="white-space: normal;">string</td>
<td><p>The name of the service in the service catlog</p></td>
<td></td>
</tr>
<tr>
<td>$region</td>
<td style="white-space: normal;">string</td>
<td><p>The region of the service</p></td>
<td></td>
</tr>
<tr>
<td>$urltype</td>
<td style="white-space: normal;">string</td>
<td><p>The URL type; defaults to "publicURL"</p>
</td>
<td>'publicURL'</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td>The URL of the service</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::get_endpoint()"><small>\OpenCloud\Service::get_endpoint()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::namespaces()"></a><h3>namespaces<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns a list of supported namespaces</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::namespaces()"><small>\OpenCloud\Service::namespaces()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreBase::to_string()"></a><h3>to_string<span class="nb-faded-text">(
          mixed
             
            $x,
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Converts a value to an HTTP-displayable string form</em><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$x</td>
<td style="white-space: normal;">mixed</td>
<td><p>a value to convert</p></td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::to_string()"><small>\OpenCloud\Base::to_string()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::to_string()"><small>\OpenCloud\Service::to_string()</small></a></td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="properties_ObjectStoreBase">
<h4>Properties</h4>
<a href="#ObjectStoreBase::%24_errors">$_errors</a>,
      <a href="#ObjectStoreBase::%24_namespaces">$_namespaces</a>,
      <a href="#ObjectStoreBase::%24conn">$conn</a>,
      <a href="#ObjectStoreBase::%24http_headers">$http_headers</a>,
      <a href="#ObjectStoreBase::%24service_name">$service_name</a>,
      <a href="#ObjectStoreBase::%24service_region">$service_region</a>,
      <a href="#ObjectStoreBase::%24service_type">$service_type</a>,
      <a href="#ObjectStoreBase::%24service_url">$service_url</a>,
      <div class="method">
<a id="ObjectStoreBase::$_errors"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$_errors
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreBase::$_namespaces"></a><h3>
<span class="nb-faded-text"> 
          protected 
          </span>$_namespaces
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreBase::$conn"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$conn
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreBase::$http_headers"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$http_headers
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreBase::$service_name"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_name
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreBase::$service_region"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_region
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreBase::$service_type"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_type
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreBase::$service_url"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_url
          =
          </h3>
<em></em><br>
</div>
</div>
<div id="constants_ObjectStoreBase">
<h4>Constants</h4>
<a id="ObjectStoreBase::MAX_CONTAINER_NAME_LEN"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_CONTAINER_NAME_LEN<span class="nb-faded-text">
         = 256</span>
</h3>
<em></em><br><br>
</div>
<a id="ObjectStoreBase::MAX_OBJECT_NAME_LEN"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_OBJECT_NAME_LEN<span class="nb-faded-text">
         = 1024</span>
</h3>
<em></em><br><br>
</div>
<a id="ObjectStoreBase::MAX_OBJECT_SIZE"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_OBJECT_SIZE<span class="nb-faded-text">
         = SWIFT_MAX_OBJECT_SIZE</span>
</h3>
<em></em><br><br>
</div>
</div>
<div style="clear: both"></div>
</div>
<div id="ObjectStore" class="class">
<h3>ObjectStore</h3>
<div class="properties">
<h1>Properties</h1>
<label class="property-key">Extends</label><div class="property-value">
<a href="objectstore.html#%5COpenCloud%5CObjectStoreBase">\OpenCloud\ObjectStoreBase</a>
         </div>
<label class="property-key">Implements</label><div class="property-value"> 
      </div>
<label class="property-key">author</label><div class="property-value">
<a title="" href="mailto:hide@address.com">Glen Campbell</a>
             
        </div>
<label class="property-key">Abstract</label><div class="property-value">No 
      </div>
<label class="property-key">Final</label><div class="property-value">No 
      </div>
</div>
<h4>Description</h4>
<em>ObjectStore - this defines the object-store (Cloud Files) service.</em><br><p>Usage:</p>

<pre><code>     $conn = new OpenStack('{URL}', '{SECRET}');
     $ostore = new OpenCloud\ObjectStore(
         $conn,
         'service name',
         'service region',
         'URL type'
     );
</code></pre>

<p>Default values for service name, service region, and urltype can be
provided via the global constants RAXSDK_OBJSTORE_NAME,
RAXSDK_OBJSTORE_REGION, and RAXSDK_OBJSTORE_URLTYPE.</p><br><div id="methods_ObjectStore">
<h4>Methods</h4>
<a style="font-style: italic;" href="#ObjectStore::CDN()">CDN</a>,
      <a style="font-style: italic;" href="#ObjectStore::CheckAttributePrefix()">CheckAttributePrefix</a>,
      <a style="font-style: italic;" href="#ObjectStore::CheckJsonError()">CheckJsonError</a>,
      <a style="font-style: italic;" href="#ObjectStore::Collection()">Collection</a>,
      <a style="font-style: italic;" href="#ObjectStore::Container()">Container</a>,
      <a style="font-style: italic;" href="#ObjectStore::ContainerList()">ContainerList</a>,
      <a style="font-style: italic;" href="#ObjectStore::Extensions()">Extensions</a>,
      <a style="font-style: italic;" href="#ObjectStore::GetHttpRequestObject()">GetHttpRequestObject</a>,
      <a style="font-style: italic;" href="#ObjectStore::GetMetaUrl()">GetMetaUrl</a>,
      <a style="font-style: italic;" href="#ObjectStore::Limits()">Limits</a>,
      <a style="font-style: italic;" href="#ObjectStore::MakeQueryString()">MakeQueryString</a>,
      <a style="font-style: italic;" href="#ObjectStore::Name()">Name</a>,
      <a style="font-style: italic;" href="#ObjectStore::Region()">Region</a>,
      <a style="font-style: italic;" href="#ObjectStore::Request()">Request</a>,
      <a style="font-style: italic;" href="#ObjectStore::SetProperty()">SetProperty</a>,
      <a style="font-style: italic;" href="#ObjectStore::Url()">Url</a>,
      <a style="font-style: italic;" href="#ObjectStore::__construct()">__construct</a>,
      <a style="font-style: italic;" href="#ObjectStore::__set()">__set</a>,
      <a style="font-style: italic;" href="#ObjectStore::debug()">debug</a>,
      <a style="font-style: italic;" href="#ObjectStore::get_endpoint()">get_endpoint</a>,
      <a style="font-style: italic;" href="#ObjectStore::namespaces()">namespaces</a>,
      <a style="font-style: italic;" href="#ObjectStore::to_string()">to_string</a>,
      <div class="method">
<a id="ObjectStore::CDN()"></a><h3>CDN<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>returns the CDN object</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::CheckAttributePrefix()"></a><h3>CheckAttributePrefix<span class="nb-faded-text">(
          string
             
            $property,
          array
             
            $prefixes
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">boolean</span>
</h3>
<h4>Description</h4>
<em>Checks the attribute $property and only permits it if the prefix is
in the specified $prefixes array</em><br><small><p>This is to support extension namespaces in some services.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the attribute</p></td>
<td></td>
</tr>
<tr>
<td>$prefixes</td>
<td style="white-space: normal;">array</td>
<td><p>a list of prefixes</p></td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>boolean</td>
<td>TRUE if valid; FALSE if not</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::CheckAttributePrefix()"><small>\OpenCloud\Base::CheckAttributePrefix()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::CheckAttributePrefix()"><small>\OpenCloud\Service::CheckAttributePrefix()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::CheckAttributePrefix()"><small>\OpenCloud\ObjectStoreBase::CheckAttributePrefix()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::CheckJsonError()"></a><h3>CheckJsonError<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">boolean</span>
</h3>
<h4>Description</h4>
<em>Checks the most recent JSON operation for errors</em><br><small><p>This function should be called after any <code>json_*()</code> function call.
This ensures that nasty JSON errors are detected and the proper
exception thrown.</p>

<p>Example:
  <code>$obj = json_decode($string);</code>
  <code>if (check_json_error()) do something ...</code></p></small><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>boolean</td>
<td>TRUE if an error occurred, FALSE if none</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>throws</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::CheckJsonError()"><small>\OpenCloud\Base::CheckJsonError()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::CheckJsonError()"><small>\OpenCloud\Service::CheckJsonError()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::CheckJsonError()"><small>\OpenCloud\ObjectStoreBase::CheckJsonError()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::Collection()"></a><h3>Collection<span class="nb-faded-text">(
          string
             
            $class,
          string
             
            $url
            = NULL,
          mixed
             
            $parent
            = NULL,
          array
             
            $parm
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\Collection</span>
</h3>
<h4>Description</h4>
<em>returns a collection of objects</em><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$class</td>
<td style="white-space: normal;">string</td>
<td><p>the class of objects to fetch</p></td>
<td></td>
</tr>
<tr>
<td>$url</td>
<td style="white-space: normal;">string</td>
<td><p>(optional) the URL to retrieve</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$parent</td>
<td style="white-space: normal;">mixed</td>
<td><p>(optional) the parent service/object</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$parm</td>
<td style="white-space: normal;">array</td>
<td><p>(optional) array of key/value pairs to use as
    query strings</p>
</td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\Collection</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Collection()"><small>\OpenCloud\Service::Collection()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Collection()"><small>\OpenCloud\ObjectStoreBase::Collection()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::Container()"></a><h3>Container<span class="nb-faded-text">(
          mixed
             
            $cdata
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\ObjectStore\Container</span>
</h3>
<h4>Description</h4>
<em>Creates a Container object associated with the ObjectStore</em><br><small><p>This is a factory method and should generally be used instead of
calling the Container class directly.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$cdata</td>
<td style="white-space: normal;">mixed</td>
<td><p>(optional) the name of the container (if string)
     or an object from which to set values</p>
</td>
<td>NULL</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\ObjectStore\Container</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Container()"><small>\OpenCloud\ObjectStoreBase::Container()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::ContainerList()"></a><h3>ContainerList<span class="nb-faded-text">(
          array
             
            $filter
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\ObjectStore\ContainerList</span>
</h3>
<h4>Description</h4>
<em>Returns a Collection of Container objects</em><br><small><p>This is a factory method and should generally be used instead of
calling the ContainerList class directly.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$filter</td>
<td style="white-space: normal;">array</td>
<td><p>a list of key-value pairs to pass to the
     service to filter the results</p>
</td>
<td>array()</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\ObjectStore\ContainerList</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::ContainerList()"><small>\OpenCloud\ObjectStoreBase::ContainerList()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::Extensions()"></a><h3>Extensions<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns the /extensions for the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td>of objects</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Extensions()"><small>\OpenCloud\Service::Extensions()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Extensions()"><small>\OpenCloud\ObjectStoreBase::Extensions()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::GetHttpRequestObject()"></a><h3>GetHttpRequestObject<span class="nb-faded-text">(
          
             
            $url,
          
             
            $method
            = 'GET',
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Returns a class that implements the HttpRequest interface.</em><br><small><p>This can be stubbed out for unit testing and avoid making live calls.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$url</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td></td>
</tr>
<tr>
<td>$method</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td>'GET'</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::GetHttpRequestObject()"><small>\OpenCloud\Base::GetHttpRequestObject()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::GetHttpRequestObject()"><small>\OpenCloud\Service::GetHttpRequestObject()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::GetHttpRequestObject()"><small>\OpenCloud\ObjectStoreBase::GetHttpRequestObject()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::GetMetaUrl()"></a><h3>GetMetaUrl<span class="nb-faded-text">(
          string
             
            $resource,
          
          )
        </span>
        :
        <span class="nb-faded-text">\stdClass</span>
</h3>
<h4>Description</h4>
<em>Constructs a specified URL from the subresource</em><br><small><p>Given a subresource (e.g., "extensions"), this constructs the proper
URL and retrieves the resource.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$resource</td>
<td style="white-space: normal;">string</td>
<td><p>The resource requested; should NOT have slashes
     at the beginning or end</p></td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\stdClass</td>
<td>object</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::GetMetaUrl()"><small>\OpenCloud\Service::GetMetaUrl()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::GetMetaUrl()"><small>\OpenCloud\ObjectStoreBase::GetMetaUrl()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::Limits()"></a><h3>Limits<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns the /limits for the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td>of limits</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Limits()"><small>\OpenCloud\Service::Limits()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Limits()"><small>\OpenCloud\ObjectStoreBase::Limits()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::MakeQueryString()"></a><h3>MakeQueryString<span class="nb-faded-text">(
          array
             
            $arr,
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Converts an array of key/value pairs into a single query string</em><br><small><p>For example, array('A'=>1,'B'=>2) would become 'A=1&amp;B=2'.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$arr</td>
<td style="white-space: normal;">array</td>
<td><p>array of key/value pairs</p>
</td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::MakeQueryString()"><small>\OpenCloud\Base::MakeQueryString()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::MakeQueryString()"><small>\OpenCloud\Service::MakeQueryString()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::MakeQueryString()"><small>\OpenCloud\ObjectStoreBase::MakeQueryString()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::Name()"></a><h3>Name<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>returns the serviceName associated with the service</em><br><small><p>This is used by DNS for PTR record lookups</p></small><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Name()"><small>\OpenCloud\Service::Name()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Name()"><small>\OpenCloud\ObjectStoreBase::Name()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::Region()"></a><h3>Region<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>returns the Region associated with the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Region()"><small>\OpenCloud\Service::Region()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Region()"><small>\OpenCloud\ObjectStoreBase::Region()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::Request()"></a><h3>Request<span class="nb-faded-text">(
          string
             
            $url,
          string
             
            $method
            = 'GET',
          array
             
            $headers
            = array(),
          string
             
            $body
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\HttpResult</span>
</h3>
<h4>Description</h4>
<em>Performs an authenticated request</em><br><small><p>This method handles the addition of authentication headers to each
request. It always adds the X-Auth-Token: header and will add the
X-Auth-Project-Id: header if there is a tenant defined on the
connection.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$url</td>
<td style="white-space: normal;">string</td>
<td><p>The URL of the request</p></td>
<td></td>
</tr>
<tr>
<td>$method</td>
<td style="white-space: normal;">string</td>
<td><p>The HTTP method (defaults to "GET")</p>
</td>
<td>'GET'</td>
</tr>
<tr>
<td>$headers</td>
<td style="white-space: normal;">array</td>
<td><p>An associative array of headers</p></td>
<td>array()</td>
</tr>
<tr>
<td>$body</td>
<td style="white-space: normal;">string</td>
<td><p>An optional body for POST/PUT requests</p>
</td>
<td>NULL</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\HttpResult</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Request()"><small>\OpenCloud\Service::Request()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Request()"><small>\OpenCloud\ObjectStoreBase::Request()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::SetProperty()"></a><h3>SetProperty<span class="nb-faded-text">(
          string
             
            $property,
          mixed
             
            $value,
          array
             
            $prefixes
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Sets an extended (unrecognized) property on the current object</em><br><small><p>If RAXSDK_STRICT_PROPERTY_CHECKS is TRUE, then the prefix of the
property name must appear in the $prefixes array, or else an
exception is thrown.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the property name</p></td>
<td></td>
</tr>
<tr>
<td>$value</td>
<td style="white-space: normal;">mixed</td>
<td><p>the value of the property</p></td>
<td></td>
</tr>
<tr>
<td>$prefixes</td>
<td style="white-space: normal;">array</td>
<td><p>optional list of supported prefixes</p></td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>throws</td>
<td>if strict checks are on and
     the property prefix is not in the list of prefixes.</td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::SetProperty()"><small>\OpenCloud\Base::SetProperty()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::SetProperty()"><small>\OpenCloud\Service::SetProperty()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::SetProperty()"><small>\OpenCloud\ObjectStoreBase::SetProperty()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::Url()"></a><h3>Url<span class="nb-faded-text">(
          
             
            $param
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Returns the URL of the service, selected from the connection's
serviceCatalog</em><br><small><p>The assumption is that nearly all objects will have a URL; at this
base level, it simply throws an exception to enforce the idea that
subclasses need to define this method.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$param</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td>array()</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>throws</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Url()"><small>\OpenCloud\ObjectStoreBase::Url()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::__construct()"></a><h3>__construct<span class="nb-faded-text">(
          \OpenCloud\OpenCloud\OpenStack
             
            $conn,
          string
             
            $serviceName
            = RAXSDK_OBJSTORE_NAME,
          string
             
            $serviceRegion
            = RAXSDK_OBJSTORE_REGION,
          string
             
            $urltype
            = RAXSDK_OBJSTORE_URLTYPE,
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>creates a new ObjectStore object</em><br><small><p>Usage: <code>$x = new Service($conn, $type, $name, $region, $urltype);</code>
The service's URL is defined in the OpenStack's serviceCatalog; it
uses the $type, $name, $region, and $urltype to find the proper URL
and set it. If it cannot find a URL in the service catalog that matches
the criteria, then an exception is thrown.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$conn</td>
<td style="white-space: normal;">\OpenCloud\OpenCloud\OpenStack</td>
<td><p>a connection object</p></td>
<td></td>
</tr>
<tr>
<td>$serviceName</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the service to use</p></td>
<td>RAXSDK_OBJSTORE_NAME</td>
</tr>
<tr>
<td>$serviceRegion</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the service region to use</p></td>
<td>RAXSDK_OBJSTORE_REGION</td>
</tr>
<tr>
<td>$urltype</td>
<td style="white-space: normal;">string</td>
<td><p>the type of URL to use (usually "publicURL")</p>
</td>
<td>RAXSDK_OBJSTORE_URLTYPE</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::__set()"></a><h3>__set<span class="nb-faded-text">(
          string
             
            $property,
          mixed
             
            $value,
          
          )
        </span>
        :
        <span class="nb-faded-text">void</span>
</h3>
<h4>Description</h4>
<em>Sets extended attributes on an object and validates them</em><br><small><p>This function is provided to ensure that attributes cannot
arbitrarily added to an object. If this function is called, it
means that the attribute is not defined on the object, and thus
an exception is thrown.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the attribute</p></td>
<td></td>
</tr>
<tr>
<td>$value</td>
<td style="white-space: normal;">mixed</td>
<td><p>the value of the attribute</p></td>
<td></td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>void</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::__set()"><small>\OpenCloud\Base::__set()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::__set()"><small>\OpenCloud\Service::__set()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::__set()"><small>\OpenCloud\ObjectStoreBase::__set()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::debug()"></a><h3>debug<span class="nb-faded-text">(
          string
             
            $msg,
          mixed
             
            $p1
            = NULL,
          mixed
             
            $p2
            = NULL,
          mixed
             
            $p3
            = NULL,
          mixed
             
            $p4
            = NULL,
          mixed
             
            $p5
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">void</span>
</h3>
<h4>Description</h4>
<em>Displays a debug message if $RAXSDK_DEBUG is TRUE</em><br><small><p>The primary parameter is a string in sprintf() format, and it can accept
up to five optional parameters. It prints the debug message, prefixed
with "Debug:" and the class name, to the standard output device.</p>

<p>Example:
  <code>$this-&gt;debug('Starting execution of %s', get_class($this))</code></p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$msg</td>
<td style="white-space: normal;">string</td>
<td><p>The message string (required); can be in
     sprintf() format.</p>
</td>
<td></td>
</tr>
<tr>
<td>$p1</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p2</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p3</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p4</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p5</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>void</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::debug()"><small>\OpenCloud\Base::debug()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::debug()"><small>\OpenCloud\Service::debug()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::debug()"><small>\OpenCloud\ObjectStoreBase::debug()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::get_endpoint()"></a><h3>get_endpoint<span class="nb-faded-text">(
          string
             
            $type,
          string
             
            $name,
          string
             
            $region,
          string
             
            $urltype
            = 'publicURL',
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Given a service type, name, and region, return the url</em><br><small><p>This function ensures that services are represented by an entry in the
service catalog, and NOT by an arbitrarily-constructed URL.</p>

<p>Note that it will always return the first match found in the
service catalog (there <em>should</em> be only one, but you never know...)</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$type</td>
<td style="white-space: normal;">string</td>
<td><p>The OpenStack service type ("compute" or
     "object-store", for example</p>
</td>
<td></td>
</tr>
<tr>
<td>$name</td>
<td style="white-space: normal;">string</td>
<td><p>The name of the service in the service catlog</p></td>
<td></td>
</tr>
<tr>
<td>$region</td>
<td style="white-space: normal;">string</td>
<td><p>The region of the service</p></td>
<td></td>
</tr>
<tr>
<td>$urltype</td>
<td style="white-space: normal;">string</td>
<td><p>The URL type; defaults to "publicURL"</p>
</td>
<td>'publicURL'</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td>The URL of the service</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::get_endpoint()"><small>\OpenCloud\Service::get_endpoint()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::get_endpoint()"><small>\OpenCloud\ObjectStoreBase::get_endpoint()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::namespaces()"></a><h3>namespaces<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns a list of supported namespaces</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::namespaces()"><small>\OpenCloud\Service::namespaces()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::namespaces()"><small>\OpenCloud\ObjectStoreBase::namespaces()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStore::to_string()"></a><h3>to_string<span class="nb-faded-text">(
          mixed
             
            $x,
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Converts a value to an HTTP-displayable string form</em><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$x</td>
<td style="white-space: normal;">mixed</td>
<td><p>a value to convert</p></td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::to_string()"><small>\OpenCloud\Base::to_string()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::to_string()"><small>\OpenCloud\Service::to_string()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::to_string()"><small>\OpenCloud\ObjectStoreBase::to_string()</small></a></td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="properties_ObjectStore">
<h4>Properties</h4>
<a href="#ObjectStore::%24_errors">$_errors</a>,
      <a href="#ObjectStore::%24_namespaces">$_namespaces</a>,
      <a href="#ObjectStore::%24cdn">$cdn</a>,
      <a href="#ObjectStore::%24conn">$conn</a>,
      <a href="#ObjectStore::%24http_headers">$http_headers</a>,
      <a href="#ObjectStore::%24service_name">$service_name</a>,
      <a href="#ObjectStore::%24service_region">$service_region</a>,
      <a href="#ObjectStore::%24service_type">$service_type</a>,
      <a href="#ObjectStore::%24service_url">$service_url</a>,
      <div class="method">
<a id="ObjectStore::$_errors"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$_errors
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStore::$_namespaces"></a><h3>
<span class="nb-faded-text"> 
          protected 
          </span>$_namespaces
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStore::$cdn"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$cdn
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStore::$conn"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$conn
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStore::$http_headers"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$http_headers
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStore::$service_name"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_name
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStore::$service_region"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_region
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStore::$service_type"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_type
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStore::$service_url"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_url
          =
          </h3>
<em></em><br>
</div>
</div>
<div id="constants_ObjectStore">
<h4>Constants</h4>
<a id="ObjectStore::MAX_CONTAINER_NAME_LEN"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_CONTAINER_NAME_LEN<span class="nb-faded-text">
         = 256</span>
</h3>
<em></em><br><br>
</div>
<a id="ObjectStore::MAX_OBJECT_NAME_LEN"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_OBJECT_NAME_LEN<span class="nb-faded-text">
         = 1024</span>
</h3>
<em></em><br><br>
</div>
<a id="ObjectStore::MAX_OBJECT_SIZE"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_OBJECT_SIZE<span class="nb-faded-text">
         = SWIFT_MAX_OBJECT_SIZE</span>
</h3>
<em></em><br><br>
</div>
</div>
<div style="clear: both"></div>
</div>
<div id="ObjectStoreCDN" class="class">
<h3>ObjectStoreCDN</h3>
<div class="properties">
<h1>Properties</h1>
<label class="property-key">Extends</label><div class="property-value">
<a href="objectstore.html#%5COpenCloud%5CObjectStoreBase">\OpenCloud\ObjectStoreBase</a>
         </div>
<label class="property-key">Implements</label><div class="property-value"> 
      </div>
<label class="property-key">author</label><div class="property-value">
<a title="" href="mailto:hide@address.com">Glen Campbell</a>
             
        </div>
<label class="property-key">param</label><div class="property-value">
<a title="
          \OpenCloud\OpenCloud\OpenStack
        "><p>a connection object</p></a>
             
        </div>
<label class="property-key">param</label><div class="property-value">
<a title="
          string
        "><p>the name of the service to use</p></a>
             
        </div>
<label class="property-key">param</label><div class="property-value">
<a title="
          string
        "><p>the name of the service region to use</p></a>
             
        </div>
<label class="property-key">param</label><div class="property-value">
<a title="
          string
        "><p>the type of URL to use (usually "publicURL")</p>
</a>
             
        </div>
<label class="property-key">Abstract</label><div class="property-value">No 
      </div>
<label class="property-key">Final</label><div class="property-value">No 
      </div>
</div>
<h4>Description</h4>
<em>This is the CDN related to the ObjectStore</em><br><p>This is intended for Rackspace customers, so it almost certainly will
not work for other public clouds.</p><br><div id="methods_ObjectStoreCDN">
<h4>Methods</h4>
<a style="font-style: italic;" href="#ObjectStoreCDN::CDN()">CDN</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::CheckAttributePrefix()">CheckAttributePrefix</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::CheckJsonError()">CheckJsonError</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::Collection()">Collection</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::Container()">Container</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::ContainerList()">ContainerList</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::Extensions()">Extensions</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::GetHttpRequestObject()">GetHttpRequestObject</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::GetMetaUrl()">GetMetaUrl</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::Limits()">Limits</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::MakeQueryString()">MakeQueryString</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::Name()">Name</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::Region()">Region</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::Request()">Request</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::SetProperty()">SetProperty</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::Url()">Url</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::__construct()">__construct</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::__set()">__set</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::debug()">debug</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::get_endpoint()">get_endpoint</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::namespaces()">namespaces</a>,
      <a style="font-style: italic;" href="#ObjectStoreCDN::to_string()">to_string</a>,
      <div class="method">
<a id="ObjectStoreCDN::CDN()"></a><h3>CDN<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Helps catch errors if someone calls the method on the
wrong object</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::CheckAttributePrefix()"></a><h3>CheckAttributePrefix<span class="nb-faded-text">(
          string
             
            $property,
          array
             
            $prefixes
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">boolean</span>
</h3>
<h4>Description</h4>
<em>Checks the attribute $property and only permits it if the prefix is
in the specified $prefixes array</em><br><small><p>This is to support extension namespaces in some services.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the attribute</p></td>
<td></td>
</tr>
<tr>
<td>$prefixes</td>
<td style="white-space: normal;">array</td>
<td><p>a list of prefixes</p></td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>boolean</td>
<td>TRUE if valid; FALSE if not</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::CheckAttributePrefix()"><small>\OpenCloud\Base::CheckAttributePrefix()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::CheckAttributePrefix()"><small>\OpenCloud\Service::CheckAttributePrefix()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::CheckAttributePrefix()"><small>\OpenCloud\ObjectStoreBase::CheckAttributePrefix()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::CheckJsonError()"></a><h3>CheckJsonError<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">boolean</span>
</h3>
<h4>Description</h4>
<em>Checks the most recent JSON operation for errors</em><br><small><p>This function should be called after any <code>json_*()</code> function call.
This ensures that nasty JSON errors are detected and the proper
exception thrown.</p>

<p>Example:
  <code>$obj = json_decode($string);</code>
  <code>if (check_json_error()) do something ...</code></p></small><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>boolean</td>
<td>TRUE if an error occurred, FALSE if none</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>throws</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::CheckJsonError()"><small>\OpenCloud\Base::CheckJsonError()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::CheckJsonError()"><small>\OpenCloud\Service::CheckJsonError()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::CheckJsonError()"><small>\OpenCloud\ObjectStoreBase::CheckJsonError()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::Collection()"></a><h3>Collection<span class="nb-faded-text">(
          string
             
            $class,
          string
             
            $url
            = NULL,
          mixed
             
            $parent
            = NULL,
          array
             
            $parm
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\Collection</span>
</h3>
<h4>Description</h4>
<em>returns a collection of objects</em><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$class</td>
<td style="white-space: normal;">string</td>
<td><p>the class of objects to fetch</p></td>
<td></td>
</tr>
<tr>
<td>$url</td>
<td style="white-space: normal;">string</td>
<td><p>(optional) the URL to retrieve</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$parent</td>
<td style="white-space: normal;">mixed</td>
<td><p>(optional) the parent service/object</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$parm</td>
<td style="white-space: normal;">array</td>
<td><p>(optional) array of key/value pairs to use as
    query strings</p>
</td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\Collection</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Collection()"><small>\OpenCloud\Service::Collection()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Collection()"><small>\OpenCloud\ObjectStoreBase::Collection()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::Container()"></a><h3>Container<span class="nb-faded-text">(
          mixed
             
            $cdata
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\ObjectStore\Container</span>
</h3>
<h4>Description</h4>
<em>Creates a Container object associated with the ObjectStore</em><br><small><p>This is a factory method and should generally be used instead of
calling the Container class directly.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$cdata</td>
<td style="white-space: normal;">mixed</td>
<td><p>(optional) the name of the container (if string)
     or an object from which to set values</p>
</td>
<td>NULL</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\ObjectStore\Container</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Container()"><small>\OpenCloud\ObjectStoreBase::Container()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::ContainerList()"></a><h3>ContainerList<span class="nb-faded-text">(
          array
             
            $filter
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\ObjectStore\ContainerList</span>
</h3>
<h4>Description</h4>
<em>Returns a Collection of Container objects</em><br><small><p>This is a factory method and should generally be used instead of
calling the ContainerList class directly.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$filter</td>
<td style="white-space: normal;">array</td>
<td><p>a list of key-value pairs to pass to the
     service to filter the results</p>
</td>
<td>array()</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\ObjectStore\ContainerList</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::ContainerList()"><small>\OpenCloud\ObjectStoreBase::ContainerList()</small></a></td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::Extensions()"></a><h3>Extensions<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns the /extensions for the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td>of objects</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Extensions()"><small>\OpenCloud\Service::Extensions()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Extensions()"><small>\OpenCloud\ObjectStoreBase::Extensions()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::GetHttpRequestObject()"></a><h3>GetHttpRequestObject<span class="nb-faded-text">(
          
             
            $url,
          
             
            $method
            = 'GET',
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Returns a class that implements the HttpRequest interface.</em><br><small><p>This can be stubbed out for unit testing and avoid making live calls.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$url</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td></td>
</tr>
<tr>
<td>$method</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td>'GET'</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::GetHttpRequestObject()"><small>\OpenCloud\Base::GetHttpRequestObject()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::GetHttpRequestObject()"><small>\OpenCloud\Service::GetHttpRequestObject()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::GetHttpRequestObject()"><small>\OpenCloud\ObjectStoreBase::GetHttpRequestObject()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::GetMetaUrl()"></a><h3>GetMetaUrl<span class="nb-faded-text">(
          string
             
            $resource,
          
          )
        </span>
        :
        <span class="nb-faded-text">\stdClass</span>
</h3>
<h4>Description</h4>
<em>Constructs a specified URL from the subresource</em><br><small><p>Given a subresource (e.g., "extensions"), this constructs the proper
URL and retrieves the resource.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$resource</td>
<td style="white-space: normal;">string</td>
<td><p>The resource requested; should NOT have slashes
     at the beginning or end</p></td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\stdClass</td>
<td>object</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::GetMetaUrl()"><small>\OpenCloud\Service::GetMetaUrl()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::GetMetaUrl()"><small>\OpenCloud\ObjectStoreBase::GetMetaUrl()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::Limits()"></a><h3>Limits<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns the /limits for the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td>of limits</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Limits()"><small>\OpenCloud\Service::Limits()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Limits()"><small>\OpenCloud\ObjectStoreBase::Limits()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::MakeQueryString()"></a><h3>MakeQueryString<span class="nb-faded-text">(
          array
             
            $arr,
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Converts an array of key/value pairs into a single query string</em><br><small><p>For example, array('A'=>1,'B'=>2) would become 'A=1&amp;B=2'.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$arr</td>
<td style="white-space: normal;">array</td>
<td><p>array of key/value pairs</p>
</td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::MakeQueryString()"><small>\OpenCloud\Base::MakeQueryString()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::MakeQueryString()"><small>\OpenCloud\Service::MakeQueryString()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::MakeQueryString()"><small>\OpenCloud\ObjectStoreBase::MakeQueryString()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::Name()"></a><h3>Name<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>returns the serviceName associated with the service</em><br><small><p>This is used by DNS for PTR record lookups</p></small><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Name()"><small>\OpenCloud\Service::Name()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Name()"><small>\OpenCloud\ObjectStoreBase::Name()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::Region()"></a><h3>Region<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>returns the Region associated with the service</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>api</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Region()"><small>\OpenCloud\Service::Region()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Region()"><small>\OpenCloud\ObjectStoreBase::Region()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::Request()"></a><h3>Request<span class="nb-faded-text">(
          string
             
            $url,
          string
             
            $method
            = 'GET',
          array
             
            $headers
            = array(),
          string
             
            $body
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">\OpenCloud\HttpResult</span>
</h3>
<h4>Description</h4>
<em>Performs an authenticated request</em><br><small><p>This method handles the addition of authentication headers to each
request. It always adds the X-Auth-Token: header and will add the
X-Auth-Project-Id: header if there is a tenant defined on the
connection.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$url</td>
<td style="white-space: normal;">string</td>
<td><p>The URL of the request</p></td>
<td></td>
</tr>
<tr>
<td>$method</td>
<td style="white-space: normal;">string</td>
<td><p>The HTTP method (defaults to "GET")</p>
</td>
<td>'GET'</td>
</tr>
<tr>
<td>$headers</td>
<td style="white-space: normal;">array</td>
<td><p>An associative array of headers</p></td>
<td>array()</td>
</tr>
<tr>
<td>$body</td>
<td style="white-space: normal;">string</td>
<td><p>An optional body for POST/PUT requests</p>
</td>
<td>NULL</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>\OpenCloud\HttpResult</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::Request()"><small>\OpenCloud\Service::Request()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Request()"><small>\OpenCloud\ObjectStoreBase::Request()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::SetProperty()"></a><h3>SetProperty<span class="nb-faded-text">(
          string
             
            $property,
          mixed
             
            $value,
          array
             
            $prefixes
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Sets an extended (unrecognized) property on the current object</em><br><small><p>If RAXSDK_STRICT_PROPERTY_CHECKS is TRUE, then the prefix of the
property name must appear in the $prefixes array, or else an
exception is thrown.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the property name</p></td>
<td></td>
</tr>
<tr>
<td>$value</td>
<td style="white-space: normal;">mixed</td>
<td><p>the value of the property</p></td>
<td></td>
</tr>
<tr>
<td>$prefixes</td>
<td style="white-space: normal;">array</td>
<td><p>optional list of supported prefixes</p></td>
<td>array()</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>throws</td>
<td>if strict checks are on and
     the property prefix is not in the list of prefixes.</td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::SetProperty()"><small>\OpenCloud\Base::SetProperty()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::SetProperty()"><small>\OpenCloud\Service::SetProperty()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::SetProperty()"><small>\OpenCloud\ObjectStoreBase::SetProperty()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::Url()"></a><h3>Url<span class="nb-faded-text">(
          
             
            $param
            = array(),
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Returns the URL of the service, selected from the connection's
serviceCatalog</em><br><small><p>The assumption is that nearly all objects will have a URL; at this
base level, it simply throws an exception to enforce the idea that
subclasses need to define this method.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$param</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td>array()</td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>throws</td>
<td></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::Url()"><small>\OpenCloud\ObjectStoreBase::Url()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::__construct()"></a><h3>__construct<span class="nb-faded-text">(
          <a href="openstack.html#%5COpenCloud%5COpenStack">\OpenCloud\OpenStack</a>
             
            $conn,
          string
             
            $serviceName
            = RAXSDK_OBJSTORE_NAME,
          string
             
            $serviceRegion
            = RAXSDK_OBJSTORE_REGION,
          
             
            $urltype
            = RAXSDK_OBJSTORE_URLTYPE,
          
          )
        </span>
        :
        <span class="nb-faded-text">n/a</span>
</h3>
<h4>Description</h4>
<em>Creates a new ObjectStoreCDN object</em><br><small><p>This is a simple wrapper function around the parent Service construct,
but supplies defaults for the service type.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$conn</td>
<td style="white-space: normal;"><a href="openstack.html#%5COpenCloud%5COpenStack">\OpenCloud\OpenStack</a></td>
<td><p>the connection object</p></td>
<td></td>
</tr>
<tr>
<td>$serviceName</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the service</p></td>
<td>RAXSDK_OBJSTORE_NAME</td>
</tr>
<tr>
<td>$serviceRegion</td>
<td style="white-space: normal;">string</td>
<td><p>the service's region</p>
</td>
<td>RAXSDK_OBJSTORE_REGION</td>
</tr>
<tr>
<td>$urltype</td>
<td style="white-space: normal;">n/a</td>
<td></td>
<td>RAXSDK_OBJSTORE_URLTYPE</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>n/a</td>
<td>n/a</td>
</tr></tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::__set()"></a><h3>__set<span class="nb-faded-text">(
          string
             
            $property,
          mixed
             
            $value,
          
          )
        </span>
        :
        <span class="nb-faded-text">void</span>
</h3>
<h4>Description</h4>
<em>Sets extended attributes on an object and validates them</em><br><small><p>This function is provided to ensure that attributes cannot
arbitrarily added to an object. If this function is called, it
means that the attribute is not defined on the object, and thus
an exception is thrown.</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$property</td>
<td style="white-space: normal;">string</td>
<td><p>the name of the attribute</p></td>
<td></td>
</tr>
<tr>
<td>$value</td>
<td style="white-space: normal;">mixed</td>
<td><p>the value of the attribute</p></td>
<td></td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>void</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::__set()"><small>\OpenCloud\Base::__set()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::__set()"><small>\OpenCloud\Service::__set()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::__set()"><small>\OpenCloud\ObjectStoreBase::__set()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::debug()"></a><h3>debug<span class="nb-faded-text">(
          string
             
            $msg,
          mixed
             
            $p1
            = NULL,
          mixed
             
            $p2
            = NULL,
          mixed
             
            $p3
            = NULL,
          mixed
             
            $p4
            = NULL,
          mixed
             
            $p5
            = NULL,
          
          )
        </span>
        :
        <span class="nb-faded-text">void</span>
</h3>
<h4>Description</h4>
<em>Displays a debug message if $RAXSDK_DEBUG is TRUE</em><br><small><p>The primary parameter is a string in sprintf() format, and it can accept
up to five optional parameters. It prints the debug message, prefixed
with "Debug:" and the class name, to the standard output device.</p>

<p>Example:
  <code>$this-&gt;debug('Starting execution of %s', get_class($this))</code></p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$msg</td>
<td style="white-space: normal;">string</td>
<td><p>The message string (required); can be in
     sprintf() format.</p>
</td>
<td></td>
</tr>
<tr>
<td>$p1</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p2</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p3</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p4</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
<tr>
<td>$p5</td>
<td style="white-space: normal;">mixed</td>
<td><p>Optional argument to be passed to sprintf()</p>
</td>
<td>NULL</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>void</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::debug()"><small>\OpenCloud\Base::debug()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::debug()"><small>\OpenCloud\Service::debug()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::debug()"><small>\OpenCloud\ObjectStoreBase::debug()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::get_endpoint()"></a><h3>get_endpoint<span class="nb-faded-text">(
          string
             
            $type,
          string
             
            $name,
          string
             
            $region,
          string
             
            $urltype
            = 'publicURL',
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Given a service type, name, and region, return the url</em><br><small><p>This function ensures that services are represented by an entry in the
service catalog, and NOT by an arbitrarily-constructed URL.</p>

<p>Note that it will always return the first match found in the
service catalog (there <em>should</em> be only one, but you never know...)</p></small><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody>
<tr>
<td>$type</td>
<td style="white-space: normal;">string</td>
<td><p>The OpenStack service type ("compute" or
     "object-store", for example</p>
</td>
<td></td>
</tr>
<tr>
<td>$name</td>
<td style="white-space: normal;">string</td>
<td><p>The name of the service in the service catlog</p></td>
<td></td>
</tr>
<tr>
<td>$region</td>
<td style="white-space: normal;">string</td>
<td><p>The region of the service</p></td>
<td></td>
</tr>
<tr>
<td>$urltype</td>
<td style="white-space: normal;">string</td>
<td><p>The URL type; defaults to "publicURL"</p>
</td>
<td>'publicURL'</td>
</tr>
</tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td>The URL of the service</td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::get_endpoint()"><small>\OpenCloud\Service::get_endpoint()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::get_endpoint()"><small>\OpenCloud\ObjectStoreBase::get_endpoint()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::namespaces()"></a><h3>namespaces<span class="nb-faded-text">(
          
          )
        </span>
        :
        <span class="nb-faded-text">array</span>
</h3>
<h4>Description</h4>
<em>Returns a list of supported namespaces</em><br><h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>array</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::namespaces()"><small>\OpenCloud\Service::namespaces()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::namespaces()"><small>\OpenCloud\ObjectStoreBase::namespaces()</small></a></td>
</tr>
</tbody>
</table>
</div>
<div class="method">
<a id="ObjectStoreCDN::to_string()"></a><h3>to_string<span class="nb-faded-text">(
          mixed
             
            $x,
          
          )
        </span>
        :
        <span class="nb-faded-text">string</span>
</h3>
<h4>Description</h4>
<em>Converts a value to an HTTP-displayable string form</em><br><h4>Arguments</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr></thead>
<tbody><tr>
<td>$x</td>
<td style="white-space: normal;">mixed</td>
<td><p>a value to convert</p></td>
<td></td>
</tr></tbody>
</table>
<h4>Return value</h4>
<table>
<thead><tr>
<th>Type</th>
<th>Description</th>
</tr></thead>
<tbody><tr>
<td>string</td>
<td></td>
</tr></tbody>
</table>
<h4>Tags</h4>
<table>
<thead><tr>
<th>Name</th>
<th>Description</th>
</tr></thead>
<tbody>
<tr>
<td>inherited_from</td>
<td><a href="base.html#%5COpenCloud%5CBase::to_string()"><small>\OpenCloud\Base::to_string()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="service.html#%5COpenCloud%5CService::to_string()"><small>\OpenCloud\Service::to_string()</small></a></td>
</tr>
<tr>
<td>inherited_from</td>
<td><a href="objectstore.html#%5COpenCloud%5CObjectStoreBase::to_string()"><small>\OpenCloud\ObjectStoreBase::to_string()</small></a></td>
</tr>
</tbody>
</table>
</div>
</div>
<div id="properties_ObjectStoreCDN">
<h4>Properties</h4>
<a href="#ObjectStoreCDN::%24_errors">$_errors</a>,
      <a href="#ObjectStoreCDN::%24_namespaces">$_namespaces</a>,
      <a href="#ObjectStoreCDN::%24conn">$conn</a>,
      <a href="#ObjectStoreCDN::%24http_headers">$http_headers</a>,
      <a href="#ObjectStoreCDN::%24service_name">$service_name</a>,
      <a href="#ObjectStoreCDN::%24service_region">$service_region</a>,
      <a href="#ObjectStoreCDN::%24service_type">$service_type</a>,
      <a href="#ObjectStoreCDN::%24service_url">$service_url</a>,
      <div class="method">
<a id="ObjectStoreCDN::$_errors"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$_errors
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreCDN::$_namespaces"></a><h3>
<span class="nb-faded-text"> 
          protected 
          </span>$_namespaces
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreCDN::$conn"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$conn
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreCDN::$http_headers"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$http_headers
          =
          array()</h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreCDN::$service_name"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_name
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreCDN::$service_region"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_region
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreCDN::$service_type"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_type
          =
          </h3>
<em></em><br>
</div>
<div class="method">
<a id="ObjectStoreCDN::$service_url"></a><h3>
<span class="nb-faded-text"> 
          private 
          </span>$service_url
          =
          </h3>
<em></em><br>
</div>
</div>
<div id="constants_ObjectStoreCDN">
<h4>Constants</h4>
<a id="ObjectStoreCDN::MAX_CONTAINER_NAME_LEN"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_CONTAINER_NAME_LEN<span class="nb-faded-text">
         = 256</span>
</h3>
<em></em><br><br>
</div>
<a id="ObjectStoreCDN::MAX_OBJECT_NAME_LEN"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_OBJECT_NAME_LEN<span class="nb-faded-text">
         = 1024</span>
</h3>
<em></em><br><br>
</div>
<a id="ObjectStoreCDN::MAX_OBJECT_SIZE"></a><div class="constant">
<h3>
<span class="nb-faded-text"> 
        </span>MAX_OBJECT_SIZE<span class="nb-faded-text">
         = SWIFT_MAX_OBJECT_SIZE</span>
</h3>
<em></em><br><br>
</div>
</div>
<div style="clear: both"></div>
</div>
</div>
<small xmlns="" class="footer">Documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor 2.0.0a12</a>.</small></div><div id="index"><div class="padder"><script xmlns="" type="text/javascript">
      $(function() {

        var is_chrome = /chrome/.test( navigator.userAgent.toLowerCase() );
        var is_local = /file:\/\//.test(document.location.href);
        if (is_chrome && is_local)
        {
          // search is disabled on chrome with local files due to http://code.google.com/p/chromium/issues/detail?id=40787
          return;
        }

        $("#search_box").show();
        var search_index = {};
        $.ajax({
          url: "search_index.xml",
          dataType: ($.browser.msie) ? "text" : "xml",
          error: function(data) {
            alert('An error occurred using the search data');
          },
          success: function( data ) {
            var xml;
            if (typeof data == "string") {
              xml = new ActiveXObject("Microsoft.XMLDOM");
              xml.async = false;
              xml.loadXML(data);
            } else {
              xml = data;
            }

            search_index = $("node", xml).map(function() {
              type = $("type", this).text();
              return {
                value: $("value", this).text(),
                label: '<img src="images/icons/'+type+'.png" align="absmiddle">'+$("value", this).text(),
                id: $("id", this).text(),
              };
            }).get();

            $("#search_box").autocomplete({
              source: search_index,
              select: function(event, ui) {
                // redirect to the documentation
                if ((parent) && (parent.content))
                {
                  parent.content.document.location = ''+ui.item.id;
                }
                else
                {
                  jQuery(document).location = ''+ui.item.id;
                }
                applySearchHash();
              }
            });
          }
        });
      });
    </script><input id="search_box"></input><div class="section">
<h1>Namespaces</h1>
<ul id="namespaces-" class="filetree">
<li class="closed">
<span class="folder">OpenCloud</span><ul>
<li><span class="class"><a href="exceptions.html#AttributeError">AttributeError</a><br><small>General Exceptions</small></span></li>
<li><span class="class"><a href="exceptions.html#AuthenticationError">AuthenticationError</a><br><small></small></span></li>
<li><span class="class"><a href="base.html#Base">Base</a><br><small>The Base class is the root class for all other objects used or defined by
this SDK.</small></span></li>
<li><span class="class"><a href="http.html#BlankResponse">BlankResponse</a><br><small>This is a stubbed-out variant of HttpResponse for unit testing</small></span></li>
<li><span class="class"><a href="collection.html#Collection">Collection</a><br><small>Provides an abstraction for working with ordered sets of objects</small></span></li>
<li><span class="class"><a href="exceptions.html#CollectionError">CollectionError</a><br><small></small></span></li>
<li><span class="class"><a href="compute.html#Compute">Compute</a><br><small>The Compute class represents the OpenStack Nova service.</small></span></li>
<li><span class="class"><a href="exceptions.html#CreateError">CreateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#CredentialError">CredentialError</a><br><small></small></span></li>
<li><span class="class"><a href="http.html#CurlRequest">CurlRequest</a><br><small>The CurlRequest class is a simple wrapper to CURL functions.</small></span></li>
<li><span class="class"><a href="dns.html#DNS">DNS</a><br><small>This class defines a "service"—a relationship between a specific OpenStack
and a provided service, represented by a URL in the service catalog.</small></span></li>
<li><span class="class"><a href="dbservice.html#DbService">DbService</a><br><small>The Rackspace Database As A Service (aka "Red Dwarf")</small></span></li>
<li><span class="class"><a href="exceptions.html#DeleteError">DeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#DocumentError">DocumentError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#DomainError">DomainError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#EmptyResponseError">EmptyResponseError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#EndpointError">EndpointError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#HttpError">HttpError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#HttpForbiddenError">HttpForbiddenError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#HttpOverLimitError">HttpOverLimitError</a><br><small></small></span></li>
<li><span class="interface"><a href="http.html#HttpRequest">HttpRequest</a><br><small>The HttpRequest interface defines methods for wrapping CURL; this allows
those methods to be stubbed out for unit testing, thus allowing us to
test without actually making live calls.</small></span></li>
<li><span class="class"><a href="http.html#HttpResponse">HttpResponse</a><br><small>The HttpResponse returns an object with status information, separated
headers, and any response body necessary.</small></span></li>
<li><span class="class"><a href="exceptions.html#HttpRetryError">HttpRetryError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#HttpTimeoutError">HttpTimeoutError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#HttpUnauthorizedError">HttpUnauthorizedError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#HttpUrlError">HttpUrlError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#IdRequiredError">IdRequiredError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InstanceNotFound">InstanceNotFound</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InvalidArgumentError">InvalidArgumentError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#JsonError">JsonError</a><br><small></small></span></li>
<li><span class="class"><a href="lbservice.html#LoadBalancerService">LoadBalancerService</a><br><small>The Rackspace Cloud Load Balancers</small></span></li>
<li><span class="class"><a href="metadata.html#Metadata">Metadata</a><br><small>The Metadata class represents either Server or Image metadata</small></span></li>
<li><span class="class"><a href="exceptions.html#NameError">NameError</a><br><small></small></span></li>
<li><span class="class"><a href="nova.html#Nova">Nova</a><br><small>Nova is an abstraction layer for the OpenStack compute service.</small></span></li>
<li><span class="class"><a href="objectstore.html#ObjectStore">ObjectStore</a><br><small>ObjectStore - this defines the object-store (Cloud Files) service.</small></span></li>
<li><span class="class"><a href="objectstore.html#ObjectStoreBase">ObjectStoreBase</a><br><small>A base class for common code shared between the ObjectStore and ObjectStoreCDN
objects</small></span></li>
<li><span class="class"><a href="objectstore.html#ObjectStoreCDN">ObjectStoreCDN</a><br><small>This is the CDN related to the ObjectStore</small></span></li>
<li><span class="class"><a href="openstack.html#OpenStack">OpenStack</a><br><small>The OpenStack class represents a relationship (or "connection")
between a user and a service.</small></span></li>
<li><span class="class"><a href="persistentobject.html#PersistentObject">PersistentObject</a><br><small>represents an object that has the ability to be
retrieved, created, updated, and deleted.</small></span></li>
<li><span class="class"><a href="rackspace.html#Rackspace">Rackspace</a><br><small>Rackspace extends the OpenStack class with support for Rackspace&#39;s
API key and tenant requirements.</small></span></li>
<li><span class="class"><a href="exceptions.html#ServerActionError">ServerActionError</a><br><small></small></span></li>
<li><span class="class"><a href="service.html#Service">Service</a><br><small>This class defines a "service"—a relationship between a specific OpenStack
and a provided service, represented by a URL in the service catalog.</small></span></li>
<li><span class="class"><a href="openstack.html#ServiceCatalogItem">ServiceCatalogItem</a><br><small>Holds information on a single service from the Service Catalog</small></span></li>
<li><span class="class"><a href="exceptions.html#ServiceValueError">ServiceValueError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UnknownError">UnknownError</a><br><small>catch-all</small></span></li>
<li><span class="class"><a href="exceptions.html#UnrecognizedServiceError">UnrecognizedServiceError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UnsupportedExtensionError">UnsupportedExtensionError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UpdateError">UpdateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UrlError">UrlError</a><br><small></small></span></li>
<li><span class="class"><a href="volumeservice.html#VolumeService">VolumeService</a><br><small>Nova is an abstraction layer for the OpenStack compute service.</small></span></li>
<li class="closed">
<span class="folder">Compute</span><ul>
<li><span class="class"><a href="flavor.html#Flavor">Flavor</a><br><small>The Flavor class represents a flavor defined by the Compute service</small></span></li>
<li><span class="class"><a href="exceptions.html#FlavorError">FlavorError</a><br><small></small></span></li>
<li><span class="class"><a href="image.html#Image">Image</a><br><small>The Image class represents a stored machine image returned by the
Compute service.</small></span></li>
<li><span class="class"><a href="exceptions.html#ImageError">ImageError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InvalidArgumentError">InvalidArgumentError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InvalidIpTypeError">InvalidIpTypeError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InvalidParameterError">InvalidParameterError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InvalidRequestError">InvalidRequestError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#MetadataCreateError">MetadataCreateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#MetadataDeleteError">MetadataDeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#MetadataError">MetadataError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#MetadataJsonError">MetadataJsonError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#MetadataKeyError">MetadataKeyError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#MetadataUpdateError">MetadataUpdateError</a><br><small></small></span></li>
<li><span class="class"><a href="network.html#Network">Network</a><br><small>The Network class represents a single virtual network</small></span></li>
<li><span class="class"><a href="exceptions.html#NetworkCreateError">NetworkCreateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#NetworkDeleteError">NetworkDeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#NetworkError">NetworkError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#NetworkUpdateError">NetworkUpdateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#NetworkUrlError">NetworkUrlError</a><br><small></small></span></li>
<li><span class="class"><a href="server.html#Server">Server</a><br><small>The Server class represents a single server node.</small></span></li>
<li><span class="class"><a href="exceptions.html#ServerCreateError">ServerCreateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ServerDeleteError">ServerDeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ServerIpsError">ServerIpsError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ServerJsonError">ServerJsonError</a><br><small></small></span></li>
<li><span class="class"><a href="servermetadata.html#ServerMetadata">ServerMetadata</a><br><small>This class handles server metadata</small></span></li>
<li><span class="class"><a href="exceptions.html#ServerUpdateError">ServerUpdateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ServerUrlError">ServerUrlError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UnsupportedFeatureExtension">UnsupportedFeatureExtension</a><br><small></small></span></li>
<li><span class="class"><a href="volumeattachment.html#VolumeAttachment">VolumeAttachment</a><br><small>The VolumeAttachment class represents a volume that is attached
to a server.</small></span></li>
<li><span class="class"><a href="exceptions.html#VolumeError">VolumeError</a><br><small></small></span></li>
</ul>
</li>
<li class="closed">
<span class="folder">DNS</span><ul>
<li><span class="class"><a href="exceptions.html#AsyncError">AsyncError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#AsyncHttpError">AsyncHttpError</a><br><small></small></span></li>
<li><span class="class"><a href="asyncresponse.html#AsyncResponse">AsyncResponse</a><br><small>The AsyncResponse class encapsulates the data returned by a Cloud DNS
asynchronous response.</small></span></li>
<li><span class="class"><a href="exceptions.html#AsyncTimeoutError">AsyncTimeoutError</a><br><small></small></span></li>
<li><span class="class"><a href="dnsobject.html#DnsObject">DnsObject</a><br><small>The DnsObject class is an extension of the PersistentObject class that
permits the asynchronous responses used by Cloud DNS</small></span></li>
<li><span class="class"><a href="domain.html#Domain">Domain</a><br><small>The Domain class represents a single domain</small></span></li>
<li><span class="class"><a href="ptrrecord.html#PtrRecord">PtrRecord</a><br><small>PTR records are used for reverse DNS</small></span></li>
<li><span class="class"><a href="record.html#Record">Record</a><br><small>The Record class represents a single domain record</small></span></li>
<li><span class="class"><a href="exceptions.html#RecordTypeError">RecordTypeError</a><br><small></small></span></li>
<li><span class="class"><a href="domain.html#Subdomain">Subdomain</a><br><small>The Subdomain is basically another domain, albeit one that is a child of
a parent domain.</small></span></li>
</ul>
</li>
<li class="closed">
<span class="folder">DbService</span><ul>
<li><span class="class"><a href="database.html#Database">Database</a><br><small>This class represents a Database in the Rackspace "Red Dwarf"
database-as-a-service product.</small></span></li>
<li><span class="class"><a href="exceptions.html#DatabaseCreateError">DatabaseCreateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#DatabaseDeleteError">DatabaseDeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#DatabaseListError">DatabaseListError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#DatabaseNameError">DatabaseNameError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#DatabaseUpdateError">DatabaseUpdateError</a><br><small></small></span></li>
<li><span class="class"><a href="instance.html#Instance">Instance</a><br><small>Instance represents an instance of DbService, similar to a Server in a
Compute service</small></span></li>
<li><span class="class"><a href="exceptions.html#InstanceCreateError">InstanceCreateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InstanceDeleteError">InstanceDeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InstanceError">InstanceError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InstanceFlavorError">InstanceFlavorError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InstanceUpdateError">InstanceUpdateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#InvalidIdTypeError">InvalidIdTypeError</a><br><small></small></span></li>
<li><span class="class"><a href="user.html#User">User</a><br><small>This class represents a User in the Rackspace "Red Dwarf"
database-as-a-service product.</small></span></li>
<li><span class="class"><a href="exceptions.html#UserCreateError">UserCreateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UserDeleteError">UserDeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UserListError">UserListError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UserNameError">UserNameError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UserUpdateError">UserUpdateError</a><br><small></small></span></li>
</ul>
</li>
<li class="closed">
<span class="folder">LoadBalancerService</span><ul>
<li><span class="class"><a href="lbresources.html#Access">Access</a><br><small>sub-resource to manage access lists</small></span></li>
<li><span class="class"><a href="lbresources.html#Algorithm">Algorithm</a><br><small>sub-resource to manage algorithms (read-only)</small></span></li>
<li><span class="class"><a href="lbresources.html#AllowedDomain">AllowedDomain</a><br><small>sub-resource to manage allowed domains</small></span></li>
<li><span class="class"><a href="lbresources.html#BillableLoadBalancer">BillableLoadBalancer</a><br><small>used to get a list of billable load balancers for a specific date range</small></span></li>
<li><span class="class"><a href="lbresources.html#ConnectionLogging">ConnectionLogging</a><br><small>sub-resource to manage connection logging</small></span></li>
<li><span class="class"><a href="lbresources.html#ConnectionThrottle">ConnectionThrottle</a><br><small>sub-resource to manage connection throttling</small></span></li>
<li><span class="class"><a href="lbresources.html#ContentCaching">ContentCaching</a><br><small>sub-resource to manage content caching</small></span></li>
<li><span class="class"><a href="lbresources.html#ErrorPage">ErrorPage</a><br><small>The /loadbalancer/{id}/errorpage manages the error page for the load
balancer.</small></span></li>
<li><span class="class"><a href="lbresources.html#HealthMonitor">HealthMonitor</a><br><small>sub-resource to read health monitor info</small></span></li>
<li><span class="class"><a href="loadbalancer.html#LoadBalancer">LoadBalancer</a><br><small>The LoadBalancer class represents a single load balancer</small></span></li>
<li><span class="class"><a href="lbresources.html#Metadata">Metadata</a><br><small>sub-resource to manage Metadata</small></span></li>
<li><span class="class"><a href="exceptions.html#MissingValueError">MissingValueError</a><br><small></small></span></li>
<li><span class="class"><a href="lbresources.html#Node">Node</a><br><small>information on a single node in the load balancer</small></span></li>
<li><span class="class"><a href="lbresources.html#NodeEvent">NodeEvent</a><br><small>a single node event, usually called as part of a Collection</small></span></li>
<li><span class="class"><a href="lbresources.html#Protocol">Protocol</a><br><small>sub-resource to manage protocols (read-only)</small></span></li>
<li><span class="class"><a href="lbresources.html#ReadonlySubResource">ReadonlySubResource</a><br><small>This defines a read-only SubResource - one that cannot be created, updated,
or deleted.</small></span></li>
<li><span class="class"><a href="lbresources.html#SSLTermination">SSLTermination</a><br><small>sub-resource to manage SSL termination</small></span></li>
<li><span class="class"><a href="lbresources.html#SessionPersistence">SessionPersistence</a><br><small>sub-resource to manage session persistence setting</small></span></li>
<li><span class="class"><a href="lbresources.html#Stats">Stats</a><br><small>Stats returns statistics about the load balancer</small></span></li>
<li><span class="class"><a href="lbresources.html#SubResource">SubResource</a><br><small>SubResource is an abstract class that handles subresources of a
LoadBalancer object; for example, the
`/loadbalancers/{id}/errorpage`.</small></span></li>
<li><span class="class"><a href="lbresources.html#Usage">Usage</a><br><small>used to get usage data for a load balancer</small></span></li>
<li><span class="class"><a href="lbresources.html#VirtualIp">VirtualIp</a><br><small>VirtualIp represents a single virtual IP (usually returned in a Collection)</small></span></li>
</ul>
</li>
<li class="closed">
<span class="folder">ObjectStore</span><ul>
<li><span class="class"><a href="container.html#CDNContainer">CDNContainer</a><br><small>A simple container for the CDN Service</small></span></li>
<li><span class="class"><a href="exceptions.html#CdnError">CdnError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#CdnHttpError">CdnHttpError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#CdnNotAvailableError">CdnNotAvailableError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#CdnTtlError">CdnTtlError</a><br><small></small></span></li>
<li><span class="class"><a href="container.html#Container">Container</a><br><small>A regular container with a (potentially) CDN container</small></span></li>
<li><span class="class"><a href="exceptions.html#ContainerCreateError">ContainerCreateError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ContainerDeleteError">ContainerDeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ContainerError">ContainerError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ContainerNameError">ContainerNameError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ContainerNotEmptyError">ContainerNotEmptyError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ContainerNotFoundError">ContainerNotFoundError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#CreateUpdateError">CreateUpdateError</a><br><small></small></span></li>
<li><span class="class"><a href="dataobject.html#DataObject">DataObject</a><br><small>A DataObject is an object in the ObjectStore</small></span></li>
<li><span class="class"><a href="exceptions.html#DeleteError">DeleteError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#IOError">IOError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#MetadataPrefixError">MetadataPrefixError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#MisMatchedChecksumError">MisMatchedChecksumError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#NoContentTypeError">NoContentTypeError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#NoNameError">NoNameError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ObjFetchError">ObjFetchError</a><br><small></small></span></li>
<li><span class="class"><a href="objstorebase.html#ObjStoreBase">ObjStoreBase</a><br><small>Intermediate (abstract) class to implement shared
features of all object-storage classes</small></span></li>
<li><span class="class"><a href="exceptions.html#ObjectCopyError">ObjectCopyError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#ObjectError">ObjectError</a><br><small></small></span></li>
<li><span class="class"><a href="exceptions.html#UnknownParameterError">UnknownParameterError</a><br><small></small></span></li>
</ul>
</li>
<li class="closed">
<span class="folder">VolumeService</span><ul>
<li><span class="class"><a href="snapshot.html#Snapshot">Snapshot</a><br><small>The Snapshot class represents a single block storage snapshot</small></span></li>
<li><span class="class"><a href="exceptions.html#SnapshotError">SnapshotError</a><br><small></small></span></li>
<li><span class="class"><a href="volume.html#Volume">Volume</a><br><small>The Volume class represents a single block storage volume</small></span></li>
<li><span class="class"><a href="exceptions.html#VolumeError">VolumeError</a><br><small></small></span></li>
<li><span class="class"><a href="volumetype.html#VolumeType">VolumeType</a><br><small>The VolumeType class represents a single block storage volume type</small></span></li>
<li><span class="class"><a href="exceptions.html#VolumeTypeError">VolumeTypeError</a><br><small></small></span></li>
</ul>
</li>
</ul>
</li>
<li class="closed">
<span class="folder">global</span><ul></ul>
</li>
</ul>
</div><div class="section">
<h1>Packages</h1>
<ul id="packages-" class="filetree">
<li class="closed">
<span class="folder">Default</span><ul id="packages_Default" class="filetree"></ul>
</li>
<li class="closed">
<span class="folder">phpOpenCloud</span><ul id="packages_phpOpenCloud" class="filetree"></ul>
</li>
</ul>
</div>
</div></div><div id="footer"><div class="padder"></div></div></div></body></html>
Return current item: php-opencloud