Make JcrCallback a functional interface.
[lgpl/argeo-commons.git] / org.argeo.jcr / src / org / argeo / jcr / JcrCallback.java
index 0c4706f84ea6868c185ac1969f68bd300ecccce5..2cea2a969a73528c965b108fb4f753e8b4cd360d 100644 (file)
  */
 package org.argeo.jcr;
 
+import java.util.function.Function;
+
 import javax.jcr.Session;
 
 /** An arbitrary execution on a JCR session, optionally returning a result. */
-public interface JcrCallback {
-       public Object execute(Session session);
+@FunctionalInterface
+public interface JcrCallback extends Function<Session, Object> {
+       /** @deprecated Use {@link #apply(Session)} instead. */
+       @Deprecated
+       public default Object execute(Session session) {
+               return apply(session);
+       }
 }