Skip to content

Commit a9cb5fa

Browse files
authored
handle ee9 package name fqcn in method call (#96)
Signed-off-by: Olivier Lamy <[email protected]>
1 parent 0fc5867 commit a9cb5fa

File tree

2 files changed

+19
-1
lines changed

2 files changed

+19
-1
lines changed

src/main/java/org/eclipse/jetty/toolchain/modifysources/ModifyEE9ToEE8.java

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,11 @@ public void execute()
194194
})
195195
);
196196

197+
cu.findAll(FieldAccessExpr.class).stream()
198+
.filter(FieldAccessExpr::isFieldAccessExpr)
199+
.filter(fieldAccessExpr -> fieldAccessExpr.getNameAsString().equals("ee9"))
200+
.forEach(fieldAccessExpr -> fieldAccessExpr.setName("ee8"));
201+
197202
cu.findAll(NameExpr.class).stream()
198203
.filter(nameExpr -> nameExpr.getNameAsString().contains("Jakarta"))
199204
.forEach(nameExpr -> {
@@ -255,7 +260,7 @@ public Visitable visit(MethodCallExpr n, Void arg) {
255260
n.setScope(nameExpr);
256261
}
257262
}
258-
263+
fullString = n.toString();
259264
if(StringUtils.startsWith(fullString, "EE9") && n.getScope().isPresent()) {
260265
Expression expression = n.getScope().get();
261266
if(expression.isNameExpr()) {
@@ -266,6 +271,7 @@ public Visitable visit(MethodCallExpr n, Void arg) {
266271
}
267272
replaceMethodCallExpr(n, "Jakarta", "Javax");
268273
replaceMethodCallExpr(n, "EE9", "EE8");
274+
replaceMethodCallExpr(n, "org.eclipse.jetty.ee9", "org.eclipse.jetty.ee8");
269275
return super.visit(n, arg);
270276
}
271277

@@ -293,6 +299,15 @@ private void replaceMethodCallExpr(MethodCallExpr n, String contains, String rep
293299
}
294300
});
295301

302+
n.getChildNodes().stream().filter(node -> node instanceof FieldAccessExpr)
303+
.map(node -> (FieldAccessExpr)node)
304+
.forEach(fieldAccessExpr -> {
305+
String fullClassName = fieldAccessExpr.getNameAsString();
306+
if(fullClassName.contains(contains)) {
307+
fieldAccessExpr.setName(fullClassName.replace(contains, replace));
308+
}
309+
});
310+
296311
n.getChildNodes().stream().filter(node -> node instanceof NameExpr)
297312
.map(node -> (NameExpr)node)
298313
.filter(nameExpr -> nameExpr.getNameAsString().contains(contains))

src/test/resources/project-modify/src/main/java/org/eclipse/jetty/ee9/jakarta/nested/JakartaScanner.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import java.io.File;
2323
import java.io.FilenameFilter;
2424
import java.io.IOException;
25+
import java.security.cert.X509Certificate;
2526
import java.util.ArrayList;
2627
import java.util.Collections;
2728
import java.util.HashMap;
@@ -610,6 +611,8 @@ else if (currentScan.containsKey(file))
610611
*/
611612
private void scanFile (File f, Map<String,TimeNSize> scanInfoMap, int depth)
612613
{
614+
X509Certificate[] certificates = (X509Certificate[])request.getAttribute(org.eclipse.jetty.ee9.nested.Request.JAKARTA_SERVLET_REQUEST_X_509_CERTIFICATE);
615+
613616
try
614617
{
615618
org.eclipse.jetty.util.log.Log.getLogger(Scanner.class).debug("scanFile {}",f);

0 commit comments

Comments
 (0)