Merge "add MatchFieldType for tcp flags"
[genius.git] / itm / itm-impl / src / main / java / org / opendaylight / genius / itm / cli / TepMonitor.java
1 /*
2  * Copyright (c) 2016 Ericsson India Global Services Pvt Ltd. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.genius.itm.cli;
9
10 import org.apache.karaf.shell.commands.Argument;
11 import org.apache.karaf.shell.commands.Command;
12 import org.apache.karaf.shell.console.OsgiCommandSupport;
13 import org.opendaylight.genius.itm.api.IITMProvider;
14 import org.opendaylight.genius.itm.globals.ITMConstants;
15 import org.slf4j.Logger;
16 import org.slf4j.LoggerFactory;
17
18 @Command(scope = "tep", name = "monitor-interval", description = "configuring tunnel monitoring time interval")
19 public class TepMonitor extends OsgiCommandSupport {
20
21   @Argument(index = 0, name = "interval", description = "monitoring interval", required = true,
22           multiValued = false)
23   private Integer interval;
24
25   private static final Logger logger = LoggerFactory.getLogger(TepMonitor.class);
26   private IITMProvider itmProvider;
27
28   public void setItmProvider(IITMProvider itmProvider) {
29     this.itmProvider = itmProvider;
30   }
31
32   @Override
33   protected Object doExecute() {
34     try {
35       logger.debug("Executing TEP monitor command with interval: " + "\t" + interval);
36       if(!(interval >=ITMConstants.MIN_MONITOR_INTERVAL && interval<=ITMConstants.MAX_MONITOR_INTERVAL)){
37         System.out.println("Monitoring Interval must be in the range 100 - 30000");
38       }
39       else {
40         itmProvider.configureTunnelMonitorInterval(interval);
41       }
42     } catch (Exception e) {
43       e.printStackTrace();
44     }
45     return null;
46   }
47 }