Il tutto parte da un avviso che mi compariva ogniqualvolta importavo un canale Mirth costruito in precedenza: un avviso che, con il codice, veniva importata anche una libreria, una fantomatica Library1.
Sommario
Cosa sono le Code Libraries in Mirth Connect?
Le Code Libraries in Mirth Connect sono collezioni di funzioni, template e blocchi di codice che possono essere riutilizzati in più canali. Introdotte in versioni più recenti (come Mirth 3.3.0), le code libraries permettono agli utenti di centralizzare il codice utilizzato in vari canali, facilitando la manutenzione e la gestione del codice riutilizzabile.
A cosa servono le Code Libraries?
- Riutilizzo del codice:
Le code libraries consentono agli sviluppatori di definire funzioni e blocchi di codice una sola volta e riutilizzarli su più canali e trasformatori. Invece di scrivere lo stesso codice ripetutamente in diversi canali, puoi semplicemente creare un template di codice in una libreria e richiamarlo dove necessario. - Manutenzione centralizzata:
Quando hai codice distribuito in più canali, apportare modifiche può essere complesso e dispendioso in termini di tempo. Con le code libraries, puoi aggiornare una funzione o un template centralizzato, e la modifica verrà automaticamente applicata a tutti i canali che utilizzano quella libreria. - Organizzazione modulare del codice:
Le code libraries permettono di organizzare il codice in moduli o componenti, migliorando la leggibilità e la gestione. Puoi creare librerie separate per gestire funzioni diverse, come operazioni su stringhe, trasformazioni di dati, o gestione degli errori, e associarle solo ai canali che ne hanno bisogno. - Facilità di condivisione:
Le code libraries possono essere facilmente esportate e importate, facilitando la condivisione di template e codice riutilizzabile tra diversi ambienti o team. Questo migliora l’interoperabilità e riduce la duplicazione del lavoro tra sviluppatori. - Controllo sull’inclusione di librerie nei canali:
In Mirth Connect, puoi decidere a quali canali associare specifiche code libraries. Questo ti permette di avere un controllo preciso su quali canali hanno accesso a determinate funzioni o template, evitando che tutto il codice sia incluso in ogni canale senza necessità.
Il problema della libreria vuota (Library1):
In alcuni casi, come dopo la migrazione a versioni più recenti di Mirth (ad esempio 3.3.0), potrebbe venire creata una libreria di default chiamata Library1
. Questa libreria viene creata per includere eventuali code templates pre-esistenti, ma a volte potrebbe risultare vuota. Questo succede per una delle seguenti ragioni:
- Non ci sono code templates esistenti nelle versioni precedenti.
- I code templates non sono stati trasferiti correttamente durante la migrazione.
- La libreria è semplicemente un placeholder creato dal sistema per gestire eventuali future aggiunte di code templates.
Dove compare l’avviso
Quando si importa un canale sviluppato altrove può accadere di vedere un avviso simile, che viene mostrato perché il canale da importare si porta dietro delle librerie oltre al codice scritto nella Source, nelle Destination e nei Transformers/Filters:
Nella fattispecie vedevo spesso comparire questa misteriosa Library 1 ma non sapevo cosa contenesse, al che ho pensato che fosse il caso di approfondire.
Le librerie custom di solito si possono includere in un file JAR dentro alla directory /opt/mirthconnect/cutom-library
che però nel mio caso (nel Mirth di partenza) non aveva alcuna Library 1 al suo interno, anzi era addirittura vuota.
Un altro modo è gestirle da Mirtch Connect Administratore secondo il percorso:
Channels > Code Templates
Vediamo i passi da compiere per eliminare definitivamente l’avviso.
Come gestire la libreria vuota:
- Se la libreria è vuota o non serve: Puoi ignorarla o rimuoverla, poiché non avrà alcun impatto sui canali attuali.
- Se intendi usarla: Puoi aggiungere nuovi code templates alla libreria e associarli ai canali che necessitano di quel codice.
- Importare nuovi template: Invece di usare
Library1
, potresti voler creare nuove librerie per separare meglio i tuoi code templates in base alle funzionalità (ad esempio, una libreria per operazioni su stringhe, una per trasformazioni JSON, ecc.).
Nel mio caso l’ho proprio eliminata utilizzando la GUI Mirth Connect Administrator e dai canali che la richiedevano.
Conclusione:
Le Code Libraries in Mirth Connect sono uno strumento potente per migliorare la gestione del codice, facilitando il riutilizzo e la manutenzione centralizzata. Tuttavia, in alcuni casi, come durante le migrazioni di versione, potrebbero essere create librerie vuote che possono essere rimosse o ignorate se non necessarie.
Commenti recenti