NatLibFi/Skosmos

View on GitHub
src/model/sparql/JenaTextSparql.php

Summary

Maintainability
A
2 hrs
Test Coverage
B
84%

Method generateAlphabeticalListQuery has 47 lines of code (exceeds 25 allowed). Consider refactoring.
Open

    public function generateAlphabeticalListQuery($letter, $lang, $limit = null, $offset = null, $classes = null, $showDeprecated = false, $qualifier = null)
    {
        if ($letter == '*' || $letter == '0-9' || $letter == '!*') {
            // text index cannot support special character queries, use the generic implementation for these
            return parent::generateAlphabeticalListQuery($letter, $lang, $limit, $offset, $classes, $showDeprecated, $qualifier);
Severity: Minor
Found in src/model/sparql/JenaTextSparql.php - About 1 hr to fix

    Method generateAlphabeticalListQuery has 7 arguments (exceeds 4 allowed). Consider refactoring.
    Open

        public function generateAlphabeticalListQuery($letter, $lang, $limit = null, $offset = null, $classes = null, $showDeprecated = false, $qualifier = null)
    Severity: Major
    Found in src/model/sparql/JenaTextSparql.php - About 50 mins to fix

      The method generateAlphabeticalListQuery has a boolean flag argument $showDeprecated, which is a certain sign of a Single Responsibility Principle violation.
      Open

          public function generateAlphabeticalListQuery($letter, $lang, $limit = null, $offset = null, $classes = null, $showDeprecated = false, $qualifier = null)
      Severity: Minor
      Found in src/model/sparql/JenaTextSparql.php by phpmd

      BooleanArgumentFlag

      Since: 1.4.0

      A boolean flag argument is a reliable indicator for a violation of the Single Responsibility Principle (SRP). You can fix this problem by extracting the logic in the boolean flag into its own class or method.

      Example

      class Foo {
          public function bar($flag = true) {
          }
      }

      Source https://phpmd.org/rules/cleancode.html#booleanargumentflag

      Avoid variables with short names like $gc. Configured minimum length is 3.
      Open

              $gc = $this->graphClause;
      Severity: Minor
      Found in src/model/sparql/JenaTextSparql.php by phpmd

      ShortVariable

      Since: 0.2

      Detects when a field, local, or parameter has a very short name.

      Example

      class Something {
          private $q = 15; // VIOLATION - Field
          public static function main( array $as ) { // VIOLATION - Formal
              $r = 20 + $this->q; // VIOLATION - Local
              for (int $i = 0; $i < 10; $i++) { // Not a Violation (inside FOR)
                  $r += $this->q;
              }
          }
      }

      Source https://phpmd.org/rules/naming.html#shortvariable

      There are no issues that match your filters.

      Category
      Status