1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107:
<?php
namespace Guzzle\Service\Description;
/**
* A ServiceDescription stores service information based on a service document
*/
interface ServiceDescriptionInterface extends \Serializable
{
/**
* Get the basePath/baseUrl of the description
*
* @return string
*/
public function getBaseUrl();
/**
* Get the API operations of the service
*
* @return array Returns an array of {@see OperationInterface} objects
*/
public function getOperations();
/**
* Check if the service has an operation by name
*
* @param string $name Name of the operation to check
*
* @return bool
*/
public function hasOperation($name);
/**
* Get an API operation by name
*
* @param string $name Name of the command
*
* @return OperationInterface|null
*/
public function getOperation($name);
/**
* Get a specific model from the description
*
* @param string $id ID of the model
*
* @return Parameter|null
*/
public function getModel($id);
/**
* Get all service description models
*
* @return array
*/
public function getModels();
/**
* Check if the description has a specific model by name
*
* @param string $id ID of the model
*
* @return bool
*/
public function hasModel($id);
/**
* Get the API version of the service
*
* @return string
*/
public function getApiVersion();
/**
* Get the name of the API
*
* @return string
*/
public function getName();
/**
* Get a summary of the purpose of the API
*
* @return string
*/
public function getDescription();
/**
* Get arbitrary data from the service description that is not part of the Guzzle spec
*
* @param string $key Data key to retrieve
*
* @return null|mixed
*/
public function getData($key);
/**
* Set arbitrary data on the service description
*
* @param string $key Data key to set
* @param mixed $value Value to set
*
* @return self
*/
public function setData($key, $value);
}