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.TypeResponse; 6 import org.sourceforge.jemm.lifecycle.ValueVisitor; 7 8 public class MapPutResponse extends TypeResponse<MapPutResponse> { 9 private static final long serialVersionUID = 1L; 10 11 private final boolean success; 12 private final Object previousValue; 13 private final StoredValue[] possibleMatches; 14 15 public MapPutResponse(boolean success, Object previousValue, StoredValue[] possibleMatches) { 16 this.success = success; 17 this.previousValue = previousValue; 18 this.possibleMatches = possibleMatches; 19 } 20 21 @Override 22 public MapPutResponse encode(ValueEncoder encoder) { 23 return new MapPutResponse(isSuccess(),encoder.encode(getPreviousValue()), 24 encoder.encodeArray(getPossibleMatches())); 25 } 26 27 public boolean isSuccess() { 28 return success; 29 } 30 31 public Object getPreviousValue() { 32 return previousValue; 33 } 34 35 public StoredValue[] getPossibleMatches() { 36 return possibleMatches; 37 } 38 39 @Override 40 public void visit(ValueVisitor visitor) { 41 visitor.visit(previousValue); 42 visitor.visit(possibleMatches); 43 } 44 }