aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/core/api/src/main/java/org/onosproject/net/meter/MeterRequest.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/onos/core/api/src/main/java/org/onosproject/net/meter/MeterRequest.java')
-rw-r--r--framework/src/onos/core/api/src/main/java/org/onosproject/net/meter/MeterRequest.java147
1 files changed, 0 insertions, 147 deletions
diff --git a/framework/src/onos/core/api/src/main/java/org/onosproject/net/meter/MeterRequest.java b/framework/src/onos/core/api/src/main/java/org/onosproject/net/meter/MeterRequest.java
deleted file mode 100644
index fd11ca41..00000000
--- a/framework/src/onos/core/api/src/main/java/org/onosproject/net/meter/MeterRequest.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
- * Copyright 2015 Open Networking Laboratory
- *
- * 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.net.meter;
-
-import org.onosproject.core.ApplicationId;
-import org.onosproject.net.DeviceId;
-
-import java.util.Collection;
-import java.util.Optional;
-
-/**
- * Represents a generalized meter request to be deployed on a device.
- */
-public interface MeterRequest {
-
- enum Type {
- ADD,
- MODIFY,
- REMOVE
- }
-
- /**
- * The target device for this meter.
- *
- * @return a device id
- */
- DeviceId deviceId();
-
- /**
- * The id of the application which created this meter.
- *
- * @return an application id
- */
- ApplicationId appId();
-
- /**
- * The unit used within this meter.
- *
- * @return the unit
- */
- Meter.Unit unit();
-
- /**
- * Signals whether this meter applies to bursts only.
- *
- * @return a boolean
- */
- boolean isBurst();
-
- /**
- * The collection of bands to apply on the dataplane.
- *
- * @return a collection of bands.
- */
- Collection<Band> bands();
-
- /**
- * Returns the callback context for this meter.
- *
- * @return an optional meter context
- */
- Optional<MeterContext> context();
-
- /**
- * A meter builder.
- */
- interface Builder {
-
- /**
- * Assigns the target device for this meter.
- *
- * @param deviceId a device id
- * @return this
- */
- Builder forDevice(DeviceId deviceId);
-
- /**
- * Assigns the application that built this meter.
- *
- * @param appId an application id
- * @return this
- */
- Builder fromApp(ApplicationId appId);
-
- /**
- * Assigns the @See Unit to use for this meter.
- * Defaults to kb/s
- *
- * @param unit a unit
- * @return this
- */
- Builder withUnit(Meter.Unit unit);
-
- /**
- * Sets this meter as applicable to burst traffic only.
- * Defaults to false.
- *
- * @return this
- */
- Builder burst();
-
- /**
- * Assigns bands to this meter. There must be at least one band.
- *
- * @param bands a collection of bands
- * @return this
- */
- Builder withBands(Collection<Band> bands);
-
- /**
- * Assigns an execution context for this meter request.
- *
- * @param context a meter context
- * @return this
- */
- Builder withContext(MeterContext context);
-
- /**
- * Requests the addition of a meter.
- *
- * @return a meter request
- */
- MeterRequest add();
-
- /**
- * Requests the removal of a meter.
- *
- * @return a meter request
- */
- MeterRequest remove();
-
- }
-
-}