From fff4188ec553a59f626cae40938bb6a6e54ac4bc Mon Sep 17 00:00:00 2001 From: jeffcheasey88 <66554203+jeffcheasey88@users.noreply.github.com> Date: Tue, 7 Nov 2023 12:03:33 +0100 Subject: [PATCH] Bind Treasures, SeaBottle and uses --- PeerAtCodeParser.jar | Bin 119642 -> 120513 bytes src/dev/peerat/mapping/TreasureProcessor.java | 55 +++++++++++++++++- .../{ProviderMapper.java => Provider.java} | 2 +- .../providers/mysql/MySQlProvider.java | 4 +- 4 files changed, 55 insertions(+), 6 deletions(-) rename src/dev/peerat/mapping/providers/{ProviderMapper.java => Provider.java} (88%) diff --git a/PeerAtCodeParser.jar b/PeerAtCodeParser.jar index a480240b4fd4c929bacdbdb1dc86e63d54fdbed9..d3bcd0de541f17c3fcede67abb3cc864993e41e2 100644 GIT binary patch delta 55202 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 w?w=H4`_D8y^qv=Y6x{A+cj5C5-GbXi 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∨>^{c>`HE*d^AV#1kkRuAU6FP8KJj={k|v` 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 T$DJVj@z=_PAS^E9G!y>=r;0hx diff --git a/src/dev/peerat/mapping/TreasureProcessor.java b/src/dev/peerat/mapping/TreasureProcessor.java index 4fffc74..1048522 100644 --- a/src/dev/peerat/mapping/TreasureProcessor.java +++ b/src/dev/peerat/mapping/TreasureProcessor.java @@ -22,6 +22,7 @@ import javax.tools.Diagnostic.Kind; import javax.tools.FileObject; import javax.tools.StandardLocation; +import dev.peerat.mapping.providers.Provider; import dev.peerat.parser.ElementBuilder.Builder; import dev.peerat.parser.Parser; import dev.peerat.parser.TokenValidator; @@ -31,7 +32,6 @@ import dev.peerat.parser.java.Function; import dev.peerat.parser.java.JavaElement; import dev.peerat.parser.java.JavaFile; import dev.peerat.parser.java.JavaParser; -import dev.peerat.parser.java.Operation; import dev.peerat.parser.java.Value; import dev.peerat.parser.java.operation.ReturnOperation; @@ -66,13 +66,62 @@ public class TreasureProcessor extends AbstractProcessor{ annotations.forEach((a) -> roundEnv.getElementsAnnotatedWith(a).forEach((e) -> processingEnv.getMessager().printMessage(Kind.ERROR, ex.getMessage(), e))); } } + Provider provider = null; for(Entry classes : map.entrySet()){ - List values = new ArrayList<>(); - classes.getValue().findAll((e) -> e instanceof Operation, values); + List values = new ArrayList<>(); + classes.getValue().findAll((e) -> e instanceof Value, values); if(values.size() < 1) continue; // annotations.forEach((a) -> roundEnv.getElementsAnnotatedWith(a).forEach((e) -> processingEnv.getMessager().printMessage(Kind.ERROR, classes.getKey().getName()+" | "+values, e))); //ship } + + for(Entry classes : map.entrySet()){ + Class treasure = classes.getValue().find((element) -> { + if(element instanceof Class){ + Class c = (Class)element; + return c.hasAnnotation((annotation) -> annotation.getName().getValue().equals("Treasure")); //can also be dev.peerat.mapping.Treasure + } + return false; + }); + if(treasure != null){ + provider.mapTreasure(treasure); + List seaBottles = new ArrayList<>(); + treasure.findAll((element) -> { + if(element instanceof Function){ + Function function = (Function)element; + return function.hasAnnotation((annotation) -> annotation.getName().getValue().equals("SeaBottle")); //can also be dev.peerat.mapping.SeaBottle + } + return false; + }, null); + for(Function function : seaBottles){ + provider.mapBottle(treasure, function); + } + } + } + + for(Entry classes : map.entrySet()){ + List noTreasures = new ArrayList<>(); + classes.getValue().findAll((element) -> { + if(element instanceof Class){ + Class c = (Class)element; + return c.hasAnnotation((annotation) -> annotation.getName().getValue().equals("Treasure")); //can also be dev.peerat.mapping.Treasure + } + return false; + }, noTreasures); + for(Class clazz : noTreasures){ + List functions = new ArrayList<>(); + clazz.findAll((element) -> { + if(element instanceof Function){ + Function function = (Function)element; + return function.hasAnnotation((annotation) -> annotation.getName().getValue().equals("SeaBottle")); //can also be dev.peerat.mapping.SeaBottle + } + return false; + }, functions); + for(Function function : functions){ + provider.mapUses(clazz, function); + } + } + } return true; } diff --git a/src/dev/peerat/mapping/providers/ProviderMapper.java b/src/dev/peerat/mapping/providers/Provider.java similarity index 88% rename from src/dev/peerat/mapping/providers/ProviderMapper.java rename to src/dev/peerat/mapping/providers/Provider.java index ef6b80b..9c2f8fd 100644 --- a/src/dev/peerat/mapping/providers/ProviderMapper.java +++ b/src/dev/peerat/mapping/providers/Provider.java @@ -3,7 +3,7 @@ package dev.peerat.mapping.providers; import dev.peerat.parser.java.Class; import dev.peerat.parser.java.Function; -public interface ProviderMapper{ +public interface Provider{ void mapTreasure(Class clazz); diff --git a/src/dev/peerat/mapping/providers/mysql/MySQlProvider.java b/src/dev/peerat/mapping/providers/mysql/MySQlProvider.java index 83aefb5..fac188c 100644 --- a/src/dev/peerat/mapping/providers/mysql/MySQlProvider.java +++ b/src/dev/peerat/mapping/providers/mysql/MySQlProvider.java @@ -3,13 +3,13 @@ package dev.peerat.mapping.providers.mysql; import java.util.ArrayList; import java.util.List; -import dev.peerat.mapping.providers.ProviderMapper; +import dev.peerat.mapping.providers.Provider; import dev.peerat.parser.java.Class; import dev.peerat.parser.java.Function; import dev.peerat.parser.java.Value; import dev.peerat.parser.java.operation.ReturnOperation; -public class MySQlProvider implements ProviderMapper{ +public class MySQlProvider implements Provider{ private List treasures;