[ODTN] Add read/create/delete ConnectivityService RPC
- RPC: get service interface point
- RPC: get connectivity service list
- RPC: get connectivity service detail
- RPC: create connectivity service
- RPC: delete connectivity service
- Filter method of TAPI resolver for both Node / NEP
- Change condition for sip to odtn-port-type
- Use odtn-port-type in path-computation mock
- Create CEP at topology discovery
- Add sample path calculator
- Add connection-id based path selection
Change-Id: I2f08aacb3dd14b6b3c59a64a349e50abb495f70b
diff --git a/apps/odtn/api/src/main/java/org/onosproject/odtn/utils/tapi/TapiRpcInputHandler.java b/apps/odtn/api/src/main/java/org/onosproject/odtn/utils/tapi/TapiRpcInputHandler.java
new file mode 100644
index 0000000..9112f34
--- /dev/null
+++ b/apps/odtn/api/src/main/java/org/onosproject/odtn/utils/tapi/TapiRpcInputHandler.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright 2018-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.onosproject.odtn.utils.tapi;
+
+import org.onosproject.yang.gen.v1.tapicommon.rev20180307.tapicommon.Uuid;
+import org.onosproject.yang.model.ModelObject;
+import org.onosproject.yang.model.ModelObjectId;
+import org.onosproject.yang.model.RpcInput;
+
+/**
+ * Utility abstract class to deal with TAPI RPC input with DCS.
+ *
+ * @param <T> RPCInput modelObject to be dealt with
+ */
+public abstract class TapiRpcInputHandler<T extends ModelObject> extends TapiObjectHandler<T> {
+
+ // Uuid getter is not needed for RPC input
+ @Override
+ protected Uuid getIdDetail() {
+ return null;
+ }
+
+ // Uuid getter is not needed for RPC input
+ @Override
+ protected void setIdDetail(Uuid uuid) {
+ }
+
+ // Root modelObjectId must be used
+ @Override
+ public ModelObjectId getParentModelObjectId() {
+ return ModelObjectId.builder().build();
+ }
+
+ // Cannot set InputRpc modelObject into DCS
+ @Override
+ public final void add() {
+ }
+
+ // Cannot remove InputRpc modelObject into DCS
+ @Override
+ public final void remove() {
+ }
+
+ /**
+ * Set RPCInput modelObject.
+ *
+ * @param input Tapi RpcInput modelObject
+ */
+ public void setRpcInput(RpcInput input) {
+ obj = toModelObject(input.data(), input.id());
+ }
+}