t1gor/Robots.txt-Parser-Class

View on GitHub
source/Parser/DirectiveProcessors/AbstractAllowanceProcessor.php

Summary

Maintainability
A
1 hr
Test Coverage

Showing 39 of 39 total issues

Method process has 30 lines of code (exceeds 25 allowed). Consider refactoring.
Open

public function process(string $line, array &$root, string &$currentUserAgent = '*', string $prevLine = '') {
$parts = explode(':', $line);
$entry = trim($parts[1]);
$directive = $this->getDirectiveName();
 
 
Severity: Minor
Found in source/Parser/DirectiveProcessors/AbstractAllowanceProcessor.php - About 1 hr to fix

    The method process uses an else expression. Else clauses are basically not necessary and you can simplify the code by not using them.
    Open

    } else {
    $this->log(strtr('{directive} with value {faulty} skipped as already exists for {useragent}', [
    '{directive}' => $directive,
    '{faulty}' => $entry,
    '{useragent}' => $currentUserAgent,

    Define a constant instead of duplicating this literal "{directive}" 3 times.
    Open

    '{directive}' => $directive,

    Define a constant instead of duplicating this literal "{useragent}" 3 times.
    Open

    '{useragent}' => $currentUserAgent,

    Avoid unused parameters such as '$prevLine'.
    Open

    public function process(string $line, array &$root, string &$currentUserAgent = '*', string $prevLine = '') {

    Opening brace of a class must be on the line after the definition
    Open

    abstract class AbstractAllowanceProcessor extends AbstractDirectiveProcessor implements DirectiveProcessorInterface {

    Spaces must be used to indent lines; tabs are not allowed
    Open

    '{directive}' => $directive,

    Spaces must be used to indent lines; tabs are not allowed
    Open

    $this->log(strtr('{directive} with value {faulty} skipped as already exists for {useragent}', [

    Spaces must be used to indent lines; tabs are not allowed
    Open

    if (!preg_match("/^\//", $entry)) {

    Spaces must be used to indent lines; tabs are not allowed
    Open

    }

    Spaces must be used to indent lines; tabs are not allowed
    Open

    $root[$currentUserAgent][$directive] = [];

    Spaces must be used to indent lines; tabs are not allowed
    Open

    '{useragent}' => $currentUserAgent,

    Spaces must be used to indent lines; tabs are not allowed
    Open

    $this->log(strtr('{directive} with invalid value "{faulty}" found for {useragent}, skipping', [

    Spaces must be used to indent lines; tabs are not allowed
    Open

    if (!in_array($entry, $root[$currentUserAgent][$directive])) {

    Spaces must be used to indent lines; tabs are not allowed
    Open

    $root[$currentUserAgent][$directive][] = $entry;

    Spaces must be used to indent lines; tabs are not allowed
    Open

    ]));

    Spaces must be used to indent lines; tabs are not allowed
    Open

    ]));

    Spaces must be used to indent lines; tabs are not allowed
    Open

    return;

    Spaces must be used to indent lines; tabs are not allowed
    Open

    }

    Spaces must be used to indent lines; tabs are not allowed
    Open

    public function process(string $line, array &$root, string &$currentUserAgent = '*', string $prevLine = '') {

    Spaces must be used to indent lines; tabs are not allowed
    Open

    $entry = trim($parts[1]);

    Spaces must be used to indent lines; tabs are not allowed
    Open

    '{faulty}' => $entry,

    Spaces must be used to indent lines; tabs are not allowed
    Open

    if (!isset($root[$currentUserAgent][$directive])) {

    Spaces must be used to indent lines; tabs are not allowed
    Open

    if (empty($entry)) {

    Spaces must be used to indent lines; tabs are not allowed
    Open

    }

    Spaces must be used to indent lines; tabs are not allowed
    Open

    } else {

    Spaces must be used to indent lines; tabs are not allowed
    Open

    $this->log(strtr('{directive} with empty value found for {useragent}, skipping', [

    Spaces must be used to indent lines; tabs are not allowed
    Open

    return;

    Spaces must be used to indent lines; tabs are not allowed
    Open

    '{useragent}' => $currentUserAgent,

    Spaces must be used to indent lines; tabs are not allowed
    Open

    }

    Spaces must be used to indent lines; tabs are not allowed
    Open

    '{useragent}' => $currentUserAgent,

    Spaces must be used to indent lines; tabs are not allowed
    Open

    '{directive}' => $directive,

    Spaces must be used to indent lines; tabs are not allowed
    Open

    '{faulty}' => $entry,

    Spaces must be used to indent lines; tabs are not allowed
    Open

    $parts = explode(':', $line);

    Spaces must be used to indent lines; tabs are not allowed
    Open

    '{directive}' => $directive,

    Spaces must be used to indent lines; tabs are not allowed
    Open

    $directive = $this->getDirectiveName();

    Spaces must be used to indent lines; tabs are not allowed
    Open

    ]));

    Spaces must be used to indent lines; tabs are not allowed
    Open

    }

    Opening brace should be on a new line
    Open

    public function process(string $line, array &$root, string &$currentUserAgent = '*', string $prevLine = '') {

    There are no issues that match your filters.

    Category
    Status