Code Duplication    Length = 15-15 lines in 2 locations

core/diag/Telepath.php 2 locations

@@ 335-349 (lines=15) @@
332
        if (!in_array(Telepath::INFRA_ETLR, $this->possibleFailureReasons) && $this->idPFederation != NULL) {
333
            // first the direct connectivity to the server
334
            $flrServerStatus = $this->checkFlrServerStatus($this->idPFederation);
335
            switch ($flrServerStatus) {
336
                case Telepath::STATUS_GOOD:
337
                    $this->additionalFindings[Telepath::INFRA_NRO_IDP][] = ["STATUS" => Telepath::STATUS_GOOD];
338
                    $this->possibleFailureReasons = array_diff($this->possibleFailureReasons, [Telepath::INFRA_NRO_IDP]);
339
                    break;
340
                case Telepath::STATUS_PARTIAL:
341
                    // a subset of the FLRs is down? This probably doesn't impact the user unless he's unlucky and has his session fall into failover.
342
                    // keep FLR as a possible problem with original probability
343
                    $this->additionalFindings[Telepath::INFRA_NRO_IDP][] = ["STATUS" => Telepath::STATUS_PARTIAL];
344
                    break;
345
                case Telepath::STATUS_DOWN:
346
                    $this->additionalFindings[Telepath::INFRA_NRO_IDP][] = ["STATUS" => Telepath::STATUS_DOWN];
347
                    // Raise probability by much (even monitoring is sometimes wrong, or a few minutes behind reality)
348
                    $this->probabilities[Telepath::INFRA_NRO_IDP] = 0.95;
349
            }
350
            // then its uplink 
351
            $flrUplinkStatus = $this->checkFedEtlrUplink($this->idPFederation);
352
            switch ($flrUplinkStatus) {
@@ 377-391 (lines=15) @@
374
        if ($this->visitedFlr !== NULL) {
375
            $visitedFlrStatus = $this->checkFlrServerStatus($this->visitedFlr);
376
            // direct query to server
377
            switch ($visitedFlrStatus) {
378
                case Telepath::STATUS_GOOD:
379
                    $this->additionalFindings[Telepath::INFRA_NRO_SP][] = ["STATUS" => Telepath::STATUS_GOOD];
380
                    $this->possibleFailureReasons = array_diff($this->possibleFailureReasons, [Telepath::INFRA_NRO_SP]);
381
                    break;
382
                case Telepath::STATUS_PARTIAL:
383
                    // a subset of the FLRs is down? This probably doesn't impact the user unless he's unlucky and has his session fall into failover.
384
                    // keep FLR as a possible problem with original probability
385
                    $this->additionalFindings[Telepath::INFRA_NRO_SP][] = ["STATUS" => Telepath::STATUS_PARTIAL];
386
                    break;
387
                case Telepath::STATUS_DOWN:
388
                    $this->additionalFindings[Telepath::INFRA_NRO_SP][] = ["STATUS" => Telepath::STATUS_DOWN];
389
                    // Raise probability by much (even monitoring is sometimes wrong, or a few minutes behind reality)
390
                    $this->probabilities[Telepath::INFRA_NRO_SP] = 0.95;
391
            }
392
            // and again its uplink to the ETLR
393
            $visitedFlrUplinkStatus = $this->checkFedEtlrUplink($this->visitedFlr);
394
            switch ($visitedFlrUplinkStatus) {