DéveloppeurWeb.Com
    DéveloppeurWeb.Com
    • Agile Zone
    • AI Zone
    • Cloud Zone
    • Database Zone
    • DevOps Zone
    • Integration Zone
    • Web Dev Zone
    DéveloppeurWeb.Com
    Home»Integration Zone»Importer une fonction/un module dans Dataweave
    Integration Zone

    Importer une fonction/un module dans Dataweave

    novembre 17, 2021
    Importer une fonction/un module dans Dataweave
    Share
    Facebook Twitter Pinterest Reddit WhatsApp Email

    Pourquoi devrions-nous utiliser l’importation en premier lieu ?

    Dans Dataweave, chaque fois que nous avons besoin d’utiliser une fonction/un module qui ne fait pas partie du noyau ou qui est fait sur mesure par vous ou votre collègue développeur, vous devez utiliser le mot-clé import pour importer la fonction/le module respectif.

    Avant d’entrer dans les détails, nous devons comprendre qu’une fonction fait partie du module et qu’il existe de nombreux autres modules disponibles dans Dataweave pour notre usage.

    À titre d’exemple dans cet article, nous allons nous concentrer sur des fonctions spécifiques appelées SubString et inverser un module Strings qui n’est pas importé dans Dataweave par défaut. Le même processus est applicable à tout autre module.

    Pour un apprentissage interactif, utilisez cette plate-forme de Mulesoft pour exécuter les extraits de code ci-dessous.


    Comment importer une fonction ?

    Nous pouvons importer n’importe quelle fonction dans Dataweave en utilisant 3 types d’approches.

    1. Module d’importation

    Cette approche est recommandée lorsque nous savons que nous utiliserons des fonctions d’un module spécifique mais que nous ne savons pas quelles fonctions seront nécessaires.

    De cette façon, nous pouvons simplement importer le module sans spécifier les noms des fonctions simplement en donnant import dw::core::Strings dans l’en-tête (avant ---). Lorsque nous faisons cela, nous devons nous référer au module importé chaque fois que nous voulons utiliser une fonction du module.

    Comme nous utilisons la fonction substring dans le module Strings, nous devons d’abord nous référer au module Strings, puis à la fonction que nous allons utiliser en conservant l’opérateur de résolution de portée (::) entre eux Strings::substring.

    %dw 2.0
    output application/json
    import dw::core::Strings
    ---
    {
       sub_string :  Strings::substring("I am Max Mule",5,13),
       reverse_string : Strings::reverse("tfoseluM")
    }

    Sortir:

    Capture d'écran de sortie.

    Dataweave donnera l’erreur suivante si nous n’utilisons pas le nom du module avant le nom de la fonction :

    Capture d'écran d'erreur.


    2. Tout importer d’un module

    Si vous comptez utiliser une fonction à 100 endroits ou 100 fonctions d’un module, c’est un effort supplémentaire de garder le nom du module préfixé au nom de la fonction à chaque fois que nous l’utilisons. Mais, en utilisant cette méthode, nous pouvons importer toutes les fonctions dans Dataweave et éliminer le référencement du module.

    Ici, nous utilisons un astérisque (*) dans l’instruction import pour importer toutes les fonctions du module, par exemple. import * from dw::core::Strings. Maintenant, nous pouvons utiliser directement la fonction respective sans faire référence au module à partir duquel est importé.

    %dw 2.0
    output application/json
    import * from dw::core::Strings
    ---
    {
       sub_string :  substring("I am Max Mule",5,13),
       reversed_string : reverse("tfoseluM")
    }

    Sortir:

    Capture d'écran de sortie.

    Vice versa à la première approche Dataweave donnera l’erreur suivante si nous utilisons le nom du module avant le nom de la fonction.

    Capture d'écran de l'erreur 2.


    3. Importez ce dont vous avez besoin

    Cette approche est recommandée lorsque nous savons exactement quelles fonctions nous allons utiliser à partir du module. Au lieu d’un astérisque (*) nous spécifierons les noms de fonction que nous avons l’intention d’utiliser, par exemple. import substring, reverse from dw::core::Strings

    Un point à retenir lors de l’utilisation de cette approche est de savoir si nous ne pouvons utiliser aucune autre fonction du module importé à moins que cela ne soit explicitement mentionné dans l’instruction d’importation.

    %dw 2.0
    output application/json
    import substring,reverse from dw::core::Strings
    ---
    {
       sub_string :  substring("I am Max Mule",5,13),
       reversed_string : reverse("tfoseluM")
    }

    Sortir:

    Capture d'écran de sortie.

    Dataweave renverra l’erreur suivante si vous appelez une fonction qui n’est pas définie dans l’importation. Ici, nous avons supprimé l’inverse de l’instruction import tout en conservant l’appel de fonction tel quel.

    Capture d'écran d'erreur.

    Conclusion

    En conclusion, il appartient au développeur de choisir l’approche la mieux adaptée en fonction des exigences.

    Share. Facebook Twitter Pinterest LinkedIn WhatsApp Reddit Email
    Add A Comment

    Leave A Reply Cancel Reply

    Catégories

    • Politique de cookies
    • Politique de confidentialité
    • CONTACT
    • Politique du DMCA
    • CONDITIONS D’UTILISATION
    • Avertissement
    © 2023 DéveloppeurWeb.Com.

    Type above and press Enter to search. Press Esc to cancel.