HEX
Server: LiteSpeed
System: Linux premium69.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
User: swifizcd (1555)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: /home/swifizcd/shoppers-joy.com.ng/wp-content/plugins/yaysmtp/vendor_amazon/Aws/Api/Operation.php
<?php

namespace YaySMTP\Aws3\Aws\Api;

/**
 * Represents an API operation.
 */
class Operation extends \YaySMTP\Aws3\Aws\Api\AbstractModel
{
    private $input;
    private $output;
    private $errors;
    public function __construct(array $definition, \YaySMTP\Aws3\Aws\Api\ShapeMap $shapeMap)
    {
        $definition['type'] = 'structure';
        if (!isset($definition['http']['method'])) {
            $definition['http']['method'] = 'POST';
        }
        if (!isset($definition['http']['requestUri'])) {
            $definition['http']['requestUri'] = '/';
        }
        parent::__construct($definition, $shapeMap);
    }
    /**
     * Returns an associative array of the HTTP attribute of the operation:
     *
     * - method: HTTP method of the operation
     * - requestUri: URI of the request (can include URI template placeholders)
     *
     * @return array
     */
    public function getHttp()
    {
        return $this->definition['http'];
    }
    /**
     * Get the input shape of the operation.
     *
     * @return StructureShape
     */
    public function getInput()
    {
        if (!$this->input) {
            if ($input = $this['input']) {
                $this->input = $this->shapeFor($input);
            } else {
                $this->input = new \YaySMTP\Aws3\Aws\Api\StructureShape([], $this->shapeMap);
            }
        }
        return $this->input;
    }
    /**
     * Get the output shape of the operation.
     *
     * @return StructureShape
     */
    public function getOutput()
    {
        if (!$this->output) {
            if ($output = $this['output']) {
                $this->output = $this->shapeFor($output);
            } else {
                $this->output = new \YaySMTP\Aws3\Aws\Api\StructureShape([], $this->shapeMap);
            }
        }
        return $this->output;
    }
    /**
     * Get an array of operation error shapes.
     *
     * @return Shape[]
     */
    public function getErrors()
    {
        if ($this->errors === null) {
            if ($errors = $this['errors']) {
                foreach ($errors as $key => $error) {
                    $errors[$key] = $this->shapeFor($error);
                }
                $this->errors = $errors;
            } else {
                $this->errors = [];
            }
        }
        return $this->errors;
    }
}