istic-openstack/server/vendor/php-opencloud/common/src/Common/Api/ApiInterface.php
2016-03-09 15:36:02 +01:00

20 lines
859 B
PHP

<?php
namespace OpenCloud\Common\Api;
/**
* All classes which implement this interface are a data representation of a remote OpenCloud API.
* They do not execute functionality, but instead return data for each API operation for other parts
* of the SDK to use. Usually, the data is injected into {@see OpenCloud\Common\Api\Operation} objects.
* The operation is then serialized into a {@see GuzzleHttp\Message\Request} and sent to the API.
*
* The reason for storing all the API-specific data is to decouple service information from client
* HTTP functionality. Too often it is mixed all across different layers, leading to duplication and
* no separation of concerns. The choice was made for storage in PHP classes, rather than YAML or JSON
* syntax, due to performance concerns.
*
* @package OpenCloud\Common\Api
*/
interface ApiInterface
{
}