Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F98266511
InstanceResource.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Sat, Jan 11, 14:54
Size
2 KB
Mime Type
text/x-php
Expires
Mon, Jan 13, 14:54 (2 d)
Engine
blob
Format
Raw Data
Handle
23544660
Attached To
rPH Phabricator
InstanceResource.php
View Options
<?php
/**
* @category Services
* @package Services_Twilio
* @author Neuman Vong <neuman@twilio.com>
* @license http://creativecommons.org/licenses/MIT/ MIT
* @link http://pear.php.net/package/Services_Twilio
*/
/**
* Abstraction of an instance resource from the Twilio API.
*/
abstract
class
Services_Twilio_InstanceResource
extends
Services_Twilio_Resource
{
/**
* Make a request to the API to update an instance resource
*
* :param mixed $params: An array of updates, or a property name
* :param mixed $value: A value with which to update the resource
*
* :rtype: null
* :throws: a :php:class:`RestException <Services_Twilio_RestException>` if
* the update fails.
*/
public
function
update
(
$params
,
$value
=
null
)
{
if
(!
is_array
(
$params
))
{
$params
=
array
(
$params
=>
$value
);
}
$decamelizedParams
=
$this
->
client
->
createData
(
$this
->
uri
,
$params
);
$this
->
updateAttributes
(
$decamelizedParams
);
}
/*
* Add all properties from an associative array (the JSON response body) as
* properties on this instance resource, except the URI
*
* :param stdClass $params: An object containing all of the parameters of
* this instance
* :return: Nothing, this is purely side effecting
* :rtype: null
*/
public
function
updateAttributes
(
$params
)
{
unset
(
$params
->
uri
);
foreach
(
$params
as
$name
=>
$value
)
{
$this
->
$name
=
$value
;
}
}
/**
* Get the value of a property on this resource.
*
* Instead of defining all of the properties of an object directly, we rely
* on the API to tell us which properties an object has. This method will
* query the API to retrieve a property for an object, if it is not already
* set on the object.
*
* If the call is to a subresource, eg ``$client->account->messages``, no
* request is made.
*
* To help with lazy HTTP requests, we don't actually retrieve an object
* from the API unless you really need it. Hence, this function may make API
* requests even if the property you're requesting isn't available on the
* resource.
*
* :param string $key: The property name
*
* :return mixed: Could be anything.
* :throws: a :php:class:`RestException <Services_Twilio_RestException>` if
* the update fails.
*/
public
function
__get
(
$key
)
{
if
(
$subresource
=
$this
->
getSubresources
(
$key
))
{
return
$subresource
;
}
if
(!
isset
(
$this
->
$key
))
{
$params
=
$this
->
client
->
retrieveData
(
$this
->
uri
);
$this
->
updateAttributes
(
$params
);
}
return
$this
->
$key
;
}
}
Event Timeline
Log In to Comment