Overview

Namespaces

  • PHP
  • Saklient
    • Cloud
      • Enums
      • Errors
      • Models
      • Resources
    • Errors

Classes

  • Model_Appliance
  • Model_Archive
  • Model_Bridge
  • Model_Disk
  • Model_DiskPlan
  • Model_Icon
  • Model_Iface
  • Model_Ipv6Net
  • Model_IsoImage
  • Model_License
  • Model_LicenseInfo
  • Model_Region
  • Model_Router
  • Model_RouterPlan
  • Model_Script
  • Model_Server
  • Model_ServerPlan
  • Model_Swytch
  • Overview
  • Namespace
  • Class
  • Tree
  1: <?php
  2: 
  3: namespace Saklient\Cloud\Models;
  4: 
  5: require_once __DIR__ . "/../../../Saklient/Cloud/Client.php";
  6: use \Saklient\Cloud\Client;
  7: require_once __DIR__ . "/../../../Saklient/Cloud/Models/Model.php";
  8: use \Saklient\Cloud\Models\Model;
  9: require_once __DIR__ . "/../../../Saklient/Cloud/Resources/Resource.php";
 10: use \Saklient\Cloud\Resources\Resource;
 11: require_once __DIR__ . "/../../../Saklient/Cloud/Resources/IsoImage.php";
 12: use \Saklient\Cloud\Resources\IsoImage;
 13: require_once __DIR__ . "/../../../Saklient/Cloud/Enums/EScope.php";
 14: use \Saklient\Cloud\Enums\EScope;
 15: require_once __DIR__ . "/../../../Saklient/Util.php";
 16: use \Saklient\Util;
 17: require_once __DIR__ . "/../../../Saklient/Errors/SaklientException.php";
 18: use \Saklient\Errors\SaklientException;
 19: 
 20: /** ISOイメージを検索・作成するための機能を備えたクラス。 */
 21: class Model_IsoImage extends Model {
 22:     
 23:     /**
 24:      * @private
 25:      * @access protected
 26:      * @ignore
 27:      * @return string
 28:      */
 29:     protected function _apiPath()
 30:     {
 31:         return "/cdrom";
 32:     }
 33:     
 34:     /**
 35:      * @private
 36:      * @access protected
 37:      * @ignore
 38:      * @return string
 39:      */
 40:     protected function _rootKey()
 41:     {
 42:         return "CDROM";
 43:     }
 44:     
 45:     /**
 46:      * @private
 47:      * @access protected
 48:      * @ignore
 49:      * @return string
 50:      */
 51:     protected function _rootKeyM()
 52:     {
 53:         return "CDROMs";
 54:     }
 55:     
 56:     /**
 57:      * @private
 58:      * @access protected
 59:      * @ignore
 60:      * @return string
 61:      */
 62:     protected function _className()
 63:     {
 64:         return "IsoImage";
 65:     }
 66:     
 67:     /**
 68:      * @private
 69:      * @access protected
 70:      * @ignore
 71:      * @param mixed $obj
 72:      * @param boolean $wrapped=false
 73:      * @return \Saklient\Cloud\Resources\Resource
 74:      */
 75:     protected function _createResourceImpl($obj, $wrapped=false)
 76:     {
 77:         Util::validateArgCount(func_num_args(), 1);
 78:         Util::validateType($wrapped, "boolean");
 79:         return new IsoImage($this->_client, $obj, $wrapped);
 80:     }
 81:     
 82:     /**
 83:      * 次に取得するリストの開始オフセットを指定します。
 84:      * 
 85:      * @access public
 86:      * @param int $offset オフセット
 87:      * @return \Saklient\Cloud\Models\Model_IsoImage this
 88:      */
 89:     public function offset($offset)
 90:     {
 91:         Util::validateArgCount(func_num_args(), 1);
 92:         Util::validateType($offset, "int");
 93:         return $this->_offset($offset);
 94:     }
 95:     
 96:     /**
 97:      * 次に取得するリストの上限レコード数を指定します。
 98:      * 
 99:      * @access public
100:      * @param int $count 上限レコード数
101:      * @return \Saklient\Cloud\Models\Model_IsoImage this
102:      */
103:     public function limit($count)
104:     {
105:         Util::validateArgCount(func_num_args(), 1);
106:         Util::validateType($count, "int");
107:         return $this->_limit($count);
108:     }
109:     
110:     /**
111:      * Web APIのフィルタリング設定を直接指定します。
112:      * 
113:      * @access public
114:      * @param string $key キー
115:      * @param mixed $value 値
116:      * @param boolean $multiple=false valueに配列を与え、OR条件で完全一致検索する場合にtrueを指定します。通常、valueはスカラ値であいまい検索されます。
117:      * @return \Saklient\Cloud\Models\Model_IsoImage
118:      */
119:     public function filterBy($key, $value, $multiple=false)
120:     {
121:         Util::validateArgCount(func_num_args(), 2);
122:         Util::validateType($key, "string");
123:         Util::validateType($multiple, "boolean");
124:         return $this->_filterBy($key, $value, $multiple);
125:     }
126:     
127:     /**
128:      * 次のリクエストのために設定されているステートをすべて破棄します。
129:      * 
130:      * @access public
131:      * @return \Saklient\Cloud\Models\Model_IsoImage this
132:      */
133:     public function reset()
134:     {
135:         return $this->_reset();
136:     }
137:     
138:     /**
139:      * 新規リソース作成用のオブジェクトを用意します。
140:      * 
141:      * 返り値のオブジェクトにパラメータを設定し、save() を呼ぶことで実際のリソースが作成されます。
142:      * 
143:      * @access public
144:      * @return \Saklient\Cloud\Resources\IsoImage リソースオブジェクト
145:      */
146:     public function create()
147:     {
148:         return $this->_create();
149:     }
150:     
151:     /**
152:      * 指定したIDを持つ唯一のリソースを取得します。
153:      * 
154:      * @access public
155:      * @param string $id
156:      * @return \Saklient\Cloud\Resources\IsoImage リソースオブジェクト
157:      */
158:     public function getById($id)
159:     {
160:         Util::validateArgCount(func_num_args(), 1);
161:         Util::validateType($id, "string");
162:         return $this->_getById($id);
163:     }
164:     
165:     /**
166:      * リソースの検索リクエストを実行し、結果をリストで取得します。
167:      * 
168:      * @access public
169:      * @return \Saklient\Cloud\Resources\IsoImage[] リソースオブジェクトの配列
170:      */
171:     public function find()
172:     {
173:         return $this->_find();
174:     }
175:     
176:     /**
177:      * 指定した文字列を名前に含むリソースに絞り込みます。
178:      * 
179:      * 大文字・小文字は区別されません。
180:      * 半角スペースで区切られた複数の文字列は、それらをすべて含むことが条件とみなされます。
181:      * 
182:      * @todo Implement test case
183:      * @access public
184:      * @param string $name
185:      * @return \Saklient\Cloud\Models\Model_IsoImage
186:      */
187:     public function withNameLike($name)
188:     {
189:         Util::validateArgCount(func_num_args(), 1);
190:         Util::validateType($name, "string");
191:         return $this->_withNameLike($name);
192:     }
193:     
194:     /**
195:      * 指定したタグを持つリソースに絞り込みます。
196:      * 
197:      * 複数のタグを指定する場合は withTags() を利用してください。
198:      * 
199:      * @todo Implement test case
200:      * @access public
201:      * @param string $tag
202:      * @return \Saklient\Cloud\Models\Model_IsoImage
203:      */
204:     public function withTag($tag)
205:     {
206:         Util::validateArgCount(func_num_args(), 1);
207:         Util::validateType($tag, "string");
208:         return $this->_withTag($tag);
209:     }
210:     
211:     /**
212:      * 指定したすべてのタグを持つリソースに絞り込みます。
213:      * 
214:      * @todo Implement test case
215:      * @access public
216:      * @param string[] $tags
217:      * @return \Saklient\Cloud\Models\Model_IsoImage
218:      */
219:     public function withTags($tags)
220:     {
221:         Util::validateArgCount(func_num_args(), 1);
222:         Util::validateType($tags, "\\ArrayObject");
223:         return $this->_withTags($tags);
224:     }
225:     
226:     /**
227:      * 指定したDNFに合致するタグを持つリソースに絞り込みます。
228:      * 
229:      * @todo Implement test case
230:      * @access public
231:      * @param string[][] $dnf
232:      * @return \Saklient\Cloud\Models\Model_IsoImage
233:      */
234:     public function withTagDnf($dnf)
235:     {
236:         Util::validateArgCount(func_num_args(), 1);
237:         Util::validateType($dnf, "\\ArrayObject");
238:         return $this->_withTagDnf($dnf);
239:     }
240:     
241:     /**
242:      * 名前でソートします。
243:      * 
244:      * @todo Implement test case
245:      * @access public
246:      * @param boolean $reverse=false
247:      * @return \Saklient\Cloud\Models\Model_IsoImage
248:      */
249:     public function sortByName($reverse=false)
250:     {
251:         Util::validateType($reverse, "boolean");
252:         return $this->_sortByName($reverse);
253:     }
254:     
255:     /**
256:      * @ignore
257:      * @access public
258:      * @param \Saklient\Cloud\Client $client
259:      */
260:     public function __construct(\Saklient\Cloud\Client $client)
261:     {
262:         parent::__construct($client);
263:         Util::validateArgCount(func_num_args(), 1);
264:         Util::validateType($client, "\\Saklient\\Cloud\\Client");
265:     }
266:     
267:     /**
268:      * 指定したサイズのISOイメージに絞り込みます。
269:      * 
270:      * @access public
271:      * @param int $sizeGib
272:      * @return \Saklient\Cloud\Models\Model_IsoImage
273:      */
274:     public function withSizeGib($sizeGib)
275:     {
276:         Util::validateArgCount(func_num_args(), 1);
277:         Util::validateType($sizeGib, "int");
278:         $this->_filterBy("SizeMB", new \ArrayObject([$sizeGib * 1024]));
279:         return $this;
280:     }
281:     
282:     /**
283:      * パブリックISOイメージに絞り込みます。
284:      * 
285:      * @access public
286:      * @return \Saklient\Cloud\Models\Model_IsoImage
287:      */
288:     public function withSharedScope()
289:     {
290:         $this->_filterBy("Scope", new \ArrayObject([EScope::shared]));
291:         return $this;
292:     }
293:     
294:     /**
295:      * プライベートISOイメージに絞り込みます。
296:      * 
297:      * @access public
298:      * @return \Saklient\Cloud\Models\Model_IsoImage
299:      */
300:     public function withUserScope()
301:     {
302:         $this->_filterBy("Scope", new \ArrayObject([EScope::user]));
303:         return $this;
304:     }
305:     
306:     /**
307:      * サイズでソートします。
308:      * 
309:      * @access public
310:      * @param boolean $reverse=false
311:      * @return \Saklient\Cloud\Models\Model_IsoImage
312:      */
313:     public function sortBySize($reverse=false)
314:     {
315:         Util::validateType($reverse, "boolean");
316:         $this->_sort("SizeMB", $reverse);
317:         return $this;
318:     }
319:     
320:     
321: 
322: }
323: 
324: 
API documentation generated by ApiGen 2.8.0