summaryrefslogtreecommitdiff
path: root/server/vendor/php-opencloud/common/src/Common/Api/ApiInterface.php
diff options
context:
space:
mode:
authormanzerbredes <loic.guegan_secondary@yahoo.fr>2016-03-15 16:17:39 +0100
committermanzerbredes <loic.guegan_secondary@yahoo.fr>2016-03-15 16:17:39 +0100
commit26d10bc0fa4befbac54453228ae1ce89021bdec2 (patch)
tree029d7240ecf7416205e5f76cf9107a6b5bdf8ca3 /server/vendor/php-opencloud/common/src/Common/Api/ApiInterface.php
parent8ad216dedf017f3d6de047a25d08db3b98e16361 (diff)
parent03ef74d0cfe675a6e18a91f039182ca1b248d8f5 (diff)
Merge branch 'develop' into loic
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.php20
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
+{
+}