Code Duplication    Length = 20-24 lines in 4 locations

src/POData/UriProcessor/UriProcessor.php 4 locations

@@ 176-195 (lines=20) @@
173
    /**
174
     * Execute the client submitted request against the data source (PUT)
175
     */
176
    protected function executePut()
177
    {
178
        return $this->executeBase(function ($uriProcessor, $segment) {
179
            $requestMethod = $uriProcessor->service->getOperationContext()->incomingRequest()->getMethod();
180
            $resourceSet = $segment->getTargetResourceSetWrapper();
181
            $keyDescriptor = $segment->getKeyDescriptor();
182
            $data = $uriProcessor->request->getData();
183
184
            if (!$resourceSet || !$keyDescriptor) {
185
                $url = $uriProcessor->service->getHost()->getAbsoluteRequestUri()->getUrlAsString();
186
                throw ODataException::createBadRequestError(Messages::badRequestInvalidUriForThisVerb($url, $requestMethod));
187
            }
188
189
            if (!$data) {
190
                throw ODataException::createBadRequestError(Messages::noDataForThisVerb($requestMethod));
191
            }
192
193
            return $uriProcessor->providers->putResource($resourceSet, $keyDescriptor, $data);
194
        });
195
    }
196
197
    /**
198
     * Execute the client submitted request against the data source (POST)
@@ 200-223 (lines=24) @@
197
    /**
198
     * Execute the client submitted request against the data source (POST)
199
     */
200
    protected function executePost()
201
    {
202
        return $this->executeBase(function ($uriProcessor, $segment) {
203
            $requestMethod = $uriProcessor->service->getOperationContext()->incomingRequest()->getMethod();
204
            $resourceSet = $segment->getTargetResourceSetWrapper();
205
            $data = $uriProcessor->request->getData();
206
207
            if (!$resourceSet) {
208
                $url = $uriProcessor->service->getHost()->getAbsoluteRequestUri()->getUrlAsString();
209
                throw ODataException::createBadRequestError(Messages::badRequestInvalidUriForThisVerb($url, $requestMethod));
210
            }
211
212
            if (!$data) {
213
                throw ODataException::createBadRequestError(Messages::noDataForThisVerb($requestMethod));
214
            }
215
216
            $entity = $uriProcessor->providers->postResource($resourceSet, $data);
217
218
            $segment->setSingleResult(true);
219
            $segment->setResult($entity);
220
221
            return $entity;
222
        });
223
    }
224
225
    /**
226
     * Execute the client submitted request against the data source (DELETE)
@@ 250-270 (lines=21) @@
247
    protected function executeBatch()
248
    {
249
        $callback = null;
250
        $post_callback = function ($uriProcessor, $segment) {
251
            $requestMethod = $uriProcessor->service->getOperationContext()->incomingRequest()->getMethod();
252
            $resourceSet = $segment->getTargetResourceSetWrapper();
253
            $data = $uriProcessor->request->getData();
254
255
            if (!$resourceSet) {
256
                $url = $uriProcessor->service->getHost()->getAbsoluteRequestUri()->getUrlAsString();
257
                throw ODataException::createBadRequestError(Messages::badRequestInvalidUriForThisVerb($url, $requestMethod));
258
            }
259
260
            if (!$data) {
261
                throw ODataException::createBadRequestError(Messages::noDataForThisVerb($requestMethod));
262
            }
263
264
            $entity = $uriProcessor->providers->postResource($resourceSet, $data);
265
266
            $segment->setSingleResult(true);
267
            $segment->setResult($entity);
268
269
            return $entity;
270
        };
271
272
        foreach ($this->request->getParts() as $request) {
273
@@ 351-371 (lines=21) @@
348
        }
349
350
        return;
351
        return $this->executeBase(function ($uriProcessor, $segment) {
352
            $requestMethod = $uriProcessor->service->getOperationContext()->incomingRequest()->getMethod();
353
            $resourceSet = $segment->getTargetResourceSetWrapper();
354
            $data = $uriProcessor->request->getData();
355
356
            if (!$resourceSet) {
357
                $url = $uriProcessor->service->getHost()->getAbsoluteRequestUri()->getUrlAsString();
358
                throw ODataException::createBadRequestError(Messages::badRequestInvalidUriForThisVerb($url, $requestMethod));
359
            }
360
361
            if (!$data) {
362
                throw ODataException::createBadRequestError(Messages::noDataForThisVerb($requestMethod));
363
            }
364
365
            $entity = $uriProcessor->providers->postResource($resourceSet, $data);
366
367
            $segment->setSingleResult(true);
368
            $segment->setResult($entity);
369
370
            return $entity;
371
        });
372
    }
373
374
    /**