Code Duplication    Length = 12-23 lines in 3 locations

app/Port/Provider/Loaders/ProvidersLoaderTrait.php 1 location

@@ 33-54 (lines=22) @@
30
    {
31
        $mainServiceProviderNameStartWith = 'Main';
32
33
        foreach (PortButler::getContainersNames() as $containerName) {
34
35
            $containerProvidersDirectory = base_path('app/Containers/' . $containerName . '/Providers');
36
37
            if (File::isDirectory($containerProvidersDirectory)) {
38
39
                $files = \File::allFiles($containerProvidersDirectory);
40
41
                foreach ($files as $file) {
42
43
                    if (\File::isFile($file)) {
44
45
                        // Check if this is the Main Service Provider
46
                        if (PortButler::stringStartsWith($file->getFilename(), $mainServiceProviderNameStartWith)) {
47
                            $serviceProviderClass = PortButler::getClassFullNameFromFile($file->getPathname());
48
49
                            $this->loadProvider($serviceProviderClass);
50
                        }
51
                    }
52
                }
53
            }
54
        }
55
    }
56
57
    private function loadProvidersFromPort()

app/Port/Seeder/Loaders/SeederLoaderAbstract.php 1 location

@@ 32-54 (lines=23) @@
29
    public function run()
30
    {
31
32
        foreach (PortButler::getContainersNames() as $containerName) {
33
34
            $containersDirectory = base_path('app/Containers/' . $containerName . $this->seedersPath);
35
36
            if (\File::isDirectory($containersDirectory)) {
37
38
                $files = \File::allFiles($containersDirectory);
39
40
                foreach ($files as $seederClass) {
41
42
                    if (\File::isFile($seederClass)) {
43
44
                        $pathName = $seederClass->getPathname();
45
46
                        $class = PortButler::getClassFullNameFromFile($pathName);
47
48
                        $this->call($class);
49
                    }
50
51
                }
52
53
            }
54
        }
55
    }
56
57
}

app/Port/Provider/Traits/PortServiceProviderTrait.php 1 location

@@ 55-66 (lines=12) @@
52
    public function getAllContainersConsoleCommandsForAutoLoading()
53
    {
54
        $classes = [];
55
        foreach (PortButler::getContainersNames() as $containerName) {
56
            $containerCommandsDirectory = base_path('app/Containers/' . $containerName . '/UI/CLI/Commands/');
57
            if (File::isDirectory($containerCommandsDirectory)) {
58
                $files = \File::allFiles($containerCommandsDirectory);
59
                foreach ($files as $consoleFile) {
60
                    if (\File::isFile($consoleFile)) {
61
                        $pathName = $consoleFile->getPathname();
62
                        $classes[] = PortButler::getClassFullNameFromFile($pathName);
63
                    }
64
                }
65
            }
66
        };
67
68
        return $classes;
69
    }