Introduce UUID identified and openForEdit/freeze cycle
[lgpl/argeo-commons.git] / org.argeo.api.acr / src / org / argeo / api / acr / spi / ContentProvider.java
index 8b59f2fa23120784660d1c4a6e4defd3b9f44754..e354672a781c77adc1a09a009f42a3f2264c71b1 100644 (file)
@@ -54,6 +54,21 @@ public interface ContentProvider extends NamespaceContext {
        /*
         * EDITION
         */
+       /** Switch this content (and its subtree) to editing mode. */
+       default void openForEdit(ProvidedSession session, String relativePath) {
+               throw new UnsupportedOperationException();
+       }
+
+       /** Switch this content (and its subtree) to frozen mode. */
+       default void freeze(ProvidedSession session, String relativePath) {
+               throw new UnsupportedOperationException();
+       }
+
+       /** Whether this content (and its subtree) are in editing mode. */
+       default boolean isOpenForEdit(ProvidedSession session, String relativePath) {
+               throw new UnsupportedOperationException();
+       }
+
        /**
         * Called when an edition cycle is completed. Does nothing by default.
         *