summaryrefslogtreecommitdiff
path: root/DNPMPlugins/src/main/java/ATCCodes/AtcCodesPlugin.java
diff options
context:
space:
mode:
authorPaul-Christian Volkmer2023-03-10 09:24:12 +0100
committerPaul-Christian Volkmer2023-03-10 09:28:52 +0100
commit4b121482f1a8323ea23858e8118934be5d9aa54c (patch)
treeaee5e630082ae7a1f81fccdc0ebdaeefc950689c /DNPMPlugins/src/main/java/ATCCodes/AtcCodesPlugin.java
parent9d66c42460dda63a6380ba0f30004fcd92a4f5c4 (diff)
Issue #5: Vorschlag für den Aufbau des Projekts
* Maven-Projekt direkt im Hauptverzeichnis * Anpassung der Maven-POM-Datei - nicht benötigte Abhängigkeiten entfernt * Gitignore-Datei angelegt
Diffstat (limited to 'DNPMPlugins/src/main/java/ATCCodes/AtcCodesPlugin.java')
-rw-r--r--DNPMPlugins/src/main/java/ATCCodes/AtcCodesPlugin.java110
1 files changed, 0 insertions, 110 deletions
diff --git a/DNPMPlugins/src/main/java/ATCCodes/AtcCodesPlugin.java b/DNPMPlugins/src/main/java/ATCCodes/AtcCodesPlugin.java
deleted file mode 100644
index d0077ae..0000000
--- a/DNPMPlugins/src/main/java/ATCCodes/AtcCodesPlugin.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package ATCCodes;
-
-import de.itc.onkostar.api.Disease;
-import de.itc.onkostar.api.Procedure;
-import de.itc.onkostar.api.analysis.AnalyzerRequirement;
-import de.itc.onkostar.api.analysis.IProcedureAnalyzer;
-import de.itc.onkostar.api.analysis.OnkostarPluginType;
-import ATCCodes.services.AgentCodeService;
-import org.springframework.stereotype.Component;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-/**
- * Plugin implementation
- * Provides methods exposed to Onkostar
- *
- * @author Paul-Christian Volkmer
- * @since 0.1.0
- */
-@Component
-public class AtcCodesPlugin implements IProcedureAnalyzer {
-
- private final List<AgentCodeService> agentCodeServices;
-
- public AtcCodesPlugin(List<AgentCodeService> agentCodeServices) {
- this.agentCodeServices = agentCodeServices;
- }
-
- @Override
- public OnkostarPluginType getType() {
- return OnkostarPluginType.BACKEND_SERVICE;
- }
-
- @Override
- public String getVersion() {
- return "0.4.0";
- }
-
- @Override
- public String getName() {
- return "ATC-Codes und Substanzen";
- }
-
- @Override
- public String getDescription() {
- return "ATC-Codes und Substanzen";
- }
-
- @Override
- public boolean isSynchronous() {
- return false;
- }
-
- @Override
- public AnalyzerRequirement getRequirement() {
- return AnalyzerRequirement.PROCEDURE;
- }
-
- @Override
- public boolean isRelevantForDeletedProcedure() {
- return false;
- }
-
- @Override
- public boolean isRelevantForAnalyzer(final Procedure procedure, final Disease disease) {
- return false;
- }
-
- @Override
- public void analyze(final Procedure procedure, final Disease disease) {
- // Nothing to do - should never be called
- }
-
- /**
- * Return list with ATC codes and agents.
- * Usage in script:
- *
- * <pre>
- * executePluginMethod(
- * 'AtcCodesPlugin',
- * 'query',
- * { q: '', size: 10 },
- * function (result) {console.log(result);},
- * false
- * );
- * </pre>
- *
- * @param input The data Map
- * @return The result list filtered by input
- */
- public List<AgentCode> query(final Map<String, Object> input) {
- String query = "";
- if (null != input.get("q")) {
- query = input.get("q").toString();
- }
-
- int size = Integer.parseInt(input.get("size").toString());
- if (size == 0) {
- size = 10;
- }
- var result = new ArrayList<AgentCode>();
- for (var agentCodeService : this.agentCodeServices) {
- result.addAll(agentCodeService.findAgentCodes(query, size));
- }
- return result.stream().distinct().sorted().collect(Collectors.toList());
- }
-} \ No newline at end of file