Skip to main content

Grecia

Post calcolo solo per Grecia viene eseguito il fill delle giunzioni per il calcolo di primaria e per la sola aggregation:

Per creare una documentazione chiara e comprensibile per la classe JunctionFillService, bisogna descrivere i suoi scopi principali, le dipendenze, i metodi, le classi interne e gli algoritmi implementati. La documentazione dovrebbe essere utile per gli sviluppatori che dovranno utilizzare o modificare questo servizio.

Classe JunctionFillService

La classe JunctionFillService è un componente di servizio in un'applicazione Spring che 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 (fibra tra nodi) in base ai dati di input relativi alla rete e ai nodi.

Dipendenze

    DaoPcabNodes: Interagisce con il database per ottenere informazioni sui nodi fisici della rete.

    DaoFibJoints: Gestisce l'accesso e le operazioni sulle giunzioni di fibra ottica.

    DaoPcabSection: Gestisce le informazioni relative alle sezioni dei nodi.

    DaoRCablesFiber: Interagisce con le informazioni sui cavi in fibra ottica e le relative connessioni.

    ServicePcabNodes: Fornisce metodi per ottenere informazioni aggiuntive sui nodi e per aggiungere nodi relativi ai progetti.

    ServiceRoutingFibersUtils: Utilizza le rotte di fibra per determinare come indirizzare la fibra tra i nodi.

    RoutingsService: Gestisce le rotte di fibra ottica attraverso diversi progetti.

    CalcFibersReportManager: Si occupa della gestione dei report di calcolo delle fibre.

    CalcFibLogicalMessages: Contiene messaggi di errore e successi.

    Funzioni principali

    fillJunctionOfNodesByDrawingAndClassif

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

      Parametri:

        drawing: ID del disegno.

        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 disegno 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 disegno 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.