Overview

Namespaces

  • OpenCloud
    • Autoscale
      • Resource
    • CDN
      • Resource
    • CloudMonitoring
      • Collection
      • Exception
      • Resource
    • Common
      • Collection
      • Constants
      • Exceptions
      • Http
        • Message
      • Log
      • Resource
      • Service
    • Compute
      • Constants
      • Exception
      • Resource
    • Database
      • Resource
    • DNS
      • Collection
      • Resource
    • Identity
      • Constants
      • Resource
    • Image
      • Enum
      • Resource
        • JsonPatch
        • Schema
    • LoadBalancer
      • Collection
      • Enum
      • Resource
    • Networking
      • Resource
    • ObjectStore
      • Constants
      • Enum
      • Exception
      • Resource
      • Upload
    • Orchestration
      • Resource
    • Queues
      • Collection
      • Exception
      • Resource
    • Volume
      • Resource
  • PHP

Classes

  • Agent
  • AgentConnection
  • AgentHost
  • AgentHostInfo
  • AgentTarget
  • AgentToken
  • Alarm
  • Changelog
  • Check
  • CheckType
  • Entity
  • Metric
  • MetricDataPoint
  • Notification
  • NotificationHistory
  • NotificationType
  • ReadOnlyResource
  • View
  • Zone
  • Overview
  • Namespace
  • Class
  • Tree
 1: <?php
 2: /**
 3:  * Copyright 2012-2014 Rackspace US, Inc.
 4:  *
 5:  * Licensed under the Apache License, Version 2.0 (the "License");
 6:  * you may not use this file except in compliance with the License.
 7:  * You may obtain a copy of the License at
 8:  *
 9:  * http://www.apache.org/licenses/LICENSE-2.0
10:  *
11:  * Unless required by applicable law or agreed to in writing, software
12:  * distributed under the License is distributed on an "AS IS" BASIS,
13:  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14:  * See the License for the specific language governing permissions and
15:  * limitations under the License.
16:  */
17: 
18: namespace OpenCloud\CloudMonitoring\Resource;
19: 
20: use OpenCloud\CloudMonitoring\Collection\MonitoringIterator;
21: use OpenCloud\CloudMonitoring\Exception;
22: 
23: /**
24:  * Agent class.
25:  */
26: class AgentHost extends ReadOnlyResource
27: {
28:     private $token;
29:     private $label;
30: 
31:     protected static $json_name = false;
32:     protected static $json_collection_name = 'info';
33:     protected static $url_resource = 'host_info';
34: 
35:     private $allowedTypes = array(
36:         'cpus',
37:         'disks',
38:         'filesystems',
39:         'memory',
40:         'network_interfaces',
41:         'processes',
42:         'system',
43:         'who'
44:     );
45: 
46:     public function info($type)
47:     {
48:         if (!in_array($type, $this->allowedTypes)) {
49:             throw new Exception\AgentException(sprintf(
50:                 'Incorrect info type. Please specify one of the following: %s',
51:                 implode(', ', $this->allowedTypes)
52:             ));
53:         }
54: 
55:         return MonitoringIterator::factory($this, array(
56:             'baseUrl'       => $this->getUrl($type),
57:             'resourceClass' => 'AgentHostInfo'
58:         ));
59:     }
60: }
61: 
API documentation generated by ApiGen 2.8.0