Code Duplication    Length = 14-14 lines in 2 locations

src/Rest/RestRequest.php 2 locations

@@ 716-729 (lines=14) @@
713
     * @param   array   $params
714
     * @return  self
715
     */
716
    private function extractFields(array $params)
717
    {
718
        if (false === $this->issetNotEmpty(self::PARAM_FIELDSETS, $params)) {
719
            return $this;
720
        }
721
        $fields = $params[self::PARAM_FIELDSETS];
722
        if (!is_array($fields)) {
723
            throw RestException::invalidQueryParam(self::PARAM_FIELDSETS, 'The field parameter must be an array of entity type keys to fields.');
724
        }
725
        foreach ($fields as $entityType => $string) {
726
            $this->fields[$entityType] = explode(',', $string);
727
        }
728
        return $this;
729
    }
730
731
    /**
732
     * Extracts pagination criteria from an array of query params.
@@ 759-772 (lines=14) @@
756
     * @param   array   $params
757
     * @return  self
758
     */
759
    private function extractFilters(array $params)
760
    {
761
        if (false === $this->issetNotEmpty(self::PARAM_FILTERING, $params)) {
762
            return $this;
763
        }
764
        $filters = $params[self::PARAM_FILTERING];
765
        if (!is_array($filters)) {
766
            throw RestException::invalidQueryParam(self::PARAM_FILTERING, 'The filter parameter must be an array keyed by filter name and value.');
767
        }
768
        foreach ($filters as $key => $value) {
769
            $this->filters[$key] = $value;
770
        }
771
        return $this;
772
    }
773
774
    /**
775
     * Gets query string parameters that this request supports.