AutorÃa | Ultima modificación | Ver Log |
<?phpnamespace Aws\Api;/*** Represents a structure shape and resolve member shape references.*/class StructureShape extends Shape{/*** @var Shape[]*/private $members;public function __construct(array $definition, ShapeMap $shapeMap){$definition['type'] = 'structure';if (!isset($definition['members'])) {$definition['members'] = [];}parent::__construct($definition, $shapeMap);}/*** Gets a list of all members** @return Shape[]*/public function getMembers(){if (empty($this->members)) {$this->generateMembersHash();}return $this->members;}/*** Check if a specific member exists by name.** @param string $name Name of the member to check** @return bool*/public function hasMember($name){return isset($this->definition['members'][$name]);}/*** Retrieve a member by name.** @param string $name Name of the member to retrieve** @return Shape* @throws \InvalidArgumentException if the member is not found.*/public function getMember($name){$members = $this->getMembers();if (!isset($members[$name])) {throw new \InvalidArgumentException('Unknown member ' . $name);}return $members[$name];}private function generateMembersHash(){$this->members = [];foreach ($this->definition['members'] as $name => $definition) {$this->members[$name] = $this->shapeFor($definition);}}}