Skip to content

Commit 755e1e0

Browse files
review + added Odm filters
1 parent 4198154 commit 755e1e0

File tree

1 file changed

+26
-67
lines changed

1 file changed

+26
-67
lines changed

src/Core/Upgrade/UpgradeApiFilterVisitor.php

Lines changed: 26 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -86,78 +86,37 @@ public function enterNode(Node $node)
8686
OrmRangeFilter::class,
8787
];
8888

89+
$legacyNamespaces = [
90+
LegacyApiFilter::class,
91+
LegacyOdmSearchFilter::class,
92+
LegacyOdmExistsFilter::class,
93+
LegacyOdmDateFilter::class,
94+
LegacyOdmBooleanFilter::class,
95+
LegacyOdmNumericFilter::class,
96+
LegacyOdmOrderFilter::class,
97+
LegacyOdmRangeFilter::class,
98+
LegacyOrmSearchFilter::class,
99+
LegacyOrmExistsFilter::class,
100+
LegacyOrmDateFilter::class,
101+
LegacyOrmBooleanFilter::class,
102+
LegacyOrmNumericFilter::class,
103+
LegacyOrmOrderFilter::class,
104+
LegacyOrmRangeFilter::class,
105+
];
106+
89107
foreach ($node->stmts as $k => $stmt) {
90108
if (!$stmt instanceof Node\Stmt\Use_) {
91109
break;
92110
}
93111

94112
$useStatement = implode('\\', $stmt->uses[0]->name->parts);
95113

96-
if (false !== ($key = array_search($useStatement, $namespaces, true))) {
97-
unset($namespaces[$key]);
98-
}
99-
if (LegacyApiFilter::class === $useStatement) {
100-
unset($node->stmts[$k]);
101-
continue;
102-
}
103-
if (LegacyOdmSearchFilter::class === $useStatement) {
104-
unset($node->stmts[$k]);
105-
continue;
106-
}
107-
if (LegacyOdmExistsFilter::class === $useStatement) {
108-
unset($node->stmts[$k]);
109-
continue;
110-
}
111-
if (LegacyOdmDateFilter::class === $useStatement) {
112-
unset($node->stmts[$k]);
113-
continue;
114-
}
115-
if (LegacyOdmBooleanFilter::class === $useStatement) {
116-
unset($node->stmts[$k]);
117-
continue;
118-
}
119-
if (LegacyOdmNumericFilter::class === $useStatement) {
120-
unset($node->stmts[$k]);
121-
continue;
122-
}
123-
if (LegacyOdmOrderFilter::class === $useStatement) {
124-
unset($node->stmts[$k]);
125-
continue;
126-
}
127-
if (LegacyOdmRangeFilter::class === $useStatement) {
128-
unset($node->stmts[$k]);
129-
continue;
130-
}
131-
132-
if (LegacyOrmSearchFilter::class === $useStatement) {
133-
unset($node->stmts[$k]);
134-
continue;
135-
}
136-
if (LegacyOrmExistsFilter::class === $useStatement) {
137-
unset($node->stmts[$k]);
138-
continue;
139-
}
140-
if (LegacyOrmDateFilter::class === $useStatement) {
141-
unset($node->stmts[$k]);
142-
continue;
143-
}
144-
if (LegacyOrmBooleanFilter::class === $useStatement) {
145-
unset($node->stmts[$k]);
146-
continue;
147-
}
148-
if (LegacyOrmNumericFilter::class === $useStatement) {
149-
unset($node->stmts[$k]);
150-
continue;
151-
}
152-
if (LegacyOrmOrderFilter::class === $useStatement) {
153-
unset($node->stmts[$k]);
154-
continue;
155-
}
156-
if (LegacyOrmRangeFilter::class === $useStatement) {
157-
unset($node->stmts[$k]);
158-
continue;
114+
foreach($legacyNamespaces as $legacyNamespace) {
115+
if ($legacyNamespace === $useStatement) {
116+
unset($node->stmts[$k]);
117+
continue;
118+
}
159119
}
160-
161120
if (false !== ($key = array_search($useStatement, $namespaces, true))) {
162121
unset($namespaces[$key]);
163122
}
@@ -215,7 +174,7 @@ public function enterNode(Node $node)
215174
}
216175
}
217176

218-
private function readApiFilters(\ReflectionProperty|\ReflectionClass|\ReflectionInterface $reflection): ?\Generator
177+
private function readApiFilters(\ReflectionProperty|\ReflectionClass $reflection): ?\Generator
219178
{
220179
if (\PHP_VERSION_ID >= 80000 && $attributes = $reflection->getAttributes(LegacyApiFilter::class)) {
221180
yield from array_map(function ($attribute) {
@@ -273,7 +232,7 @@ private function valueToNode(mixed $value)
273232
}
274233
}
275234

276-
private function removeAnnotation(Node\Stmt\Property|Node\Stmt\Class_ $node)
235+
private function removeAnnotation(Node\Stmt\Property|Node\Stmt\Class_|Node\Stmt\Interface_ $node)
277236
{
278237
$comment = $node->getDocComment();
279238

@@ -282,7 +241,7 @@ private function removeAnnotation(Node\Stmt\Property|Node\Stmt\Class_ $node)
282241
}
283242
}
284243

285-
private function removeAttribute(Node\Stmt\Property|Node\Stmt\Class_ $node)
244+
private function removeAttribute(Node\Stmt\Property|Node\Stmt\Class_|Node\Stmt\Interface_ $node)
286245
{
287246
foreach ($node->attrGroups as $k => $attrGroupNode) {
288247
foreach ($attrGroupNode->attrs as $i => $attribute) {

0 commit comments

Comments
 (0)