Skip to main content

Grecia

Post calcolo viene eseguito il riempimento delle giunzioni per il calcolo di primaria e per la rete di tipo aggregation:

Per creare una documentazione chiara e comprensibile per la classe JunctionFillService, bisogna descrivere i suoi scopi principali, i metodi, le classi interne e gli algoritmi implementati.

Classe JunctionFillService

La classe JunctionFillService si occupa di gestire le connessioni e la creazione di "giunzioni" tra nodi di una rete di fibra ottica. La sua funzione principale è quella di riempire le giunzioni del nodo anche per le fibre fisiche non occupate, in base ai dati di input relativi alla rete e ai nodi.

Funzioni principali

fillJunctionOfNodesByDrawingAndClassif

Riempe le giunzioni per i nodi basati su un progetto specifico e una classificazione dell'entità. Se è presente un utilizzo di rete (net_use), filtra i nodi di conseguenza.

  • Parametri:

    • drawing: ID del progetto.

    • entityClassif: ID della classificazione dell'entità.

    • net_use: ID dell'utilizzo della rete (opzionale).

  • Funzionalità: Recupera i nodi dal database e riempie le giunzioni per quei nodi.

fillJunctionOfNodesByDrawingAndUse

Riempe le giunzioni per i nodi basati su un progetto e una configurazione logica di fibre.

  • Parametri:

    • calcFibersLogicalConfig: Configurazione logica delle fibre per determinare quali nodi devono essere trattati.

  • Funzionalità: Recupera i nodi e filtra quelli che non sono di tipo waypoint o NLC (Non Leaf Nodes), quindi riempie le giunzioni per questi nodi.

fillJunctionsOfNodeList

Il metodo principale che gestisce il riempimento delle giunzioni per un elenco di nodi.

  • Parametri:

    • pcabNodesList: Elenco dei nodi da elaborare.

    • drawing: ID del progetto a cui appartengono i nodi.

  • Funzionalità: Costruisce lo stato delle giunzioni (entrate, uscite, dimensioni delle tubazioni, ecc.) e invoca l'inserimento delle giunzioni nel database.

insertFillJunctions

Inserisce le giunzioni calcolate nel database in batch.

  • Parametri:

    • fillJunctionsState: Lo stato che contiene tutte le giunzioni da inserire.

  • Funzionalità: Partiziona le giunzioni in gruppi di dimensioni appropriate e le inserisce nel database.

mapPcabNodesFibJoints

Mappa i nodi ai rispettivi oggetti di giunzione di fibra ottica.

  • Parametri:

    • pcabNodesList: Lista dei nodi da mappare.

  • Funzionalità: Associa i nodi alle rispettive giunzioni di fibra nel database.

mapPcabNodeConnections

Mappa le connessioni in entrata o in uscita per i nodi, a seconda della direzione (inDirection).

  • Parametri:

    • pcabNodesList: Lista dei nodi da elaborare.

    • inDirection: Booleano che determina se stiamo cercando le connessioni in entrata (true) o in uscita (false).

  • Funzionalità: Restituisce una mappa che associa ogni nodo a una lista di connessioni di fibra ottica.

getBackhauling

Ottiene la sezione di backhauling per un nodo specifico.

  • Parametri:

    • endNode: Il nodo di destinazione per cui trovare la sezione di backhauling.

  • Funzionalità: Trova la rotta di backhauling e restituisce l'ID della sezione.

createFillFibJoints

Crea le giunzioni di fibra da riempire per un determinato stato delle giunzioni.

  • Parametri:

    • junctionsFillState: Lo stato che contiene tutte le informazioni necessarie per creare le giunzioni.

  • Funzionalità: Crea e restituisce una lista di oggetti FibJoints da inserire nel database.

getOutRcf

Trova il cavo di fibra ottica in uscita per un nodo specifico, in base ai parametri di giunzione.

  • Parametri:

    • nodePk: ID del nodo di partenza.

    • junctionsFillState: Lo stato che contiene le informazioni delle giunzioni.

    • boundaries: I confini del percorso della sezione di fibra.

  • Funzionalità: Restituisce il cavo di fibra in uscita per il nodo, se disponibile.

Classi e strutture di supporto

  • JunctionsFillState: Contiene lo stato delle giunzioni da riempire, comprese le connessioni in ingresso e in uscita, le giunzioni esistenti e altre informazioni.

  • FibJoints: Rappresenta una singola giunzione di fibra ottica, collegando due cavi tra i nodi.

  • RCablesFibersUses: Rappresenta l'uso di un cavo di fibra ottica in una specifica sezione.

  • JunctionPathSectionBoundaries: Definisce i confini del percorso della sezione di fibra per la giunzione.

Errori e messaggi

La classe gestisce gli errori tramite l'oggetto reportManager, che raccoglie messaggi di errore quando qualcosa va storto durante il riempimento delle giunzioni.