aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src
diff options
context:
space:
mode:
authorKanagaraj Manickam <kanagaraj.manickam@huawei.com>2020-08-05 05:19:47 +0000
committerGerrit Code Review <gerrit@onap.org>2020-08-05 05:19:47 +0000
commit85d106fbd8da63243157c4d79b45c13c9c2d7a2f (patch)
tree4a3c8a555eea81d4318fd610200970917297b115 /framework/src
parent48b21f63dad06a12869dc6f4c57adaa21cd0c415 (diff)
parente6cc5c0f9fcff936d934db67cfb434abb478f71b (diff)
Merge "Add autodiscover support"
Diffstat (limited to 'framework/src')
-rw-r--r--framework/src/main/java/org/onap/cli/fw/cmd/OnapCommandProfileAutoDiscoverRegister.java50
1 files changed, 50 insertions, 0 deletions
diff --git a/framework/src/main/java/org/onap/cli/fw/cmd/OnapCommandProfileAutoDiscoverRegister.java b/framework/src/main/java/org/onap/cli/fw/cmd/OnapCommandProfileAutoDiscoverRegister.java
new file mode 100644
index 00000000..d2609c2b
--- /dev/null
+++ b/framework/src/main/java/org/onap/cli/fw/cmd/OnapCommandProfileAutoDiscoverRegister.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright 2020 Huawei Technologies Co., Ltd.
+ *
+ * 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.onap.cli.fw.cmd;
+
+public interface OnapCommandProfileAutoDiscoverRegister {
+
+ /**
+ * When profile needs to add the capability where there are multiple operations
+ * are available and profile wants to translate those operations in to OCS YAML.
+ *
+ * Example, swagger HTTP methods to OCS YAML (command)
+ *
+ * Steps:
+ * 1. implement this interface to create OCS YAML for each of the operations
+ * and store them under <OPEN_CLI_HOME>/open-cli-schema.
+ * NOTE: Make sure the YAML created are proper and valid, otherwise invalid
+ * YAML will be ignored by OCOMP registrar.
+ *
+ * 2. Invoke this interface when profile is instantiated
+ * @OnapCommandSchema(type = 'profile name')
+ public class OnapSampleProfile implements OnapCommandProfileAutoDiscoverRegister {
+ public OnapHttpCommand() {
+ super.addDefaultSchemas(OnapCommandHttpConstants.DEFAULT_PARAMETER_HTTP_FILE_NAME);
+ this.discover();
+ }
+
+ public void discover() {
+
+ }
+ }
+ *
+ * 3. Run command schema-refresh to get auto registered into registrar.
+ *
+ */
+ void discover();
+}