librenms/librenms

View on GitHub
LibreNMS/Snmptrap/Trap.php

Summary

Maintainability
A
0 mins
Test Coverage

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

    public function toString(bool $detailed = false): string
Severity: Minor
Found in LibreNMS/Snmptrap/Trap.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 unused parameters such as '$value'.
Open

            return $this->getTrapOid() . "\n" . json_encode($this->oid_data->reject(function ($value, $key) {
Severity: Minor
Found in LibreNMS/Snmptrap/Trap.php by phpmd

UnusedFormalParameter

Since: 0.2

Avoid passing parameters to methods or constructors and then not using those parameters.

Example

class Foo
{
    private function bar($howdy)
    {
        // $howdy is not used
    }
}

Source https://phpmd.org/rules/unusedcode.html#unusedformalparameter

The property $oid_data is not named in camelCase.
Open

class Trap
{
    public readonly string $raw;
    public readonly string $hostname;
    public readonly ?string $ip;
Severity: Minor
Found in LibreNMS/Snmptrap/Trap.php by phpmd

CamelCasePropertyName

Since: 0.2

It is considered best practice to use the camelCase notation to name attributes.

Example

class ClassName {
    protected $property_name;
}

Source

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

    public readonly ?string $ip;
Severity: Minor
Found in LibreNMS/Snmptrap/Trap.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