1 package org.sourceforge.jemm.collections.internal.map;
2
3 import org.sourceforge.jemm.client.shared.ValueEncoder;
4 import org.sourceforge.jemm.collections.internal.StoredValue;
5 import org.sourceforge.jemm.lifecycle.TypeRequest;
6
7 public class MapPutIfAbsentRequest extends TypeRequest<MapPutIfAbsentRequest> {
8 private static final long serialVersionUID = 1L;
9
10 private final StoredValue key;
11 private final StoredValue value;
12 private final StoredValue[] distinctFrom;
13
14 public MapPutIfAbsentRequest(StoredValue key, StoredValue value,StoredValue[] distinctFrom) {
15 this.key = key;
16 this.value = value;
17 this.distinctFrom = distinctFrom;
18 }
19
20 public StoredValue getKey() {
21 return key;
22 }
23
24 public StoredValue getValue() {
25 return value;
26 }
27
28 public StoredValue[] getDistinctFrom() {
29 return distinctFrom;
30 }
31
32 @Override
33 public MapPutIfAbsentRequest encode(ValueEncoder encoder) {
34 return new MapPutIfAbsentRequest(encoder.encode(key),encoder.encode(value),
35 encoder.encodeArray(distinctFrom));
36 }
37 }