Skip to main content

Giunzioni agli Splitter


public void jointSplittersToFibersForConfig(CalcFibLogicalSupport calcFibLogicalSupport, Long kvNetUse)

Input del Metodo

Parametro Tipo Descrizione
calcFibLogicalSupport CalcFibLogicalSupport Oggetto che rappresenta il contesto logico del disegno della rete, contiene metadati come operatore, ring, configurazione.
kvNetUse Long Identificativo del tipo di utilizzo della rete. Serve per filtrare i nodi da elaborare.

Obbiettivo del Metodo

Il metodo non restituisce valori, ma:

  • Crea e registra le giunzioni tra porte e fibre nel database.

  • Accumula eventuali messaggi di errore o warning durante il processo, per finalità di logging.


Descrizione Generale

Questa funzionalità ha l'obiettivo di automatizzare la configurazione logica degli splitter ottici all'interno della rete, associando in modo coerente le porte (sia in ingresso che in uscita) degli splitter primari e secondari alle fibre fisiche presenti nelle sezioni collegate ai nodi.

L'intero processo è altamente dipendente dal numero della fibra in uso e dal contesto applicativo (come GP, AB, ecc.), e tiene conto di vincoli di configurazione specifici, come il tipo di fibra logica, la classificazione dei nodi e l’ownership delle fibre.


Flusso di Elaborazione

1. Selezione dei nodi da elaborare

L’elaborazione inizia ottenendo l’elenco dei nodi coinvolti nel progetto della rete tramite getListOfPcabNodesInCalcFiber.

Per ciascun nodo:

  • Si verifica che appartenga alla lista di classificazioni compatibili con il tipo di utilizzo (kvNetUse) tramite getSplitterListClassifications.

  • Se l'applicativo è di tipo GRE, si recuperano i nodi di backhauling associati al ring corrente.

2. Costruzione dello stato di giunzione

Viene creato un oggetto CreateSplitterJuctionState che rappresenta lo stato operativo necessario per effettuare le giunzioni. Questo stato contiene:

  • Elenchi delle fibre fisiche non ancora giuntate in ingresso e in uscita.

  • Informazioni sulle sezioni collegate al nodo.

  • Ownership attesa per le fibre da associare.

  • Nome dell’operatore coinvolto nella configurazione.

3. Recupero delle sezioni e delle fibre

Il metodo getSectionInAndOutOfSplitterNode analizza tutte le sezioni che terminano o iniziano nel nodo in esame e raccoglie tutte le fibre fisiche (RCablesFibers) non ancora giuntate, mappandole per sezione.

4. Giunzione delle porte

Una volta preparato lo stato, viene eseguita la giunzione vera e propria attraverso jointPortsInAndOutForSplitters, che:

  • Seleziona gli splitter primari e secondari presenti nel nodo.

  • Ordina splitter e porte per garantire una configurazione coerente.

  • Associa le porte in ingresso alle fibre tramite associateInRcableFiberToPort.

  • Associa le porte in uscita tramite associateOutRcableFiberToPort, salvo che il nodo abbia classificazioni particolari che lo escludono.

Le fibre vengono associate alle porte solo se:

  • La ownership combacia con quella attesa.

  • La fibra parte effettivamente dal nodo considerato.

  • I vincoli di configurazione (tipo fibra, numero porta, classificazione nodo) sono rispettati.


Dettaglio delle Funzioni Chiave

getSectionInAndOutOfSplitterNode

Questa funzione:

  • Recupera le sezioni in ingresso (terminanti nel nodo) e in uscita (che partono dal nodo).

  • Per ogni sezione, interroga il database per ottenere le fibre non ancora giuntate.

  • Organizza questi dati in due mappe distinte (ingresso e uscita) all’interno dello stato di giunzione.


jointSplitterPortsToFibers

Dato un elenco di splitter (primari o secondari):

  • Recupera le porte associate allo splitter.

  • Ordina le porte.

  • Esegue la giunzione delle porte in ingresso e, se previsto, di quelle in uscita.

  • Ogni giunzione viene mappata in una struttura interna per poi essere salvata a sistema.


associateRCableFibersInToPorts

Questa funzione è responsabile dell’effettivo matching tra una porta libera in ingresso e una fibra non giuntata. Viene eseguita una scansione sequenziale delle fibre, associandole alla prima porta compatibile in base a:

  • Ownership della fibra.

  • Nodo di partenza della fibra logica.

  • Compatibilità tra tipo porta e tipo fibra.

In caso di errore o incoerenza nei dati (es. nodo iniziale non corrispondente), viene registrato un messaggio di errore di backlog.


shouldSkipFiber

Contiene la logica condizionale che determina se una fibra non deve essere considerata nella giunzione. I criteri variano a seconda del contesto applicativo:

  • In reti AB si saltano le fibre GPON.

  • In reti GP si gestiscono vincoli più stringenti sui numeri di porta e tipi fibra (es. POP-PCP, POP-PCP-2), legati anche alla classificazione del nodo (es. PFP, GC, PCP).