Filtragem
Há dois tipos de filtragem que podem ocorrer em uma rota de manipulador de erros.
Adicionar um filtro à rota do manipulador de erros
Você pode usar um filtro para controlar quais erros são manipulados pela rota do manipulador de erros. Isso permite processar apenas tipos específicos de erros. Se um erro não passar pelo filtro, ele será tratado como se não houvesse nenhuma rota de manipulador de erros definida para o módulo fornecido.
Esses filtros são configurados como qualquer outro filtro no Fusion. Para obter instruções, consulte Adicionar um filtro a um cenário.
Adicionar um roteador seguido de filtros ao manipulador de erros
Adicionar um roteador a uma rota de tratamento de erros permite configurar rotas diferentes para tipos diferentes de erros.
Por exemplo, para configurar uma rota para ser executada quando o erro for um DataError, é possível configurar um filtro que permita a passagem de dados se o tipo de erro mapeado for igual a DataError.
Para obter informações sobre como o Fusion avalia e processa vários tipos de dados, consulte Tipos de erro.
Exemplo: tratamento de erros com filtros
Este exemplo de cenário mostra como esses filtros funcionam para a manipulação de erros.
Se você usar o módulo Dropbox > Criar uma pasta e uma pasta com o mesmo nome já existir, o módulo emitirá um DataError:
O cenário completo funciona da seguinte maneira:
-
O módulo Ferramentas > Definir variável contém o nome da pasta
-
O módulo HTTP > Obter um arquivo busca o arquivo que precisa ser carregado na pasta
-
O módulo Dropbox > Criar uma pasta emitirá um erro se uma pasta já existir com o mesmo nome que a mapeada no módulo
-
A rota do manipulador de erros (bolhas transparentes) contém um roteador para filtrar os erros
A primeira rota é para um tipo de erro especificado chamadoDataError
.- Se um
DataError
ocorrer e os detalhes do erro passarem pelo filtro, o Dropbox > Listar todos os arquivos/subpastas em um módulo de pasta listará todas as pastas no Dropbox. - O filtro subsequente corresponde aos nomes da pasta.
- A diretiva Resume especifica a ID da pasta e o caminho da pasta existente, e a execução do cenário é retomada a partir do módulo Dropbox > Criar uma pasta. No entanto, em vez de criar uma nova pasta, o Fusion usa os valores da diretiva Retomar para mover para o próximo módulo e fazer upload do arquivo na pasta existente.
- Se um
-
A segunda rota é para todos os outros erros e termina com a diretiva Rollback, que resulta na interrupção imediata do cenário
Veja abaixo uma explicação detalhada da rota DataError.
Para usar a pasta existente em seus módulos subsequentes, como Fazer upload de um arquivo, você deve adicionar uma rota de manipulador de erros ao módulo e buscar o caminho da pasta a ser mapeado no módulo de diretiva Retomar que se segue:
O filtro na primeira rota é definido para lidar apenas com o erro específico (DataError) que aparece quando uma pasta com o mesmo nome já existe:
O módulo Dropbox > Listar todos os arquivos em uma pasta é configurado para retornar todas as pastas na pasta de destino. O filtro a seguir passa apenas aquele que estávamos tentando criar originalmente. (O nome da pasta é armazenado no 33. Nome da pasta (item.)
A diretiva Retomar fornece o caminho da pasta como saída para o módulo com falha. Observe que a ID da pasta foi deixada em branco, pois não é necessária para o módulo Fazer upload de um arquivo.
Aninhamento
As rotas do manipulador de erros podem ser criadas e configuradas em todos os módulos, exceto roteadores. Portanto, você pode criar uma rota de manipulador de erros para um módulo que já faz parte de uma rota de manipulador de erros existente.
Exemplo:
Uma rota de manipulador de erros aninhada com filtros:
Nesse cenário, a segunda rota do manipulador de erros é aninhada na primeira rota do manipulador de erros.
Se o módulo Dropbox > Criar uma pasta encontrar um erro, a execução será movida para a primeira rota. Se o filtro DataError Takes Place
for passado, o próximo módulo será executado, seguido pelo módulo de diretiva Retomar se um erro não ocorrer em Dropbox > Listar todos os arquivos/subpastas em um módulo de pasta.
No entanto, se ocorrer um erro em Dropbox > Listar todos os arquivos/subpastas em um módulo de pasta, a execução será movida para a Rota 2 do Manipulador de Erros e terminará com a diretiva Ignore. O módulo de diretiva Resume não é executado neste caso.