blob: 910d562ff972f91b0233e1eb0659ac9b8e40e432 [file] [log] [blame]
Thomas Vachuska781d18b2014-10-27 10:31:25 -07001/*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing,
13 * software distributed under the License is distributed on an
14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 * KIND, either express or implied. See the License for the
16 * specific language governing permissions and limitations
17 * under the License.
18 */
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070019package org.onlab.onos.metrics.topology;
20
21import java.util.List;
Pavlin Radoslavovccc2e332014-10-23 13:46:28 -070022import org.onlab.metrics.EventMetric;
Pavlin Radoslavov5ba8b282014-10-23 01:03:10 -070023import org.onlab.onos.event.Event;
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070024
25/**
26 * Service interface exported by TopologyMetrics.
27 */
28public interface TopologyMetricsService {
29 /**
30 * Gets the last saved topology events.
31 *
32 * @return the last saved topology events.
33 */
Pavlin Radoslavov5ba8b282014-10-23 01:03:10 -070034 public List<Event> getEvents();
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070035
36 /**
Pavlin Radoslavovccc2e332014-10-23 13:46:28 -070037 * Gets the Event Metric for the Device Events.
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070038 *
Pavlin Radoslavovccc2e332014-10-23 13:46:28 -070039 * @return the Event Metric for the Device Events.
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070040 */
Pavlin Radoslavovccc2e332014-10-23 13:46:28 -070041 public EventMetric topologyDeviceEventMetric();
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070042
43 /**
Pavlin Radoslavovccc2e332014-10-23 13:46:28 -070044 * Gets the Event Metric for the Host Events.
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070045 *
Pavlin Radoslavovccc2e332014-10-23 13:46:28 -070046 * @return the Event Metric for the Host Events.
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070047 */
Pavlin Radoslavovccc2e332014-10-23 13:46:28 -070048 public EventMetric topologyHostEventMetric();
49
50 /**
51 * Gets the Event Metric for the Link Events.
52 *
53 * @return the Event Metric for the Link Events.
54 */
55 public EventMetric topologyLinkEventMetric();
56
57 /**
58 * Gets the Event Metric for the Topology Graph Events.
59 *
60 * @return the Event Metric for the Topology Graph Events.
61 */
62 public EventMetric topologyGraphEventMetric();
Pavlin Radoslavov64d9e472014-10-21 22:01:08 -070063}