diff options
Diffstat (limited to 'Twilio/Rest/Preview/Wireless/CommandInstance.php')
-rw-r--r-- | Twilio/Rest/Preview/Wireless/CommandInstance.php | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/Twilio/Rest/Preview/Wireless/CommandInstance.php b/Twilio/Rest/Preview/Wireless/CommandInstance.php new file mode 100644 index 0000000..597347a --- /dev/null +++ b/Twilio/Rest/Preview/Wireless/CommandInstance.php @@ -0,0 +1,117 @@ +<?php + +/** + * This code was generated by + * \ / _ _ _| _ _ + * | (_)\/(_)(_|\/| |(/_ v1.0.0 + * / / + */ + +namespace Twilio\Rest\Preview\Wireless; + +use Twilio\Deserialize; +use Twilio\Exceptions\TwilioException; +use Twilio\InstanceResource; +use Twilio\Version; + +/** + * @property string sid + * @property string accountSid + * @property string deviceSid + * @property string command + * @property string status + * @property string direction + * @property \DateTime dateCreated + * @property \DateTime dateUpdated + * @property string url + */ +class CommandInstance extends InstanceResource { + /** + * Initialize the CommandInstance + * + * @param \Twilio\Version $version Version that contains the resource + * @param mixed[] $payload The response payload + * @param string $sid The sid + * @return \Twilio\Rest\Preview\Wireless\CommandInstance + */ + public function __construct(Version $version, array $payload, $sid = null) { + parent::__construct($version); + + // Marshaled Properties + $this->properties = array( + 'sid' => $payload['sid'], + 'accountSid' => $payload['account_sid'], + 'deviceSid' => $payload['device_sid'], + 'command' => $payload['command'], + 'status' => $payload['status'], + 'direction' => $payload['direction'], + '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\Preview\Wireless\CommandContext Context for this + * CommandInstance + */ + protected function proxy() { + if (!$this->context) { + $this->context = new CommandContext( + $this->version, + $this->solution['sid'] + ); + } + + return $this->context; + } + + /** + * Fetch a CommandInstance + * + * @return CommandInstance Fetched CommandInstance + */ + public function fetch() { + return $this->proxy()->fetch(); + } + + /** + * 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.Preview.Wireless.CommandInstance ' . implode(' ', $context) . ']'; + } +}
\ No newline at end of file |