diff options
Diffstat (limited to 'Twilio/Rest/Notify/V1/CredentialInstance.php')
-rw-r--r-- | Twilio/Rest/Notify/V1/CredentialInstance.php | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/Twilio/Rest/Notify/V1/CredentialInstance.php b/Twilio/Rest/Notify/V1/CredentialInstance.php new file mode 100644 index 0000000..9dbfe90 --- /dev/null +++ b/Twilio/Rest/Notify/V1/CredentialInstance.php @@ -0,0 +1,136 @@ +<?php + +/** + * This code was generated by + * \ / _ _ _| _ _ + * | (_)\/(_)(_|\/| |(/_ v1.0.0 + * / / + */ + +namespace Twilio\Rest\Notify\V1; + +use Twilio\Deserialize; +use Twilio\Exceptions\TwilioException; +use Twilio\InstanceResource; +use Twilio\Version; + +/** + * @property string sid + * @property string accountSid + * @property string friendlyName + * @property string type + * @property string sandbox + * @property \DateTime dateCreated + * @property \DateTime dateUpdated + * @property string url + */ +class CredentialInstance extends InstanceResource { + /** + * Initialize the CredentialInstance + * + * @param \Twilio\Version $version Version that contains the resource + * @param mixed[] $payload The response payload + * @param string $sid The sid + * @return \Twilio\Rest\Notify\V1\CredentialInstance + */ + public function __construct(Version $version, array $payload, $sid = null) { + parent::__construct($version); + + // Marshaled Properties + $this->properties = array( + 'sid' => $payload['sid'], + 'accountSid' => $payload['account_sid'], + 'friendlyName' => $payload['friendly_name'], + 'type' => $payload['type'], + 'sandbox' => $payload['sandbox'], + 'dateCreated' => Deserialize::iso8601DateTime($payload['date_created']), + 'dateUpdated' => Deserialize::iso8601DateTime($payload['date_updated']), + 'url' => $payload['url'], + ); + + $this->solution = array( + 'sid' => $sid ?: $this->properties['sid'], + ); + } + + /** + * Generate an instance context for the instance, the context is capable of + * performing various actions. All instance actions are proxied to the context + * + * @return \Twilio\Rest\Notify\V1\CredentialContext Context for this + * CredentialInstance + */ + protected function proxy() { + if (!$this->context) { + $this->context = new CredentialContext( + $this->version, + $this->solution['sid'] + ); + } + + return $this->context; + } + + /** + * Fetch a CredentialInstance + * + * @return CredentialInstance Fetched CredentialInstance + */ + public function fetch() { + return $this->proxy()->fetch(); + } + + /** + * Update the CredentialInstance + * + * @param array $options Optional Arguments + * @return CredentialInstance Updated CredentialInstance + */ + public function update(array $options = array()) { + return $this->proxy()->update( + $options + ); + } + + /** + * Deletes the CredentialInstance + * + * @return boolean True if delete succeeds, false otherwise + */ + public function delete() { + return $this->proxy()->delete(); + } + + /** + * Magic getter to access properties + * + * @param string $name Property to access + * @return mixed The requested property + * @throws TwilioException For unknown properties + */ + public function __get($name) { + if (array_key_exists($name, $this->properties)) { + return $this->properties[$name]; + } + + if (property_exists($this, '_' . $name)) { + $method = 'get' . ucfirst($name); + return $this->$method(); + } + + throw new TwilioException('Unknown property: ' . $name); + } + + /** + * Provide a friendly representation + * + * @return string Machine friendly representation + */ + public function __toString() { + $context = array(); + foreach ($this->solution as $key => $value) { + $context[] = "$key=$value"; + } + return '[Twilio.Notify.V1.CredentialInstance ' . implode(' ', $context) . ']'; + } +}
\ No newline at end of file |