blob: 24d3d78dca123660f44711ade68df8123fc18b6b [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 */
Brian O'Connor6de2e202015-05-21 14:30:41 -070016package org.onosproject.net.resource.link;
Toshio Koide485b4782014-10-20 19:34:21 -070017
Sho SHIMIZUc25a0082015-10-27 17:06:29 -070018import com.google.common.annotations.Beta;
Brian O'Connorfe0f4b12014-10-30 21:19:02 -070019import com.google.common.base.MoreObjects;
Brian O'Connor6de2e202015-05-21 14:30:41 -070020import org.onosproject.net.resource.ResourceRequest;
21import org.onosproject.net.resource.ResourceType;
Brian O'Connorfe0f4b12014-10-30 21:19:02 -070022
Sho SHIMIZUc25a0082015-10-27 17:06:29 -070023import static com.google.common.base.Preconditions.checkNotNull;
24
Toshio Koide485b4782014-10-20 19:34:21 -070025/**
26 * Representation of a request for lambda resource.
Sho SHIMIZU364cbac2015-10-29 15:47:35 -070027 *
28 * @deprecated in Emu Release
Toshio Koide485b4782014-10-20 19:34:21 -070029 */
Sho SHIMIZU364cbac2015-10-29 15:47:35 -070030@Deprecated
Toshio Koide569ca702014-10-23 11:37:44 -070031public class LambdaResourceRequest implements ResourceRequest {
Toshio Koide485b4782014-10-20 19:34:21 -070032
Sho SHIMIZUc25a0082015-10-27 17:06:29 -070033 private final LambdaResource lambda;
34
35 /**
36 * Constructs a request specifying the given lambda.
37 *
38 * @param lambda lambda to be requested
39 */
40 @Beta
41 public LambdaResourceRequest(LambdaResource lambda) {
42 this.lambda = checkNotNull(lambda);
43 }
44
45 /**
46 * Constructs a request asking an arbitrary available lambda.
47 *
48 * @deprecated in Emu Release
49 */
50 @Deprecated
51 public LambdaResourceRequest() {
52 this.lambda = null;
53 }
54
55 /**
56 * Returns the lambda this request expects.
57 *
58 * @return the lambda this request expects
59 */
60 @Beta
61 public LambdaResource lambda() {
62 return lambda;
63 }
64
Toshio Koideca0fcff2014-10-23 14:08:36 -070065 @Override
66 public ResourceType type() {
67 return ResourceType.LAMBDA;
68 }
69
Brian O'Connorfe0f4b12014-10-30 21:19:02 -070070 @Override
71 public String toString() {
72 return MoreObjects.toStringHelper(this)
Sho SHIMIZU4a503af2015-10-29 14:45:16 -070073 .add("lambda", lambda)
Brian O'Connorfe0f4b12014-10-30 21:19:02 -070074 .toString();
75 }
Toshio Koide485b4782014-10-20 19:34:21 -070076}