Skip to content

Commit 0147736

Browse files
authored
Remove support for groovy filters (#1913)
1 parent bef8c94 commit 0147736

35 files changed

+200
-3001
lines changed

build.gradle

-4
Original file line numberDiff line numberDiff line change
@@ -267,8 +267,4 @@ rewrite {
267267
failOnDryRunResults = true
268268
activeRecipe("org.openrewrite.java.testing.junit5.JUnit5BestPractices")
269269
activeRecipe("org.openrewrite.java.logging.slf4j.Slf4jBestPractices")
270-
271-
exclusion(
272-
// Exclude all groovy files
273-
"**/*.groovy")
274270
}

gradle.properties

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
versions_groovy=3.0.19
21
versions_ribbon=2.4.4
32
versions_netty=4.1.118.Final
43
versions_netty_io_uring=0.0.25.Final

settings.gradle

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
rootProject.name='zuul'
22

33
include 'zuul-core'
4-
include 'zuul-groovy'
54
include 'zuul-guice'
65
include 'zuul-processor'
76
include 'zuul-sample'

zuul-core/dependencies.lock

+3-3
Original file line numberDiff line numberDiff line change
@@ -1907,7 +1907,7 @@
19071907
]
19081908
},
19091909
"org.mockito:mockito-core": {
1910-
"locked": "5.16.0",
1910+
"locked": "5.16.1",
19111911
"transitive": [
19121912
"org.mockito:mockito-junit-jupiter"
19131913
]
@@ -3219,7 +3219,7 @@
32193219
]
32203220
},
32213221
"org.mockito:mockito-core": {
3222-
"locked": "5.16.0",
3222+
"locked": "5.16.1",
32233223
"transitive": [
32243224
"org.mockito:mockito-junit-jupiter"
32253225
]
@@ -3884,7 +3884,7 @@
38843884
]
38853885
},
38863886
"org.mockito:mockito-core": {
3887-
"locked": "5.16.0",
3887+
"locked": "5.16.1",
38883888
"transitive": [
38893889
"org.mockito:mockito-junit-jupiter"
38903890
]

zuul-core/src/main/java/com/netflix/zuul/DynamicCodeCompiler.java

-31
This file was deleted.

zuul-core/src/main/java/com/netflix/zuul/DynamicFilterLoader.java

+1-76
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@
1919
import com.netflix.zuul.filters.FilterRegistry;
2020
import com.netflix.zuul.filters.FilterType;
2121
import com.netflix.zuul.filters.ZuulFilter;
22-
import java.io.File;
23-
import java.lang.reflect.Modifier;
2422
import java.util.ArrayList;
2523
import java.util.Collections;
2624
import java.util.List;
@@ -38,100 +36,27 @@ public final class DynamicFilterLoader implements FilterLoader {
3836
private static final Logger LOG = LoggerFactory.getLogger(DynamicFilterLoader.class);
3937

4038
private final ConcurrentMap<String, Long> filterClassLastModified = new ConcurrentHashMap<>();
41-
private final ConcurrentMap<String, String> filterClassCode = new ConcurrentHashMap<>();
42-
private final ConcurrentMap<String, String> filterCheck = new ConcurrentHashMap<>();
4339
private final ConcurrentMap<FilterType, SortedSet<ZuulFilter<?, ?>>> hashFiltersByType = new ConcurrentHashMap<>();
4440
private final ConcurrentMap<String, ZuulFilter<?, ?>> filtersByNameAndType = new ConcurrentHashMap<>();
4541

4642
private final FilterRegistry filterRegistry;
4743

48-
private final DynamicCodeCompiler compiler;
49-
5044
private final FilterFactory filterFactory;
5145

5246
@Inject
5347
public DynamicFilterLoader(
54-
FilterRegistry filterRegistry, DynamicCodeCompiler compiler, FilterFactory filterFactory) {
48+
FilterRegistry filterRegistry, FilterFactory filterFactory) {
5549
this.filterRegistry = filterRegistry;
56-
this.compiler = compiler;
5750
this.filterFactory = filterFactory;
5851
}
5952

60-
/**
61-
* Given source and name will compile and store the filter if it detects that the filter code
62-
* has changed or the filter doesn't exist. Otherwise it will return an instance of the
63-
* requested ZuulFilter.
64-
*
65-
* @deprecated it is unclear to me why this method is needed. Nothing seems to use it, and the
66-
* swapping of code seems to happen elsewhere. This will be removed in a later
67-
* Zuul release.
68-
*/
69-
@Deprecated
70-
public ZuulFilter<?, ?> getFilter(String sourceCode, String filterName) throws Exception {
71-
if (filterCheck.get(filterName) == null) {
72-
filterCheck.putIfAbsent(filterName, filterName);
73-
if (!sourceCode.equals(filterClassCode.get(filterName))) {
74-
if (filterRegistry.isMutable()) {
75-
LOG.info("reloading code {}", filterName);
76-
filterRegistry.remove(filterName);
77-
} else {
78-
LOG.warn("Filter registry is not mutable, discarding {}", filterName);
79-
}
80-
}
81-
}
82-
ZuulFilter<?, ?> filter = filterRegistry.get(filterName);
83-
if (filter == null) {
84-
Class<?> clazz = compiler.compile(sourceCode, filterName);
85-
if (!Modifier.isAbstract(clazz.getModifiers())) {
86-
filter = filterFactory.newInstance(clazz);
87-
}
88-
}
89-
return filter;
90-
}
91-
9253
/**
9354
* @return the total number of Zuul filters
9455
*/
9556
public int filterInstanceMapSize() {
9657
return filterRegistry.size();
9758
}
9859

99-
/**
100-
* From a file this will read the ZuulFilter source code, compile it, and add it to the list of current filters
101-
* a true response means that it was successful.
102-
*
103-
* @param file the file to load
104-
* @return true if the filter in file successfully read, compiled, verified and added to Zuul
105-
*/
106-
@Override
107-
public boolean putFilter(File file) {
108-
if (!filterRegistry.isMutable()) {
109-
return false;
110-
}
111-
try {
112-
String sName = file.getAbsolutePath();
113-
if (filterClassLastModified.get(sName) != null
114-
&& (file.lastModified() != filterClassLastModified.get(sName))) {
115-
LOG.debug("reloading filter {}", sName);
116-
filterRegistry.remove(sName);
117-
}
118-
ZuulFilter<?, ?> filter = filterRegistry.get(sName);
119-
if (filter == null) {
120-
Class<?> clazz = compiler.compile(file);
121-
if (!Modifier.isAbstract(clazz.getModifiers())) {
122-
filter = filterFactory.newInstance(clazz);
123-
putFilter(sName, filter, file.lastModified());
124-
return true;
125-
}
126-
}
127-
} catch (Exception e) {
128-
LOG.error("Error loading filter! Continuing. file={}", file, e);
129-
return false;
130-
}
131-
132-
return false;
133-
}
134-
13560
private void putFilter(String filterName, ZuulFilter<?, ?> filter, long lastModified) {
13661
if (!filterRegistry.isMutable()) {
13762
LOG.warn("Filter registry is not mutable, discarding {}", filterName);

0 commit comments

Comments
 (0)