Code Duplication    Length = 11-14 lines in 4 locations

src/WorldOfWarcraft/CharacterProfileApi/CharacterProfileApi.php 4 locations

@@ 367-380 (lines=14) @@
364
     *
365
     * @return ProgressionValueObject
366
     */
367
    public function getProgression()
368
    {
369
        $requestModel = $this->prepareRequestModel('progression');
370
        $response = $this->requestService->doRequest($requestModel);
371
        $responseObject = json_decode($response);
372
373
        $raids = $this->prepareRaidValueObject($responseObject);
374
375
        $progression = new ProgressionValueObject(
376
            $raids
377
        );
378
379
        return $progression;
380
    }
381
382
    /**
383
     * A map of pvp information including arena team membership and rated battlegrounds information
@@ 387-400 (lines=14) @@
384
     *
385
     * @return PvpValueObject
386
     */
387
    public function getPvp()
388
    {
389
        $requestModel = $this->prepareRequestModel('pvp');
390
        $response = $this->requestService->doRequest($requestModel);
391
        $responseObject = json_decode($response);
392
393
        $brackets = $this->prepareBracketValueObject($responseObject);
394
395
        $progression = new PvpValueObject(
396
            $brackets
397
        );
398
399
        return $progression;
400
    }
401
402
    /**
403
     * A list of quests completed by the character
@@ 407-418 (lines=12) @@
404
     *
405
     * @return QuestsValueObject
406
     */
407
    public function getQuests()
408
    {
409
        $requestModel = $this->prepareRequestModel('quests');
410
        $response = $this->requestService->doRequest($requestModel);
411
        $responseObject = json_decode($response);
412
413
        $quests = new QuestsValueObject(
414
            $responseObject->quests
415
        );
416
417
        return $quests;
418
    }
419
420
    /**
421
     * A list of the factions that the character has an associated reputation with
@@ 450-460 (lines=11) @@
447
     *
448
     * @return StatisticsValueObject
449
     */
450
    public function getStatistics()
451
    {
452
        $requestModel = $this->prepareRequestModel('statistics');
453
        $response = $this->requestService->doRequest($requestModel);
454
        $responseObject = json_decode($response);
455
        $statisticsService = new StatisticService();
456
457
        $statistics = $statisticsService->getStatistics($responseObject->statistics);
458
459
        return $statistics;
460
    }
461
462
    /**
463
     * A list of talent structures