diff options
Diffstat (limited to 'Twilio/Rest/Preview/Wireless/RatePlanInstance.php')
-rw-r--r-- | Twilio/Rest/Preview/Wireless/RatePlanInstance.php | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/Twilio/Rest/Preview/Wireless/RatePlanInstance.php b/Twilio/Rest/Preview/Wireless/RatePlanInstance.php new file mode 100644 index 0000000..d5212b8 --- /dev/null +++ b/Twilio/Rest/Preview/Wireless/RatePlanInstance.php @@ -0,0 +1,129 @@ +<?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 alias + * @property string accountSid + * @property string friendlyName + * @property string dataMetering + * @property string capabilities + * @property string voiceCap + * @property string messagingCap + * @property string commandsCap + * @property string dataCap + * @property string capPeriod + * @property string capUnit + * @property \DateTime dateCreated + * @property \DateTime dateUpdated + * @property string url + */ +class RatePlanInstance extends InstanceResource { + /** + * Initialize the RatePlanInstance + * + * @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\RatePlanInstance + */ + public function __construct(Version $version, array $payload, $sid = null) { + parent::__construct($version); + + // Marshaled Properties + $this->properties = array( + 'sid' => $payload['sid'], + 'alias' => $payload['alias'], + 'accountSid' => $payload['account_sid'], + 'friendlyName' => $payload['friendly_name'], + 'dataMetering' => $payload['data_metering'], + 'capabilities' => $payload['capabilities'], + 'voiceCap' => $payload['voice_cap'], + 'messagingCap' => $payload['messaging_cap'], + 'commandsCap' => $payload['commands_cap'], + 'dataCap' => $payload['data_cap'], + 'capPeriod' => $payload['cap_period'], + 'capUnit' => $payload['cap_unit'], + '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\RatePlanContext Context for this + * RatePlanInstance + */ + protected function proxy() { + if (!$this->context) { + $this->context = new RatePlanContext( + $this->version, + $this->solution['sid'] + ); + } + + return $this->context; + } + + /** + * Fetch a RatePlanInstance + * + * @return RatePlanInstance Fetched RatePlanInstance + */ + 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.RatePlanInstance ' . implode(' ', $context) . ']'; + } +}
\ No newline at end of file |