From f0f22dae94c498c020451d6f4ccc394dce214392 Mon Sep 17 00:00:00 2001 From: jeffcheasey88 <66554203+jeffcheasey88@users.noreply.github.com> Date: Wed, 8 Nov 2023 14:51:10 +0100 Subject: [PATCH] Add ProviderManager & get Provider Type --- PeerAtCodeParser.jar | Bin 120513 -> 125681 bytes src/dev/peerat/mapping/TreasureProcessor.java | 19 +++++++++--- .../mapping/providers/ProviderManager.java | 28 ++++++++++++++++++ .../providers/mysql/MySQlProvider.java | 7 ++++- 4 files changed, 49 insertions(+), 5 deletions(-) create mode 100644 src/dev/peerat/mapping/providers/ProviderManager.java diff --git a/PeerAtCodeParser.jar b/PeerAtCodeParser.jar index d3bcd0de541f17c3fcede67abb3cc864993e41e2..076c095f60cd48003403bc91e47a638465913f37 100644 GIT binary patch delta 46605 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 UU}D2yI^ef}1qM?Xg@fMz16#kJLI3~& delta 41593 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 EFKuNk^#A|> diff --git a/src/dev/peerat/mapping/TreasureProcessor.java b/src/dev/peerat/mapping/TreasureProcessor.java index 1048522..e00e5c7 100644 --- a/src/dev/peerat/mapping/TreasureProcessor.java +++ b/src/dev/peerat/mapping/TreasureProcessor.java @@ -23,6 +23,7 @@ import javax.tools.FileObject; import javax.tools.StandardLocation; import dev.peerat.mapping.providers.Provider; +import dev.peerat.mapping.providers.ProviderManager; import dev.peerat.parser.ElementBuilder.Builder; import dev.peerat.parser.Parser; import dev.peerat.parser.TokenValidator; @@ -33,6 +34,7 @@ import dev.peerat.parser.java.JavaElement; import dev.peerat.parser.java.JavaFile; import dev.peerat.parser.java.JavaParser; import dev.peerat.parser.java.Value; +import dev.peerat.parser.java.Value.InstanceValue; import dev.peerat.parser.java.operation.ReturnOperation; public class TreasureProcessor extends AbstractProcessor{ @@ -68,13 +70,22 @@ public class TreasureProcessor extends AbstractProcessor{ } Provider provider = null; for(Entry classes : map.entrySet()){ - List values = new ArrayList<>(); - classes.getValue().findAll((e) -> e instanceof Value, values); + List values = new ArrayList<>(); + classes.getValue().findAll((e) -> { + if(e instanceof InstanceValue){ + InstanceValue iv = (InstanceValue)e; + return iv.getToken().getValue().equals("Ship()"); //can also be dev.peerat.mapping.Ship + } + return false; + }, 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 + InstanceValue ship = (InstanceValue)values.get(0); + String providerType = ship.getParameters().get(0).getToken().getValue(); + provider = ProviderManager.getInstance().getProvider(providerType); } + if(provider == null) return false; + for(Entry classes : map.entrySet()){ Class treasure = classes.getValue().find((element) -> { if(element instanceof Class){ diff --git a/src/dev/peerat/mapping/providers/ProviderManager.java b/src/dev/peerat/mapping/providers/ProviderManager.java new file mode 100644 index 0000000..59888f6 --- /dev/null +++ b/src/dev/peerat/mapping/providers/ProviderManager.java @@ -0,0 +1,28 @@ +package dev.peerat.mapping.providers; + +import java.util.HashMap; +import java.util.Map; + +public class ProviderManager{ + + private static final ProviderManager SINGLETON = new ProviderManager(); + + public static ProviderManager getInstance(){ + return SINGLETON; + } + + private Map providers; + + private ProviderManager(){ + this.providers = new HashMap<>(); + } + + public void register(String name, Provider provider){ + this.providers.put(name, provider); + } + + public Provider getProvider(String name){ + return this.providers.get(name); + } + +} diff --git a/src/dev/peerat/mapping/providers/mysql/MySQlProvider.java b/src/dev/peerat/mapping/providers/mysql/MySQlProvider.java index fac188c..a291f47 100644 --- a/src/dev/peerat/mapping/providers/mysql/MySQlProvider.java +++ b/src/dev/peerat/mapping/providers/mysql/MySQlProvider.java @@ -4,6 +4,7 @@ import java.util.ArrayList; import java.util.List; import dev.peerat.mapping.providers.Provider; +import dev.peerat.mapping.providers.ProviderManager; import dev.peerat.parser.java.Class; import dev.peerat.parser.java.Function; import dev.peerat.parser.java.Value; @@ -11,9 +12,13 @@ import dev.peerat.parser.java.operation.ReturnOperation; public class MySQlProvider implements Provider{ + static{ + ProviderManager.getInstance().register("mysql", new MySQlProvider()); + } + private List treasures; - public MySQlProvider(){ + private MySQlProvider(){ this.treasures = new ArrayList<>(); }