Pular para o conteúdo principal

Eventos e exceções

Use eventos do ciclo de vida para integrar a aplicação e os tipos de exceção para recuperação no limite capaz de tratar a falha.

Eventos do ciclo de vida

EventoDados públicosMomento do disparo
FeedStartingEventfeed, targetApós a verificação preliminar do armazenamento e do caminho, antes da resolução do conversor e da preparação.
FeedFinishedEventfeed, target, path, pathsDepois da publicação bem-sucedida de todos os arquivos gerados.

$target contém a chave do alvo para uma geração direcionada e null para um feed comum. FeedFinishedEvent::$paths contém todos os caminhos publicados em ordem. $path é mantido para compatibilidade e sempre contém o primeiro caminho.

Falhas de entrada e busca

ExceçãoSignificado
InvalidFeedArgumentExceptionO ID do feed no console é inválido.
FeedNotFoundExceptionNão existe registro para o ID solicitado.
InvalidExpressionExceptionA expressão de agendamento é inválida.
UnknownFeedClassExceptionA classe configurada não pode ser resolvida.
UnexpectedClassExceptionA classe resolvida não atende ao contrato esperado.

A seleção de alvos usa exceções SPL. Quando --target é fornecido, feed:generate lança InvalidArgumentException se nenhum ID de registro do feed for informado, se uma chave de alvo estiver vazia ou se o feed selecionado não implementar HasFeedTargets. O comando lança UnexpectedValueException quando findTarget() retorna null.

Falhas de serialização e armazenamento

ExceçãoSignificado
InvalidCsvRowExceptionA linha CSV não corresponde ao esquema de colunas definido.
InvalidCsvValueExceptionUm campo CSV não pode ser serializado como valor escalar.
InvalidXmlCDataExceptionO valor CDATA é inválido.
InvalidXmlFragmentExceptionO fragmento XML bruto é inválido.
UnsupportedStorageDiskExceptionO disco Laravel escolhido não é resolvido como FilesystemAdapter.
OpenFeedExceptionO recurso temporário de saída não pode ser aberto.
WriteFeedExceptionA saída completa não pode ser gravada.
CloseFeedExceptionO recurso de saída não pode ser fechado.
ResourceMetaExceptionOs metadados necessários do stream não estão disponíveis.
FeedGenerationExceptionA geração falhou para uma classe de feed.

FeedGenerationException::getFeed() retorna a classe do feed. getFeedTarget() retorna a chave do alvo para uma geração direcionada e null para um feed comum. A falha original continua disponível por getPrevious().

Capture exceções somente onde a aplicação puder adicionar recuperação ou contexto útil. Deixe o Laravel reportar falhas irrecuperáveis.

Veja também