blob: cced791260fd7e21fb96267478b862ec3dc33960 [file] [log] [blame]
Thomas Vachuska4f1a60c2014-10-28 13:39:07 -07001/*
2 * Copyright 2014 Open Networking Laboratory
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
Toshio Koide485b4782014-10-20 19:34:21 -070016package org.onlab.onos.net.resource;
17
18/**
19 * Representation of a request for bandwidth resource.
20 */
Toshio Koidefa0dff62014-10-23 11:46:44 -070021public class BandwidthResourceRequest implements ResourceRequest {
Toshio Koide569ca702014-10-23 11:37:44 -070022 private final Bandwidth bandwidth;
23
24 /**
25 * Creates a new {@link BandwidthResourceRequest} with {@link Bandwidth}
26 * object.
27 *
28 * @param bandwidth {@link Bandwidth} object to be requested
29 */
30 public BandwidthResourceRequest(Bandwidth bandwidth) {
31 this.bandwidth = bandwidth;
32 }
33
34 /**
35 * Creates a new {@link BandwidthResourceRequest} with bandwidth value.
36 *
37 * @param bandwidth bandwidth value to be requested
38 */
39 public BandwidthResourceRequest(double bandwidth) {
40 this.bandwidth = Bandwidth.valueOf(bandwidth);
41 }
42
Toshio Koide485b4782014-10-20 19:34:21 -070043 /**
44 * Returns the bandwidth resource.
45 *
46 * @return the bandwidth resource
47 */
Toshio Koided1865a42014-10-23 12:44:55 -070048 public Bandwidth bandwidth() {
Toshio Koide569ca702014-10-23 11:37:44 -070049 return bandwidth;
50 }
Toshio Koideca0fcff2014-10-23 14:08:36 -070051
52 @Override
53 public ResourceType type() {
54 return ResourceType.BANDWIDTH;
55 }
Toshio Koide485b4782014-10-20 19:34:21 -070056}