tapestry-cloud/tapestry

View on GitHub
src/Modules/ContentTypes/ContentTypeFactory.php

Summary

Maintainability
A
0 mins
Test Coverage
B
87%

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

    public function add(ContentType $contentType, $overWrite = false)

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

Missing class import via use statement (line '112', column '23').
Open

            throw new \Exception('There is no collection that collects for the path ['.$path.']');

MissingImport

Since: 2.7.0

Importing all external classes in a file through use statements makes them clearly visible.

Example

function make() {
    return new \stdClass();
}

Source http://phpmd.org/rules/cleancode.html#MissingImport

Missing class import via use statement (line '53', column '23').
Open

            throw new \Exception('The collection ['.$this->pathLookupTable[$contentType->getPath()].'] already collects for the path ['.$contentType->getPath().']');

MissingImport

Since: 2.7.0

Importing all external classes in a file through use statements makes them clearly visible.

Example

function make() {
    return new \stdClass();
}

Source http://phpmd.org/rules/cleancode.html#MissingImport

Line exceeds 120 characters; contains 148 characters
Open

     * @param bool        $overWrite   should adding overwrite existing; if false an exception will be thrown if a matching collection already found

Line exceeds 120 characters; contains 165 characters
Open

            throw new \Exception('The collection ['.$this->pathLookupTable[$contentType->getPath()].'] already collects for the path ['.$contentType->getPath().']');

There are no issues that match your filters.

Category
Status