mirror of
https://github.com/opennetworkinglab/onos.git
synced 2026-05-05 12:16:13 +02:00
Fix completers for CFM app CLI
Change-Id: Ib558d5fa26b8b99f0529cabac1848f74ca99004f
This commit is contained in:
parent
2a22ac62d7
commit
c2b7b9646e
@ -13,6 +13,10 @@ osgi_jar_with_tests(
|
||||
api_title = "L2 Monitoring CFM",
|
||||
api_version = "1.0",
|
||||
exclude_tests = ["org/onosproject/cfm/impl/CfmResourceTest"],
|
||||
karaf_command_packages = [
|
||||
"org.onosproject.cfm.cli",
|
||||
"org.onosproject.cfm.cli.completer",
|
||||
],
|
||||
test_deps = TEST_DEPS,
|
||||
web_context = "/onos/cfm",
|
||||
deps = COMPILE_DEPS,
|
||||
|
||||
@ -17,9 +17,14 @@ package org.onosproject.cfm.cli;
|
||||
|
||||
import org.apache.karaf.shell.api.action.Argument;
|
||||
import org.apache.karaf.shell.api.action.Command;
|
||||
import org.apache.karaf.shell.api.action.Completion;
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onlab.packet.VlanId;
|
||||
import org.onosproject.cfm.cli.completer.CfmMaCcmIntervalCompleter;
|
||||
import org.onosproject.cfm.cli.completer.CfmMaNameTypeCompleter;
|
||||
import org.onosproject.cfm.cli.completer.CfmMdNameCompleter;
|
||||
import org.onosproject.cli.AbstractShellCommand;
|
||||
import org.onosproject.cli.PlaceholderCompleter;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.Component;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.DefaultComponent;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.DefaultMaintenanceAssociation;
|
||||
@ -40,22 +45,26 @@ public class CfmMaAddCommand extends AbstractShellCommand {
|
||||
@Argument(name = "name",
|
||||
description = "Maintenance Domain name and type (in brackets)",
|
||||
required = true)
|
||||
@Completion(CfmMdNameCompleter.class)
|
||||
private String mdName = null;
|
||||
|
||||
@Argument(index = 1, name = "name-type",
|
||||
description = "Maintenance Assocation name type",
|
||||
description = "Maintenance Association name type",
|
||||
required = true)
|
||||
@Completion(CfmMaNameTypeCompleter.class)
|
||||
private String nameType = null;
|
||||
|
||||
@Argument(index = 2, name = "name",
|
||||
description = "Maintenance Assocation name. Restrictions apply depending " +
|
||||
"on name-type",
|
||||
required = true)
|
||||
@Completion(PlaceholderCompleter.class)
|
||||
private String name = null;
|
||||
|
||||
@Argument(index = 3, name = "ccm-interval",
|
||||
description = "CCM Interval values from list",
|
||||
required = true)
|
||||
@Completion(CfmMaCcmIntervalCompleter.class)
|
||||
private String ccmInterval = null;
|
||||
|
||||
@Argument(index = 4, name = "numeric-id",
|
||||
|
||||
@ -17,7 +17,9 @@ package org.onosproject.cfm.cli;
|
||||
|
||||
import org.apache.karaf.shell.api.action.Argument;
|
||||
import org.apache.karaf.shell.api.action.Command;
|
||||
import org.apache.karaf.shell.api.action.Completion;
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cfm.cli.completer.CfmMaNameCompleter;
|
||||
import org.onosproject.cli.AbstractShellCommand;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.identifier.MaIdShort;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.identifier.MdId;
|
||||
@ -37,6 +39,7 @@ public class CfmMaDeleteCommand extends AbstractShellCommand {
|
||||
description = "Maintenance Domain name and type (in brackets) " +
|
||||
"and the Maintenance Association name and type (in brackets)",
|
||||
required = true)
|
||||
@Completion(CfmMaNameCompleter.class)
|
||||
private String name = null;
|
||||
|
||||
@Override
|
||||
|
||||
@ -17,8 +17,12 @@ package org.onosproject.cfm.cli;
|
||||
|
||||
import org.apache.karaf.shell.api.action.Command;
|
||||
import org.apache.karaf.shell.api.action.Argument;
|
||||
import org.apache.karaf.shell.api.action.Completion;
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cfm.cli.completer.CfmMdLevelCompleter;
|
||||
import org.onosproject.cfm.cli.completer.CfmMdNameTypeCompleter;
|
||||
import org.onosproject.cli.AbstractShellCommand;
|
||||
import org.onosproject.cli.PlaceholderCompleter;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.DefaultMaintenanceDomain;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.MaintenanceDomain;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.identifier.MdId;
|
||||
@ -36,21 +40,25 @@ public class CfmMdAddCommand extends AbstractShellCommand {
|
||||
@Argument(name = "name-type",
|
||||
description = "Maintenance Domain name type",
|
||||
required = true)
|
||||
@Completion(CfmMdNameTypeCompleter.class)
|
||||
private String nameType = null;
|
||||
|
||||
@Argument(index = 1, name = "name",
|
||||
description = "Maintenance Domain name. Restrictions apply depending " +
|
||||
"on name-type. Leave empty if name type is none",
|
||||
required = true)
|
||||
@Completion(PlaceholderCompleter.class)
|
||||
private String name = null;
|
||||
|
||||
@Argument(index = 2, name = "level",
|
||||
description = "Maintenance Domain level LEVEL0-LEVEL7",
|
||||
required = true)
|
||||
@Completion(CfmMdLevelCompleter.class)
|
||||
private String level = null;
|
||||
|
||||
@Argument(index = 3, name = "numeric-id",
|
||||
description = "An optional numeric id for Maintenance Domain [1-65535]")
|
||||
@Completion(PlaceholderCompleter.class)
|
||||
private Short numericId = null;
|
||||
|
||||
@Override
|
||||
|
||||
@ -17,7 +17,9 @@ package org.onosproject.cfm.cli;
|
||||
|
||||
import org.apache.karaf.shell.api.action.Argument;
|
||||
import org.apache.karaf.shell.api.action.Command;
|
||||
import org.apache.karaf.shell.api.action.Completion;
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cfm.cli.completer.CfmMdNameCompleter;
|
||||
import org.onosproject.cli.AbstractShellCommand;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.identifier.MdId;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.service.CfmConfigException;
|
||||
@ -34,6 +36,7 @@ public class CfmMdDeleteCommand extends AbstractShellCommand {
|
||||
@Argument(name = "name",
|
||||
description = "Maintenance Domain name and type (in brackets)",
|
||||
required = true)
|
||||
@Completion(CfmMdNameCompleter.class)
|
||||
private String name = null;
|
||||
|
||||
@Override
|
||||
|
||||
@ -17,7 +17,9 @@ package org.onosproject.cfm.cli;
|
||||
|
||||
import org.apache.karaf.shell.api.action.Argument;
|
||||
import org.apache.karaf.shell.api.action.Command;
|
||||
import org.apache.karaf.shell.api.action.Completion;
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cfm.cli.completer.CfmMdNameCompleter;
|
||||
import org.onosproject.cli.AbstractShellCommand;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.MaintenanceAssociation;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.MaintenanceDomain;
|
||||
@ -35,6 +37,7 @@ import org.onosproject.incubator.net.l2monitoring.cfm.service.CfmMdService;
|
||||
public class CfmMdListMdCommand extends AbstractShellCommand {
|
||||
@Argument(name = "name",
|
||||
description = "Maintenance Domain name and type (in brackets)")
|
||||
@Completion(CfmMdNameCompleter.class)
|
||||
private String name = null;
|
||||
|
||||
@Override
|
||||
|
||||
@ -17,7 +17,9 @@ package org.onosproject.cfm.cli;
|
||||
|
||||
import org.apache.karaf.shell.api.action.Argument;
|
||||
import org.apache.karaf.shell.api.action.Command;
|
||||
import org.apache.karaf.shell.api.action.Completion;
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cfm.cli.completer.CfmMepIdCompleter;
|
||||
import org.onosproject.cli.AbstractShellCommand;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.MepEntry;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.identifier.MaIdShort;
|
||||
@ -43,6 +45,7 @@ public class CfmMepListCommand extends AbstractShellCommand {
|
||||
private final Logger log = getLogger(getClass());
|
||||
@Argument(name = "md",
|
||||
description = "Maintenance Domain name and type (in brackets) - will use all MDs if not specified")
|
||||
@Completion(CfmMepIdCompleter.class)
|
||||
private String mdStr = null;
|
||||
@Argument(index = 1, name = "ma",
|
||||
description = "Maintenance Association name and type (in brackets) - requires MD")
|
||||
|
||||
@ -17,7 +17,9 @@ package org.onosproject.cfm.cli;
|
||||
|
||||
import org.apache.karaf.shell.api.action.Argument;
|
||||
import org.apache.karaf.shell.api.action.Command;
|
||||
import org.apache.karaf.shell.api.action.Completion;
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cfm.cli.completer.CfmDeviceIdCompleter;
|
||||
import org.onosproject.cli.AbstractShellCommand;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.Mep;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.service.CfmConfigException;
|
||||
@ -34,6 +36,7 @@ public class CfmMepListDeviceCommand extends AbstractShellCommand {
|
||||
@Argument(name = "device",
|
||||
description = "Device Id",
|
||||
required = true)
|
||||
@Completion(CfmDeviceIdCompleter.class)
|
||||
private String deviceStr = null;
|
||||
|
||||
@Override
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
*/
|
||||
package org.onosproject.cfm.cli.completer;
|
||||
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cli.AbstractChoicesCompleter;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.Component;
|
||||
|
||||
@ -24,6 +25,7 @@ import java.util.List;
|
||||
/**
|
||||
* CLI completer for Component MEP Half Function creation.
|
||||
*/
|
||||
@Service
|
||||
public class CfmCompMhfCompleter extends AbstractChoicesCompleter {
|
||||
@Override
|
||||
public List<String> choices() {
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
*/
|
||||
package org.onosproject.cfm.cli.completer;
|
||||
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cli.AbstractChoicesCompleter;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.Component;
|
||||
|
||||
@ -24,6 +25,7 @@ import java.util.List;
|
||||
/**
|
||||
* CLI completer for Component TagType creation.
|
||||
*/
|
||||
@Service
|
||||
public class CfmCompTagTypeCompleter extends AbstractChoicesCompleter {
|
||||
@Override
|
||||
public List<String> choices() {
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
*/
|
||||
package org.onosproject.cfm.cli.completer;
|
||||
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cli.AbstractChoicesCompleter;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.MaintenanceAssociation;
|
||||
|
||||
@ -24,6 +25,7 @@ import java.util.List;
|
||||
/**
|
||||
* CLI completer for Ccm Interval creation.
|
||||
*/
|
||||
@Service
|
||||
public class CfmMaCcmIntervalCompleter extends AbstractChoicesCompleter {
|
||||
@Override
|
||||
public List<String> choices() {
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
*/
|
||||
package org.onosproject.cfm.cli.completer;
|
||||
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cli.AbstractChoicesCompleter;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.service.CfmMdService;
|
||||
|
||||
@ -26,6 +27,7 @@ import static org.onosproject.cli.AbstractShellCommand.get;
|
||||
/**
|
||||
* CLI completer for MA Name creation.
|
||||
*/
|
||||
@Service
|
||||
public class CfmMaNameCompleter extends AbstractChoicesCompleter {
|
||||
@Override
|
||||
public List<String> choices() {
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
*/
|
||||
package org.onosproject.cfm.cli.completer;
|
||||
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cli.AbstractChoicesCompleter;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.MaintenanceDomain;
|
||||
|
||||
@ -24,6 +25,7 @@ import java.util.List;
|
||||
/**
|
||||
* CLI completer for MD Level creation.
|
||||
*/
|
||||
@Service
|
||||
public class CfmMdLevelCompleter extends AbstractChoicesCompleter {
|
||||
@Override
|
||||
public List<String> choices() {
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
*/
|
||||
package org.onosproject.cfm.cli.completer;
|
||||
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cli.AbstractChoicesCompleter;
|
||||
import static org.onosproject.cli.AbstractShellCommand.get;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.service.CfmMdService;
|
||||
@ -25,6 +26,7 @@ import java.util.List;
|
||||
/**
|
||||
* CLI completer for MD Name creation.
|
||||
*/
|
||||
@Service
|
||||
public class CfmMdNameCompleter extends AbstractChoicesCompleter {
|
||||
@Override
|
||||
public List<String> choices() {
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
*/
|
||||
package org.onosproject.cfm.cli.completer;
|
||||
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.onosproject.cli.AbstractChoicesCompleter;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.service.CfmConfigException;
|
||||
import org.onosproject.incubator.net.l2monitoring.cfm.service.CfmMdService;
|
||||
@ -30,6 +31,7 @@ import static org.slf4j.LoggerFactory.getLogger;
|
||||
/**
|
||||
* CLI completer for Mep Id creation.
|
||||
*/
|
||||
@Service
|
||||
public class CfmMepIdCompleter extends AbstractChoicesCompleter {
|
||||
private final Logger log = getLogger(getClass());
|
||||
|
||||
|
||||
@ -16,6 +16,7 @@
|
||||
|
||||
package org.onosproject.cli;
|
||||
|
||||
import org.apache.karaf.shell.api.action.lifecycle.Service;
|
||||
import org.apache.karaf.shell.api.console.CommandLine;
|
||||
import org.apache.karaf.shell.api.console.Session;
|
||||
import org.apache.karaf.shell.support.completers.StringsCompleter;
|
||||
@ -27,6 +28,7 @@ import java.util.SortedSet;
|
||||
* A completer that can be used as a placeholder for arguments that don't
|
||||
* need/want completers.
|
||||
*/
|
||||
@Service
|
||||
public class PlaceholderCompleter extends AbstractCompleter {
|
||||
|
||||
@Override
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user