diff options
Diffstat (limited to 'server/vendor/php-opencloud/common/src/Common/Api/ApiInterface.php')
| -rw-r--r-- | server/vendor/php-opencloud/common/src/Common/Api/ApiInterface.php | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/server/vendor/php-opencloud/common/src/Common/Api/ApiInterface.php b/server/vendor/php-opencloud/common/src/Common/Api/ApiInterface.php new file mode 100644 index 0000000..d5d26a0 --- /dev/null +++ b/server/vendor/php-opencloud/common/src/Common/Api/ApiInterface.php @@ -0,0 +1,20 @@ +<?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 +{ +} |
