LibCloud\Compute\Providers\Rackspace\RackspaceProvider::listNodes PHP Метод

listNodes() публичный Метод

public listNodes ( $nodeId = null )
    public function listNodes($nodeId = null)
    {
        $servers = array();
        if ($nodeId) {
            try {
                $servers[] = $this->getService()->server($nodeId);
            } catch (ClientErrorResponseException $e) {
                if (404 !== $e->getResponse()->getStatusCode()) {
                    throw $e;
                }
            }
        } else {
            foreach ($this->getService()->serverList() as $server) {
                $servers[] = $server;
            }
        }
        return array_map(array($this, 'toNode'), $servers);
    }

Usage Example

 public function testListNodesWithId()
 {
     $this->addMockSubscriber($this->getTestFilePath('Server'));
     $this->addMockSubscriber($this->getTestFilePath('Server_Meta'));
     $expectedId = '2e1a538c-5238-4bd8-af7d-3727ef06d7b2';
     $nodes = $this->provider->listNodes($expectedId);
     $node = $nodes[0];
     $this->assertCount(1, $nodes, 'listNodes returns an array with exactly one item');
     $this->assertSame($expectedId, $node->getId(), 'The Node ID matches the ID that was requested');
     return $node;
 }