Skip to main content

Calcolo generale

La classe fornisce metodi per associare le fibre primarie dei cavi (RCablesFibersPrimaria) alle fibre logiche (FibersLogical) basandosi su un drawing di rete. La logica di associazione prevede controlli preliminari, gestione dei nodi e splitter primari, aggiornamento delle associazioni e bonifica dei dati preesistenti.

Metodo Principale

associatesRCablesFibersPrimariaToFibersLogicalByDrawing(CalcFibersLogicalConfig config)

Descrizione

Questo metodo esegueesegue la procedura principale di associazione tra le fibre primarie e le fibre logiche.

Parametri

  • config: Oggetto di tipo CalcFibersLogicalConfig contenente i dati di configurazione del drawing e le impostazioni del calcolo.

Logica

Logica:

  1. Registra un messaggio di log relativo al controllo di nodi e cavi.

  2. Esegue i controlli preliminari attraverso doPreChecks(config). Se i controlli falliscono, il metodo termina.

  3. Se richiesto, esegue la bonifica delle associazioni precedenti tramite reclamationRCablesFibersPrimariaByFkFibersLogicalProject(config).

  4. Genera una lista di fibre logiche primarie attraverso generatePrimaryFibersList(listFibLogical, config).

  5. Aggiorna le associazioni tra cavi primari e fibre logiche utilizzando updateRCableFibers(config, listFibLogical).

Metodi

Parti Ausiliari

della

procedura

doPreChecks(CalcFibersLogicalConfig config) 

Esegueesegue una serie di controlli preliminari:

  • checkPcpCablesRequirements(config): Verifica i requisiti dei cavi PCP.

  • checkNetUseNodesAndCables(config.getDrawing()): Controlla i nodi e cavi della rete.

  • checkDuplicatedFeederCablesByDrawing(config.getDrawing()): Verifica la presenza di cavi feeder duplicati.

  • checkSplitterPrimarioOnDrawing(config.getCalcFibersLogicalDTO()): Controlla la configurazione degli splitter primari.

Restituisce true se tutti i controlli sono superati, altrimenti false.

updateRCableFibers(CalcFibersLogicalConfig config, List<AggregatedFibersLogicalByAZNodes> listFibLogical)

Aggiornaaggiorna le associazioni tra le fibre logiche e i cavi primari:

  1. Registra un log sull'inizio del calcolo.

  2. Per ogni fibra logica nella lista listFibLogical, chiama updateRCableFibersForEachFibersLogical().

  3. Esegue l'unione tra nodi primari e splitter con jointPrimaryNodesAndSplitters().

  4. Registra un log sulla fine del calcolo.

generatePrimaryFibersList(List<AggregatedFibersLogicalByAZNodes> listFibLogical, CalcFibersLogicalConfig config)

Genera l'elenco delle fibre logiche primarie in base alla configurazione dell'applicazione.

reclamationRCablesFibersPrimariaByFkFibersLogicalProject(CalcFibersLogicalConfig config)

Esegue la bonifica delle associazioni precedenti rimuovendo i riferimenti non validi.

jointPrimaryNodesAndSplitters(CalcFibersLogicalConfig config, List<AggregatedFibersLogicalByAZNodes> listFibLogical)

Gestisce l'unione dei nodi primari con gli splitter.

updateRCablesFibersFkFibLogicalPrimaria(AggregatedFibersLogicalByAZNodes fibLogical, String nomeOperatore)

Aggiorna il riferimento alle fibre logiche nei cavi primari.

manageGestoreRCableFibersPrimaria(CalcFibersLogicalConfig config)

Gestisce la divisione delle fibre nei cavi primari tra diversi operatori di rete.