ObjectValue.java 645 B

12345678910111213141516171819202122232425262728
  1. package org.leumasjaffe.charsheet.entity.viewable;
  2. import org.leumasjaffe.charsheet.observer.Observable;
  3. import com.fasterxml.jackson.annotation.JsonCreator;
  4. import com.fasterxml.jackson.annotation.JsonValue;
  5. import lombok.Data;
  6. import lombok.EqualsAndHashCode;
  7. import lombok.NonNull;
  8. import lombok.experimental.Accessors;
  9. @Accessors(fluent=true)
  10. @Data
  11. @EqualsAndHashCode(callSuper=false)
  12. public class ObjectValue<T> extends Observable {
  13. @JsonCreator public ObjectValue(T v) { this.value = v; }
  14. private @NonNull T value;
  15. public String toString() {
  16. return value.toString();
  17. }
  18. @JsonValue
  19. T getSerializable() {
  20. return value;
  21. }
  22. }