Alterado `PHP Binding Classes` para arrumar alguns erros de parse e para tratar melhor os erros da API
Atenção: Eu ainda não terminei de testar as alterações feitas nessa pull request. Não fazer o merge ainda. Criei a pull request para compartilhar o trabalho com vocês.
Motivo da Pull Request
Ao tentar usar a biblioteca PHP, tive diversos problemas como erros de parse de json , modelos de objetos fora do padrão do contrato da API da Nfe.io, .... Além disso, muitos erros na comunicação com a API (HTTP 409, HTTP 400, ...) eram camuflados e ignorados na biblioteca, dando um falso positivo de que tudo ocorreu bem para quem usava a mesma.
Abaixo segue a lista das alterações feitas na biblioteca.
Peço para que analisem, e se fizer sentido, façam o merge da full request para que futuros usuários não tenham os mesmo problemas que eu tive.
Allterações
- Correção de leitura do body da response em APIRequest
- Melhoria nos tratamentos de erros da API em
APIRequest - Correção na construção das binding classes em
APIResource - Criação de novos
exceptions - Correção do parser da resposta da API em
Utilities
Outras Melhorias
A biblioteca está um pouco defasada em termos de arquitetura de código. Não segue PSR e a arquitetura poderia estar melhor desenhada.
Esta pull request não tem como objetivo atacar estes pontos de melhoria.
@bfgasparin Quando terminar, me marca que gostaria de fazer o code review. :)