summaryrefslogtreecommitdiff
path: root/vendor/guzzle/guzzle/src/Guzzle/Service/Description/OperationInterface.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/guzzle/guzzle/src/Guzzle/Service/Description/OperationInterface.php')
-rw-r--r--vendor/guzzle/guzzle/src/Guzzle/Service/Description/OperationInterface.php159
1 files changed, 159 insertions, 0 deletions
diff --git a/vendor/guzzle/guzzle/src/Guzzle/Service/Description/OperationInterface.php b/vendor/guzzle/guzzle/src/Guzzle/Service/Description/OperationInterface.php
new file mode 100644
index 0000000..4de41bd
--- /dev/null
+++ b/vendor/guzzle/guzzle/src/Guzzle/Service/Description/OperationInterface.php
@@ -0,0 +1,159 @@
+<?php
+
+namespace Guzzle\Service\Description;
+
+use Guzzle\Common\ToArrayInterface;
+
+/**
+ * Interface defining data objects that hold the information of an API operation
+ */
+interface OperationInterface extends ToArrayInterface
+{
+ const TYPE_PRIMITIVE = 'primitive';
+ const TYPE_CLASS = 'class';
+ const TYPE_DOCUMENTATION = 'documentation';
+ const TYPE_MODEL = 'model';
+
+ /**
+ * Get the service description that the operation belongs to
+ *
+ * @return ServiceDescriptionInterface|null
+ */
+ public function getServiceDescription();
+
+ /**
+ * Set the service description that the operation belongs to
+ *
+ * @param ServiceDescriptionInterface $description Service description
+ *
+ * @return self
+ */
+ public function setServiceDescription(ServiceDescriptionInterface $description);
+
+ /**
+ * Get the params of the operation
+ *
+ * @return array
+ */
+ public function getParams();
+
+ /**
+ * Returns an array of parameter names
+ *
+ * @return array
+ */
+ public function getParamNames();
+
+ /**
+ * Check if the operation has a specific parameter by name
+ *
+ * @param string $name Name of the param
+ *
+ * @return bool
+ */
+ public function hasParam($name);
+
+ /**
+ * Get a single parameter of the operation
+ *
+ * @param string $param Parameter to retrieve by name
+ *
+ * @return Parameter|null
+ */
+ public function getParam($param);
+
+ /**
+ * Get the HTTP method of the operation
+ *
+ * @return string|null
+ */
+ public function getHttpMethod();
+
+ /**
+ * Get the concrete operation class that implements this operation
+ *
+ * @return string
+ */
+ public function getClass();
+
+ /**
+ * Get the name of the operation
+ *
+ * @return string|null
+ */
+ public function getName();
+
+ /**
+ * Get a short summary of what the operation does
+ *
+ * @return string|null
+ */
+ public function getSummary();
+
+ /**
+ * Get a longer text field to explain the behavior of the operation
+ *
+ * @return string|null
+ */
+ public function getNotes();
+
+ /**
+ * Get the documentation URL of the operation
+ *
+ * @return string|null
+ */
+ public function getDocumentationUrl();
+
+ /**
+ * Get what is returned from the method. Can be a primitive, class name, or model. For example, the responseClass
+ * could be 'array', which would inherently use a responseType of 'primitive'. Using a class name would set a
+ * responseType of 'class'. Specifying a model by ID will use a responseType of 'model'.
+ *
+ * @return string|null
+ */
+ public function getResponseClass();
+
+ /**
+ * Get information about how the response is unmarshalled: One of 'primitive', 'class', 'model', or 'documentation'
+ *
+ * @return string
+ */
+ public function getResponseType();
+
+ /**
+ * Get notes about the response of the operation
+ *
+ * @return string|null
+ */
+ public function getResponseNotes();
+
+ /**
+ * Get whether or not the operation is deprecated
+ *
+ * @return bool
+ */
+ public function getDeprecated();
+
+ /**
+ * Get the URI that will be merged into the generated request
+ *
+ * @return string
+ */
+ public function getUri();
+
+ /**
+ * Get the errors that could be encountered when executing the operation
+ *
+ * @return array
+ */
+ public function getErrorResponses();
+
+ /**
+ * Get extra data from the operation
+ *
+ * @param string $name Name of the data point to retrieve
+ *
+ * @return mixed|null
+ */
+ public function getData($name);
+}