1: <?php
2:
3: namespace Saklient\Cloud;
4:
5: require_once __DIR__ . "/../../Saklient/Cloud/Models/Model_Region.php";
6: use \Saklient\Cloud\Models\Model_Region;
7: require_once __DIR__ . "/../../Saklient/Cloud/Client.php";
8: use \Saklient\Cloud\Client;
9: require_once __DIR__ . "/../../Saklient/Util.php";
10: use \Saklient\Util;
11: require_once __DIR__ . "/../../Saklient/Errors/SaklientException.php";
12: use \Saklient\Errors\SaklientException;
13:
14: /**
15: * 設備情報にアクセスするためのモデルを集めたクラス。
16: *
17: * @property-read \Saklient\Cloud\Models\Model_Region $region リージョン情報。
18: */
19: class Facility {
20:
21: /**
22: * @private
23: * @access protected
24: * @ignore
25: * @var Model_Region
26: */
27: protected $_region;
28:
29: /**
30: * @access protected
31: * @ignore
32: * @return \Saklient\Cloud\Models\Model_Region
33: */
34: protected function get_region()
35: {
36: return $this->_region;
37: }
38:
39:
40:
41: /**
42: * @ignore
43: * @access public
44: * @param \Saklient\Cloud\Client $client
45: */
46: public function __construct(\Saklient\Cloud\Client $client)
47: {
48: Util::validateArgCount(func_num_args(), 1);
49: Util::validateType($client, "\\Saklient\\Cloud\\Client");
50: $this->_region = new Model_Region($client);
51: }
52:
53: /**
54: * @ignore
55: */
56: public function __get($key) {
57: switch ($key) {
58: case "region": return $this->get_region();
59: default: return null;
60: }
61: }
62:
63: }
64:
65: