+package org.simantics.db.layer0.util;\r
+\r
+import org.simantics.databoard.binding.Binding;\r
+import org.simantics.databoard.type.Datatype;\r
+import org.simantics.databoard.type.LongType;\r
+import org.simantics.db.exception.DatabaseException;\r
+\r
+public enum RevisionTGValueModifier implements TGValueModifier {\r
+ INSTANCE;\r
+ \r
+ public static final Long DEFAULT_VALUE = Long.valueOf(-1); \r
+ \r
+ @Override\r
+ public boolean mayNeedModification(Datatype type) {\r
+ return type instanceof LongType \r
+ && "revision".equals(type.metadata.get("unit"));\r
+ }\r
+\r
+ @Override\r
+ public Object modify(final DomainProcessorState state, Binding binding, Object value) throws DatabaseException {\r
+ return DEFAULT_VALUE;\r
+ }\r
+}\r