Intégrations de plusieurs appels
Les scripts d’intégration à appels multiples (ou à pages multiples) sont un peu plus compliqués. Ils nécessitent plusieurs appels à une source de données pour récupérer des données.
À l’instar d’une intégration à appel unique, retrieveData() doit également être implémentée pour une intégration à appels multiples. Dans le corps de retrieveData(), l’intégration utilise les méthodes hasMoreData() et setNextRunParameters() fournies par VulnerabilityIntegrationBase.
La méthode hasMoreData() accepte un seul booléen qui demande au VulnerabilityIntegrationController d’insérer plus de processus pour extraire plus de données. Lors de la transmission de true à hasMoreData(), un appel à setNextRunParameters() est effectué pour fournir un contexte au processus suivant.
La méthode setNextRunParameters() accepte un seul objet qui fournit des informations de contexte à utiliser par le prochain appel pour retrieveData(). Cet objet est utilisé pour passer l’état aux appels suivants pour retrieveData(). Un exemple de cas d’utilisation consiste à transmettre un objet qui indique le numéro et la taille de page actuels à un service Web.
Pour les intégrations d’appels multiples, chaque appel à retrieveData() vérifie d’abord les paramètres du processus actuel. La méthode _getProcessParameters() est fournie à tous VulnerabilityIntegrationBase pour faciliter l’obtention des paramètres définis par le processus précédent. S’il n’y a pas de paramètres, cela indique qu’il s’agit du premier processus.