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;