aMessage

class AeonDigital\Http\Message\Abstracts\aMessage
Fornece as operações básicas para o uso de mensagens Http (request ou response).
Instâncias desta classe são consideradas imutáveis; todos os métodos que podem vir a alterar
seu estado DEVEM ser implementados de forma a manter seu estado e retornar uma nova
instância com a alteração necessária para o novo estado.

Esta classe implementa a interface interface
Psr\Http\Message\MessageInterface.
Parent:AeonDigital\BObject
Implements:Psr\Http\Message\MessageInterface
Used traits:AeonDigitalTraitsMainCheckArgumentException

Properties

Methods

public AeonDigital\Http\Message\Abstracts\aMessage::getProtocolVersion()
Retorna a versão do protocolo Http sendo usado.
Returns:‹ string ›
public AeonDigital\Http\Message\Abstracts\aMessage::withProtocolVersion($protocolVersion)
Este método DEVE manter o estado da instância atual e retornar
uma nova instância contendo o "protocolVersion" especificado.
Parameters:
  • ‹ string › $protocolVersion
    O novo valor para "protocolVersion" na nova instância.
Returns:

‹ static ›

Throws:

‹ InvalidArgumentException ›
Caso seja definido um valor inválido para "protocolVersion".

public AeonDigital\Http\Message\Abstracts\aMessage::getHeaders()
Retorna um array associativo onde cada chave é um header Http
usado na mensagem.
Valores múltiplos (separados por virgula) serão quebrados
em um novo array de valores.

O formato do nome do header é mantido conforme ele foi definido.
Returns:‹ array[][] ›
public AeonDigital\Http\Message\Abstracts\aMessage::hasHeader($name)
Verifica se um determinado header já existe.
Esta método é "case-insensitive".
Parameters:
  • ‹ string › $name
    Nome do header alvo.
Returns:

‹ bool ›

public AeonDigital\Http\Message\Abstracts\aMessage::getHeader($name)
Retorna a coleção de valores que o header de nome indicado possui
no momento. Um array vazio será retornado caso o header não exista.
Esta método é "case-insensitive".
Parameters:
  • ‹ string › $name
    Nome do header alvo.
Returns:

‹ array ›

public AeonDigital\Http\Message\Abstracts\aMessage::getHeaderLine($name)
Retorna uma string representando toda a coleção de valores determinados
para o header de nome indicado. Cada valor é separado por virgula.
Esta método é "case-insensitive".

Uma string vazia será retornada caso o header não exista.
Parameters:
  • ‹ string › $name
    Nome do header alvo.
Returns:

‹ string ›

public AeonDigital\Http\Message\Abstracts\aMessage::withHeader($name, $value)
Este método DEVE manter o estado da instância atual e retornar
uma nova instância contendo o novo valor para o "header" especificado.
Este método substitui integralmente o valor do "header" pelo novo valor
caso já exista um para a chave indicada..
Parameters:
  • ‹ string › $name
    Nome do header.
  • ‹ string | array › $value
    Valor do header.
Returns:

‹ static ›

Throws:

‹ InvalidArgumentException ›
Caso seja definido um valor inválido para o nome ou valor do header.

public AeonDigital\Http\Message\Abstracts\aMessage::withAddedHeader($name, $value)
Este método DEVE manter o estado da instância atual e retornar
uma nova instância contendo a adição feita para o "header" especificado.
Este método pode/deve adicionar o novo "header" na coleção existente
caso ele não exista e, se existir, incrementar seu valor atual com o
valor informado.
Parameters:
  • ‹ string › $name
    Nome do header.
  • ‹ string | array › $value
    Valores a serem adicionados ao header.
Returns:

‹ static ›

Throws:

‹ InvalidArgumentException ›
Caso seja definido um valor inválido para o nome ou valor do header.

public AeonDigital\Http\Message\Abstracts\aMessage::withoutHeader($name)
Este método DEVE manter o estado da instância atual e retornar
uma nova instância sem o "header" especificado.
Parameters:
  • ‹ string › $name
    Nome do header.
Returns:

‹ static ›

Throws:

‹ InvalidArgumentException ›
Caso seja definido um valor inválido para o nome do header.

public AeonDigital\Http\Message\Abstracts\aMessage::getBody()
Retorna o objeto "Stream" que forma o corpo da mensagem Http.
O objeto deve implementar a interface "iStream".
See:http://www.php-fig.org/psr/
Returns:‹ \AeonDigital\Interfaces\Stream\iStream ›
public AeonDigital\Http\Message\Abstracts\aMessage::withBody($body)
Este método DEVE manter o estado da instância atual e retornar
uma nova instância contendo o "body" especificado.
Parameters:
  • ‹ Psr\Http\Message\StreamInterface › $body
    Objeto "StreamInterface".
Returns:

‹ static ›

Throws:

‹ InvalidArgumentException ›
Caso seja definido um valor inválido para o novo "body".

public AeonDigital\Http\Message\Abstracts\aMessage::__construct($version, $headers, $body)
Inicia um novo objeto que representa uma mensagem Http.
Parameters:
  • ‹ string › $version
    Versão do protocolo Http
  • ‹ AeonDigital\Interfaces\Http\Data\iHeaderCollection › $headers
    Objeto que implementa "iHeaderCollection" cotendo os cabeçalhos da requisição.
  • ‹ AeonDigital\Interfaces\Stream\iStream › $body
    Objeto "Stream" representando o corpo da mensagem.
Throws:

‹ InvalidArgumentException ›

public AeonDigital\Http\Message\Abstracts\aMessage::__set($name, $value)
Desabilita a função mágica "__set" para assegurar a imutabilidade
da instância conforme definido na interface "iUri".