5.7.3 Utilizzo dell'API Macro

In Host Access for the Cloud le macro vengono registrate e scritte utilizzando JavaScript. JavaScript è un linguaggio di programmazione molto comune e diffuso. È disponibile un'ampia gamma di risorse per l'apprendimento e di strumenti.

L'API Macro consiste in un set di oggetti che possono essere utilizzati per interagire con l'host, attendere gli stati delle schermate e interagire con l'utente.

Informazioni su promesse e istruzioni yield

Poiché JavaScript è un linguaggio a thread singolo e utilizza "funzioni di callback" e "promesse" per gestire il flusso di esecuzioni attraverso il codice, spesso seguire il codice può risultare difficile. Host Access for the Cloud unisce il concetto di "promessa" con la parola chiave "yield" affinché il codice delle macro possa essere organizzato in modo più lineare.

  • Promesse

    Le promesse sono modelli che consentono di semplificare funzioni che, ad un certo punto, restituiscono risultati in modo asincrono. Tutte le funzioni "wait" e "ui" nell'API Macro restituiscono oggetti di tipo promessa.

  • Yield

    Le macro utilizzano la parola chiave yield per bloccare la loro esecuzione fino a quando non viene risolta o completata una promessa. Quindi anteporre yield alle funzioni "wait" o "ui" mette in pausa l'esecuzione della macro fino a quando la funzione è stata eseguita. È possibile inserire la parola chiave yield prima di qualsiasi funzione che restituisce una promessa, anche davanti alle funzioni personalizzate.

NOTA:La capacità di bloccare l'esecuzione della macro combinando yield con la promessa è attivata dalla funzione createMacro().

Errori

Nelle macro gli errori vengono gestiti utilizzando un'istruzione try/catch. Alcune funzioni API possono generare errori se, ad esempio, non è possibile soddisfare le condizioni o se si verifica un timeout. L'errore generato viene rilevato nell'istruzione catch. È possibile eseguire il wrapping di blocchi di codice più piccoli in un'istruzione try/catch per gestire gli errori a un livello più granulare. Gli sviluppatori di macro possono anche generare errori con 'throw new Error('Messaggio di errore utile');

Argomenti correlati