Code Duplication    Length = 12-14 lines in 2 locations

services/NorthWind/NorthWindQueryProvider.php 2 locations

@@ 244-255 (lines=12) @@
241
242
        $key = rtrim($key, ' and ');
243
        if ($srcClass === 'Customer') {
244
            if ($navigationPropName === 'Orders') {
245
                $query = "SELECT * FROM Orders WHERE CustomerID = '$sourceEntityInstance->CustomerID' and $key";
246
                $stmt = sqlsrv_query($this->_connectionHandle, $query);
247
                if ($stmt === false) {
248
                    $errorAsString = self::_getSQLSRVError();
249
                    throw ODataException::createInternalServerError($errorAsString);
250
                }
251
252
                $result = $this->_serializeOrders($stmt);
253
            } else {
254
                die('Customer does not have navigation porperty with name: ' . $navigationPropName);
255
            }
256
        } elseif ($srcClass === 'Order') {
257
            if ($navigationPropName === 'Order_Details') {
258
                $query = "SELECT * FROM [Order Details] WHERE OrderID = $sourceEntityInstance->OrderID";
@@ 256-269 (lines=14) @@
253
            } else {
254
                die('Customer does not have navigation porperty with name: ' . $navigationPropName);
255
            }
256
        } elseif ($srcClass === 'Order') {
257
            if ($navigationPropName === 'Order_Details') {
258
                $query = "SELECT * FROM [Order Details] WHERE OrderID = $sourceEntityInstance->OrderID";
259
                $stmt = sqlsrv_query($this->_connectionHandle, $query);
260
                if ($stmt === false) {
261
                    $errorAsString = self::_getSQLSRVError();
262
                    throw ODataException::createInternalServerError($errorAsString);
263
                }
264
265
                $result = $this->_serializeOrderDetails($stmt);
266
            } else {
267
                die('Order does not have navigation porperty with name: ' . $navigationPropName);
268
            }
269
        }
270
271
        return empty($result) ? null : $result[0];
272
    }