Code Duplication    Length = 27-27 lines in 2 locations

src/Database/QueryBuilder.php 2 locations

@@ 76-102 (lines=27) @@
73
     *
74
     * @return bool
75
     */
76
    public function insert(array $values)
77
    {
78
        if (empty($values)) {
79
            return true;
80
        }
81
82
        if (!is_array(reset($values))) {
83
            $values = [$values];
84
        } else {
85
            foreach ($values as $key => $value) {
86
                ksort($value);
87
                $values[$key] = $value;
88
            }
89
        }
90
91
        $bindings = [];
92
93
        foreach ($values as $record) {
94
            foreach ($record as $key => $value) {
95
                $bindings[$key] = $value;
96
            }
97
        }
98
99
        $sql = $this->grammar->compileInsert($this, $values);
100
101
        return $this->connection->insert($sql, $bindings);
102
    }
103
104
    /**
105
     * supported N1QL upsert query.
@@ 111-137 (lines=27) @@
108
     *
109
     * @return bool|mixed
110
     */
111
    public function upsert(array $values)
112
    {
113
        if (empty($values)) {
114
            return true;
115
        }
116
117
        if (!is_array(reset($values))) {
118
            $values = [$values];
119
        } else {
120
            foreach ($values as $key => $value) {
121
                ksort($value);
122
                $values[$key] = $value;
123
            }
124
        }
125
126
        $bindings = [];
127
128
        foreach ($values as $record) {
129
            foreach ($record as $key => $value) {
130
                $bindings[$key] = $value;
131
            }
132
        }
133
134
        $sql = $this->grammar->compileUpsert($this, $values);
135
136
        return $this->connection->upsert($sql, $bindings);
137
    }
138
}
139