blob: 73c9488729904748e92ce6a20deec16e6c349df3 [file] [log] [blame]
Toshio Koidec9051db2014-10-20 15:18:37 -07001package org.onlab.onos.net.resource;
2
3import java.util.Objects;
4
5/**
6 * Representation of lambda resource.
7 */
8public final class Lambda extends LinkResource {
9
10 private final int lambda;
11
12 /**
13 * Creates a new instance with given lambda.
14 *
15 * @param lambda lambda value to be assigned
16 */
17 private Lambda(int lambda) {
18 this.lambda = lambda;
19 }
20
21 /**
22 * Creates a new instance with given lambda.
23 *
24 * @param lambda lambda value to be assigned
25 * @return {@link Lambda} instance with given lambda
26 */
27 public static Lambda valueOf(int lambda) {
28 return new Lambda(lambda);
29 }
30
31 /**
32 * Returns lambda as an int value.
Toshio Koide485b4782014-10-20 19:34:21 -070033 *
Toshio Koidec9051db2014-10-20 15:18:37 -070034 * @return lambda as an int value
35 */
36 public int toInt() {
37 return lambda;
38 }
39
40 @Override
41 public boolean equals(Object obj) {
42 if (obj instanceof Lambda) {
43 Lambda that = (Lambda) obj;
44 return Objects.equals(this.lambda, that.lambda);
45 }
46 return false;
47 }
48
49 @Override
50 public int hashCode() {
51 return Objects.hashCode(this.lambda);
52 }
53
54 @Override
55 public String toString() {
56 return String.valueOf(this.lambda);
57 }
58
59}