Code Duplication    Length = 22-22 lines in 2 locations

src/DelayHandler.php 2 locations

@@ 75-96 (lines=22) @@
72
     * @param int $min
73
     * @return array
74
     */
75
    public function getTopDelays($limit = 100, $min = 0)
76
    {
77
        $query = $this->pdo->prepare(<<<SQL
78
SELECT
79
  base,
80
  userAgent,
81
  delayUntil / 1000000,
82
  lastDelay / 1000000
83
FROM robotstxt__delay0
84
WHERE lastDelay > (:minDelay * 1000000)
85
ORDER BY lastDelay DESC
86
LIMIT :maxCount;
87
SQL
88
        );
89
        $query->bindParam(':minDelay', $min, PDO::PARAM_INT);
90
        $query->bindParam(':maxCount', $limit, PDO::PARAM_INT);
91
        $query->execute();
92
        if ($query->rowCount() > 0) {
93
            return $query->fetchAll(PDO::FETCH_ASSOC);
94
        }
95
        return [];
96
    }
97
98
    /**
99
     * Top X wait time
@@ 105-126 (lines=22) @@
102
     * @param int $min
103
     * @return array
104
     */
105
    public function getTopWaitTime($limit = 100, $min = 0)
106
    {
107
        $query = $this->pdo->prepare(<<<SQL
108
SELECT
109
  base,
110
  userAgent,
111
  delayUntil / 1000000,
112
  lastDelay / 1000000
113
FROM robotstxt__delay0
114
WHERE delayUntil > ((UNIX_TIMESTAMP(CURTIME(6)) + :minDelay) * 1000000)
115
ORDER BY delayUntil DESC
116
LIMIT :maxCount;
117
SQL
118
        );
119
        $query->bindParam(':minDelay', $min, PDO::PARAM_INT);
120
        $query->bindParam(':maxCount', $limit, PDO::PARAM_INT);
121
        $query->execute();
122
        if ($query->rowCount() > 0) {
123
            return $query->fetchAll(PDO::FETCH_ASSOC);
124
        }
125
        return [];
126
    }
127
}
128