Code Duplication    Length = 14-14 lines in 2 locations

src/Rest/RestRequest.php 2 locations

@@ 729-742 (lines=14) @@
726
     * @param   array   $params
727
     * @return  self
728
     */
729
    private function extractFields(array $params)
730
    {
731
        if (false === $this->issetNotEmpty(self::PARAM_FIELDSETS, $params)) {
732
            return $this;
733
        }
734
        $fields = $params[self::PARAM_FIELDSETS];
735
        if (!is_array($fields)) {
736
            throw RestException::invalidQueryParam(self::PARAM_FIELDSETS, 'The field parameter must be an array of entity type keys to fields.');
737
        }
738
        foreach ($fields as $entityType => $string) {
739
            $this->fields[$entityType] = explode(',', $string);
740
        }
741
        return $this;
742
    }
743
744
    /**
745
     * Extracts pagination criteria from an array of query params.
@@ 772-785 (lines=14) @@
769
     * @param   array   $params
770
     * @return  self
771
     */
772
    private function extractFilters(array $params)
773
    {
774
        if (false === $this->issetNotEmpty(self::PARAM_FILTERING, $params)) {
775
            return $this;
776
        }
777
        $filters = $params[self::PARAM_FILTERING];
778
        if (!is_array($filters)) {
779
            throw RestException::invalidQueryParam(self::PARAM_FILTERING, 'The filter parameter must be an array keyed by filter name and value.');
780
        }
781
        foreach ($filters as $key => $value) {
782
            $this->filters[$key] = $value;
783
        }
784
        return $this;
785
    }
786
787
    /**
788
     * Gets query string parameters that this request supports.