Code Duplication    Length = 15-15 lines in 3 locations

src/Mouf/Database/QueryWriter/Utils/FindParametersService.php 3 locations

@@ 50-64 (lines=15) @@
47
48
        $classDescriptor = $instanceDescriptor->getClassDescriptor();
49
        /* @var $classDescriptor MoufReflectionClass */
50
        foreach ($classDescriptor->getInjectablePropertiesByConstructor() as $moufPropertyDescriptor) {
51
            /* @var $moufPropertyDescriptor MoufPropertyDescriptor */
52
            $name = $moufPropertyDescriptor->getName();
53
54
            $value = $instanceDescriptor->getConstructorArgumentProperty($name)->getValue();
55
            if ($value instanceof MoufInstanceDescriptor) {
56
                list($visitedInstances, $foundParameters) = self::recursiveFindParameters($value, $visitedInstances, $foundParameters);
57
            } elseif (is_array($value)) {
58
                foreach ($value as $val) {
59
                    if ($val instanceof MoufInstanceDescriptor) {
60
                        list($visitedInstances, $foundParameters) = self::recursiveFindParameters($val, $visitedInstances, $foundParameters);
61
                    }
62
                }
63
            }
64
        }
65
66
        foreach ($classDescriptor->getInjectablePropertiesBySetter() as $moufPropertyDescriptor) {
67
            /* @var $moufPropertyDescriptor MoufPropertyDescriptor */
@@ 66-80 (lines=15) @@
63
            }
64
        }
65
66
        foreach ($classDescriptor->getInjectablePropertiesBySetter() as $moufPropertyDescriptor) {
67
            /* @var $moufPropertyDescriptor MoufPropertyDescriptor */
68
            $name = $moufPropertyDescriptor->getName();
69
70
            $value = $instanceDescriptor->getSetterProperty($name)->getValue();
71
            if ($value instanceof MoufInstanceDescriptor) {
72
                list($visitedInstances, $foundParameters) = self::recursiveFindParameters($value, $visitedInstances, $foundParameters);
73
            } elseif (is_array($value)) {
74
                foreach ($value as $val) {
75
                    if ($val instanceof MoufInstanceDescriptor) {
76
                        list($visitedInstances, $foundParameters) = self::recursiveFindParameters($val, $visitedInstances, $foundParameters);
77
                    }
78
                }
79
            }
80
        }
81
82
        foreach ($classDescriptor->getInjectablePropertiesByPublicProperty() as $moufPropertyDescriptor) {
83
            /* @var $moufPropertyDescriptor MoufPropertyDescriptor */
@@ 82-96 (lines=15) @@
79
            }
80
        }
81
82
        foreach ($classDescriptor->getInjectablePropertiesByPublicProperty() as $moufPropertyDescriptor) {
83
            /* @var $moufPropertyDescriptor MoufPropertyDescriptor */
84
            $name = $moufPropertyDescriptor->getName();
85
86
            $value = $instanceDescriptor->getInjectablePropertiesByPublicProperty($name)->getValue();
87
            if ($value instanceof MoufInstanceDescriptor) {
88
                list($visitedInstances, $foundParameters) = self::recursiveFindParameters($value, $visitedInstances, $foundParameters);
89
            } elseif (is_array($value)) {
90
                foreach ($value as $val) {
91
                    if ($val instanceof MoufInstanceDescriptor) {
92
                        list($visitedInstances, $foundParameters) = self::recursiveFindParameters($val, $visitedInstances, $foundParameters);
93
                    }
94
                }
95
            }
96
        }
97
98
        return array($visitedInstances, $foundParameters);
99
    }