Removes obsolete MetaModelProvider
- Its methods were only used at single classes
Change-Id: I2b2aeceba0fd4a1feb943f47f5195f03762eb273
Signed-off-by: Frank Schnicke <frank.schnicke@iese.fraunhofer.de>
diff --git a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/MetaModelProvider.java b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/MetaModelProvider.java
deleted file mode 100644
index dd40749..0000000
--- a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/MetaModelProvider.java
+++ /dev/null
@@ -1,43 +0,0 @@
-package org.eclipse.basyx.submodel.restapi;
-
-import java.util.Map;
-
-import org.eclipse.basyx.vab.modelprovider.api.IModelProvider;
-
-/**
- * Abstract class that acts as base for each handler of the AAS meta model
- *
- * @author schnicke
- *
- */
-public abstract class MetaModelProvider implements IModelProvider {
-
- /**
- * Unwraps a parameter by retrieving the "value" entry
- *
- * @param parameter
- * @return
- */
- @SuppressWarnings("unchecked")
- protected Object unwrapParameter(Object parameter) {
- if (parameter instanceof Map<?, ?>) {
- Map<String, Object> map = (Map<String, Object>) parameter;
- // Parameters have a strictly defined order and may not be omitted at all.
- // Enforcing the structure with valueType is ok, but we should unwrap null values, too.
- if (map.get("valueType") != null && map.containsKey("value")) {
- return map.get("value");
- }
- }
- return parameter;
- }
-
- /**
- * Creates generic exception with Unknown path message
- *
- * @param path
- * @return
- */
- protected RuntimeException getUnknownPathException(String path) {
- return new RuntimeException("Unknown path: " + path);
- }
-}
diff --git a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/MultiSubmodelElementProvider.java b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/MultiSubmodelElementProvider.java
index d8efe00..03e075e 100644
--- a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/MultiSubmodelElementProvider.java
+++ b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/MultiSubmodelElementProvider.java
@@ -18,7 +18,7 @@
* @author espen, conradi
*
*/
-public class MultiSubmodelElementProvider extends MetaModelProvider {
+public class MultiSubmodelElementProvider implements IModelProvider {
// Constants for API-Access
public static final String ELEMENTS = "submodelElements";
public static final String VALUE = "value";
diff --git a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/OperationProvider.java b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/OperationProvider.java
index ad6afe0..aadd506 100644
--- a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/OperationProvider.java
+++ b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/OperationProvider.java
@@ -16,7 +16,7 @@
* @author schnicke
*
*/
-public class OperationProvider extends MetaModelProvider {
+public class OperationProvider implements IModelProvider {
IModelProvider modelProvider;
@@ -104,4 +104,24 @@
}
}
+ /**
+ * Unwraps a parameter by retrieving the "value" entry
+ *
+ * @param parameter
+ * @return
+ */
+ @SuppressWarnings("unchecked")
+ private Object unwrapParameter(Object parameter) {
+ if (parameter instanceof Map<?, ?>) {
+ Map<String, Object> map = (Map<String, Object>) parameter;
+ // Parameters have a strictly defined order and may not be omitted at all.
+ // Enforcing the structure with valueType is ok, but we should unwrap null
+ // values, too.
+ if (map.get("valueType") != null && map.containsKey("value")) {
+ return map.get("value");
+ }
+ }
+ return parameter;
+ }
+
}
diff --git a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/PropertyProvider.java b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/PropertyProvider.java
index 570280a..a436e6a 100644
--- a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/PropertyProvider.java
+++ b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/PropertyProvider.java
@@ -15,7 +15,7 @@
* @author schnicke
*
*/
-public class PropertyProvider extends MetaModelProvider {
+public class PropertyProvider implements IModelProvider {
private IModelProvider proxy;
@@ -38,7 +38,7 @@
// Handle "" path by returning complete property
return proxy.getModelPropertyValue("");
} else {
- throw getUnknownPathException(path);
+ throw new MalformedRequestException("Unknown path: " + path);
}
}
diff --git a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubModelProvider.java b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubModelProvider.java
index 2cdfdd2..934df48 100644
--- a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubModelProvider.java
+++ b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubModelProvider.java
@@ -35,7 +35,7 @@
* @author espen, schnicke
*
*/
-public class SubModelProvider extends MetaModelProvider {
+public class SubModelProvider implements IModelProvider {
public static final String VALUES = "values";
public static final String SUBMODEL = "submodel";
diff --git a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubmodelElementCollectionProvider.java b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubmodelElementCollectionProvider.java
index 014fab3..25d91e2 100644
--- a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubmodelElementCollectionProvider.java
+++ b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubmodelElementCollectionProvider.java
@@ -15,7 +15,7 @@
*
* @author espen, conradi
*/
-public class SubmodelElementCollectionProvider extends MetaModelProvider {
+public class SubmodelElementCollectionProvider implements IModelProvider {
private IModelProvider proxy;
diff --git a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubmodelElementProvider.java b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubmodelElementProvider.java
index 7a9bfe9..6915942 100644
--- a/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubmodelElementProvider.java
+++ b/sdks/java/basys.sdk/src/main/java/org/eclipse/basyx/submodel/restapi/SubmodelElementProvider.java
@@ -18,7 +18,7 @@
* @author schnicke, conradi
*
*/
-public class SubmodelElementProvider extends MetaModelProvider {
+public class SubmodelElementProvider implements IModelProvider {
private IModelProvider proxy;