blob: 2026437065932465adcf087f93a606abb911a211 [file] [log] [blame]
Madan Jampani393e0f02015-02-12 07:35:39 +05301package org.onosproject.store.service;
Madan Jampani94c23532015-02-05 17:40:01 -08002
3import com.google.common.base.MoreObjects;
4
5/**
6 * Versioned value.
7 *
8 * @param <V> value type.
9 */
10public class Versioned<V> {
11
12 private final V value;
13 private final long version;
14
15 /**
16 * Constructs a new versioned value.
17 * @param value value
18 * @param version version
19 */
20 public Versioned(V value, long version) {
21 this.value = value;
22 this.version = version;
23 }
24
25 /**
26 * Returns the value.
27 *
28 * @return value.
29 */
30 public V value() {
31 return value;
32 }
33
34 /**
35 * Returns the version.
36 *
37 * @return version
38 */
39 public long version() {
40 return version;
41 }
42
43 @Override
44 public String toString() {
45 return MoreObjects.toStringHelper(this)
46 .add("value", value)
47 .add("version", version)
48 .toString();
49 }
50}