You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2017/10/16 19:51:17 UTC

[isis] 02/09: ISIS-1742: rolls up BookmarkService2 to BookmarkService

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch dev/2.0.0/ISIS-1742-remove-deprecations
in repository https://gitbox.apache.org/repos/asf/isis.git

commit b3044d7db173ecb666ebf41ea5f5e3390e9a4349
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Mon Oct 16 19:52:43 2017 +0100

    ISIS-1742: rolls up BookmarkService2 to BookmarkService
---
 ...ce-layer_PersistenceSessionServiceInternal.adoc |  2 +-
 .../guides/rgsvc/_rgsvc_integration-api.adoc       |  2 +-
 .../_rgsvc_integration-api_BookmarkService.adoc    |  8 +--
 .../applib/services/bookmark/BookmarkService.java  | 38 +++++++++++--
 .../applib/services/bookmark/BookmarkService2.java | 65 ----------------------
 .../applib/services/bookmark/package-info.java     |  2 +-
 .../applib/service/DomainChangeJdoAbstract.java    |  6 +-
 .../jaxbadapters/PersistentEntityAdapter.java      |  9 +--
 .../bookmarks/BookmarkServiceInternalDefault.java  |  4 +-
 .../PersistenceSessionServiceInternal.java         |  4 +-
 .../PersistenceSessionServiceInternalNoop.java     |  4 +-
 .../PersistenceSessionServiceInternalDefault.java  |  4 +-
 .../system/persistence/PersistenceSession.java     |  6 +-
 todo-deprecation-list.txt                          | 12 +++-
 14 files changed, 66 insertions(+), 100 deletions(-)

diff --git a/adocs/documentation/src/main/asciidoc/guides/rgfis/_rgfis_persistence-layer_PersistenceSessionServiceInternal.adoc b/adocs/documentation/src/main/asciidoc/guides/rgfis/_rgfis_persistence-layer_PersistenceSessionServiceInternal.adoc
index 0ca029b..560e56d 100644
--- a/adocs/documentation/src/main/asciidoc/guides/rgfis/_rgfis_persistence-layer_PersistenceSessionServiceInternal.adoc
+++ b/adocs/documentation/src/main/asciidoc/guides/rgfis/_rgfis_persistence-layer_PersistenceSessionServiceInternal.adoc
@@ -64,7 +64,7 @@ public interface PersistenceSessionServiceInternal extends AdapterManager {
     void resolve(Object parent);
     @Deprecated
     void resolve(Object parent, Object field);
-    Object lookup(Bookmark bookmark, final BookmarkService2.FieldResetPolicy fieldResetPolicy);
+    Object lookup(Bookmark bookmark, final BookmarkService.FieldResetPolicy fieldResetPolicy);
     Bookmark bookmarkFor(Object domainObject);
     Bookmark bookmarkFor(Class<?> cls, String identifier);
 
diff --git a/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_integration-api.adoc b/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_integration-api.adoc
index a53aa09..25c15d4 100644
--- a/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_integration-api.adoc
+++ b/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_integration-api.adoc
@@ -25,7 +25,7 @@ It also lists their corresponding implementation, either a default implementatio
 
 |xref:../rgsvc/rgsvc.adoc#_rgsvc_integration-api_BookmarkService[`o.a.i.applib.` +
 `services.bookmark` +
-`BookmarkService2`]
+`BookmarkService`]
 |Convert object reference to a serializable "bookmark", and vice versa.
 |`BookmarkServiceDefault` +
 ``o.a.i.core`` +
diff --git a/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_integration-api_BookmarkService.adoc b/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_integration-api_BookmarkService.adoc
index e4f288c..76bb6c6 100644
--- a/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_integration-api_BookmarkService.adoc
+++ b/adocs/documentation/src/main/asciidoc/guides/rgsvc/_rgsvc_integration-api_BookmarkService.adoc
@@ -1,11 +1,11 @@
 [[_rgsvc_integration-api_BookmarkService]]
-= `BookmarkService2`
+= `BookmarkService`
 :Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...]
 :_basedir: ../../
 :_imagesdir: images/
 
 
-The `BookmarkService2` API provides the ability to obtain a serializable ``o.a.i.applib.bookmarks.Bookmark`` for any (persisted) domain object, and to lookup domain objects given a ``Bookmark``.  This can then in turn be converted to and from a string.
+The `BookmarkService` API provides the ability to obtain a serializable ``o.a.i.applib.bookmarks.Bookmark`` for any (persisted) domain object, and to lookup domain objects given a ``Bookmark``.  This can then in turn be converted to and from a string.
 
 For example, a `Customer` object with:
 
@@ -35,11 +35,11 @@ However, the (non-ASF) link:http://platform.incode.org[Incode Platform^]'s poly
 
 == API & Implementation
 
-The API defined by `BookmarkService2` is:
+The API defined by `BookmarkService` is:
 
 [source,java]
 ----
-public interface BookmarkService2 {
+public interface BookmarkService {
     enum FieldResetPolicy {                                                     // <1>
         RESET,
         DONT_RESET
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
index 9aa89cf..7be74b2 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService.java
@@ -32,21 +32,21 @@ import org.apache.isis.applib.annotation.Programmatic;
 public interface BookmarkService {
 
     /**
-     * @deprecated - use {@link BookmarkService2#lookup(BookmarkHolder, BookmarkService2.FieldResetPolicy)} instead.
+     * @deprecated - use {@link BookmarkService#lookup(BookmarkHolder, BookmarkService.FieldResetPolicy)} instead.
      */
     @Deprecated
     @Programmatic
     Object lookup(BookmarkHolder bookmarkHolder);
 
     /**
-     * @deprecated - use {@link BookmarkService2#lookup(Bookmark, BookmarkService2.FieldResetPolicy)} instead.
+     * @deprecated - use {@link BookmarkService#lookup(Bookmark, BookmarkService.FieldResetPolicy)} instead.
      */
     @Deprecated
     @Programmatic
     Object lookup(Bookmark bookmark);
 
     /**
-     * @deprecated - use {@link BookmarkService2#lookup(Bookmark, BookmarkService2.FieldResetPolicy, Class)} instead.
+     * @deprecated - use {@link BookmarkService#lookup(Bookmark, BookmarkService.FieldResetPolicy, Class)} instead.
      */
     @Deprecated
     @Programmatic
@@ -57,5 +57,35 @@ public interface BookmarkService {
 
     @Programmatic
     Bookmark bookmarkFor(Class<?> cls, String identifier);
-    
+
+    @Programmatic
+    Object lookup(BookmarkHolder bookmarkHolder, FieldResetPolicy fieldResetPolicy);
+
+    @Programmatic
+    Object lookup(Bookmark bookmark, FieldResetPolicy fieldResetPolicy);
+
+    /**
+     * As {@link #lookup(Bookmark, FieldResetPolicy)}, but downcasting to the specified type.
+     */
+    @Programmatic <T> T lookup(Bookmark bookmark, FieldResetPolicy fieldResetPolicy, Class<T> cls);
+
+    enum FieldResetPolicy {
+        /**
+         * Will cause all fields of an object to be re-initialized.
+         *
+         * If the object is unresolved then the object's missing data should be retrieved from the persistence
+         * mechanism and be used to set up the value objects and associations.
+         *
+         * If the object is a view model, then is ignored; the behaviour is as for {@link #DONT_RESET}
+         * @deprecated - retained for previous behaviour, but in most/all cases,
+         */
+        @Deprecated
+        RESET,
+        /**
+         * Required in order to recreate view models.
+         */
+        DONT_RESET
+    }
+
+
 }
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService2.java b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService2.java
deleted file mode 100644
index 5ae2297..0000000
--- a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkService2.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-package org.apache.isis.applib.services.bookmark;
-
-import org.apache.isis.applib.annotation.Programmatic;
-
-/**
- * This service enables a serializable &quot;bookmark&quot; to be created for an entity.
- *
- * <p>
- * Because an implementation of this service (<tt>BookmarkServiceDefault</tt>) is annotated with
- * {@link org.apache.isis.applib.annotation.DomainService} and is implemented in the core.metamodel, it is
- * automatically registered and available for use; no configuration is required.
- * </p>
- */
-public interface BookmarkService2 extends BookmarkService {
-
-    enum FieldResetPolicy {
-        /**
-         * Will cause all fields of an object to be re-initialized.
-         *
-         * If the object is unresolved then the object's missing data should be retrieved from the persistence
-         * mechanism and be used to set up the value objects and associations.
-         *
-         * If the object is a view model, then is ignored; the behaviour is as for {@link #DONT_RESET}
-         * @deprecated - retained for previous behaviour, but in most/all cases,
-         */
-        @Deprecated
-        RESET,
-        /**
-         * Required in order to recreate view models.
-         */
-        DONT_RESET
-    }
-
-    @Programmatic
-    Object lookup(BookmarkHolder bookmarkHolder, FieldResetPolicy fieldResetPolicy);
-
-    @Programmatic
-    Object lookup(Bookmark bookmark, FieldResetPolicy fieldResetPolicy);
-
-    /**
-     * As {@link #lookup(Bookmark, FieldResetPolicy)}, but downcasting to the specified type.
-     */
-    @Programmatic
-    <T> T lookup(Bookmark bookmark, FieldResetPolicy fieldResetPolicy, Class<T> cls);
-
-
-}
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/package-info.java b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/package-info.java
index d36bebf..9915bc7 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/package-info.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/package-info.java
@@ -18,7 +18,7 @@
  */
 
 /**
- * The {@link org.apache.isis.applib.services.bookmark.BookmarkService2} API provides the ability to obtain a
+ * The {@link org.apache.isis.applib.services.bookmark.BookmarkService} API provides the ability to obtain a
  * serializable {@link org.apache.isis.applib.services.bookmark.Bookmark} for any (persisted) domain object, and to
  * lookup domain objects given a Bookmark. This can then in turn be converted to and from a string.
  *
diff --git a/core/applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/DomainChangeJdoAbstract.java b/core/applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/DomainChangeJdoAbstract.java
index 19ed79d..a41b1b3 100644
--- a/core/applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/DomainChangeJdoAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/objectstore/jdo/applib/service/DomainChangeJdoAbstract.java
@@ -36,7 +36,7 @@ import org.apache.isis.applib.annotation.PropertyLayout;
 import org.apache.isis.applib.annotation.SemanticsOf;
 import org.apache.isis.applib.annotation.Where;
 import org.apache.isis.applib.services.bookmark.Bookmark;
-import org.apache.isis.applib.services.bookmark.BookmarkService2;
+import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.message.MessageService;
 import org.apache.isis.applib.services.metamodel.MetaModelService2;
 import org.apache.isis.applib.services.metamodel.MetaModelService3;
@@ -248,7 +248,7 @@ public abstract class DomainChangeJdoAbstract {
     public Object openTargetObject() {
         try {
             return bookmarkService != null
-                    ? bookmarkService.lookup(getTarget(), BookmarkService2.FieldResetPolicy.DONT_RESET)
+                    ? bookmarkService.lookup(getTarget(), BookmarkService.FieldResetPolicy.DONT_RESET)
                     : null;
         } catch(RuntimeException ex) {
             if(ex.getClass().getName().contains("ObjectNotFoundException")) {
@@ -375,7 +375,7 @@ public abstract class DomainChangeJdoAbstract {
     // //////////////////////////////////////
     
     @javax.inject.Inject
-    protected BookmarkService2 bookmarkService;
+    protected BookmarkService bookmarkService;
     
     @javax.inject.Inject
     protected MessageService messageService;
diff --git a/core/applib/src/main/java/org/apache/isis/schema/utils/jaxbadapters/PersistentEntityAdapter.java b/core/applib/src/main/java/org/apache/isis/schema/utils/jaxbadapters/PersistentEntityAdapter.java
index 1b6a271..1a724a1 100644
--- a/core/applib/src/main/java/org/apache/isis/schema/utils/jaxbadapters/PersistentEntityAdapter.java
+++ b/core/applib/src/main/java/org/apache/isis/schema/utils/jaxbadapters/PersistentEntityAdapter.java
@@ -16,12 +16,10 @@
  */
 package org.apache.isis.schema.utils.jaxbadapters;
 
-import javax.inject.Inject;
 import javax.xml.bind.annotation.adapters.XmlAdapter;
 
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkService;
-import org.apache.isis.applib.services.bookmark.BookmarkService2;
 import org.apache.isis.schema.common.v1.OidDto;
 
 public class PersistentEntityAdapter extends XmlAdapter<OidDto, Object> {
@@ -31,7 +29,7 @@ public class PersistentEntityAdapter extends XmlAdapter<OidDto, Object> {
 
         final Bookmark bookmark = Bookmark.from(oidDto);
 
-        return bookmarkService.lookup(bookmark, BookmarkService2.FieldResetPolicy.DONT_RESET);
+        return bookmarkService.lookup(bookmark, BookmarkService.FieldResetPolicy.DONT_RESET);
     }
 
     @Override
@@ -43,9 +41,6 @@ public class PersistentEntityAdapter extends XmlAdapter<OidDto, Object> {
         return bookmark.toOidDto();
     }
 
-    private static String coalesce(final String first, final String second) {
-        return first != null? first: second;
-    }
 
 
     protected BookmarkService getBookmarkService() {
@@ -53,5 +48,5 @@ public class PersistentEntityAdapter extends XmlAdapter<OidDto, Object> {
     }
 
     @javax.inject.Inject
-    BookmarkService2 bookmarkService;
+    BookmarkService bookmarkService;
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceInternalDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceInternalDefault.java
index eaf244e..14e0883 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceInternalDefault.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/bookmarks/BookmarkServiceInternalDefault.java
@@ -30,7 +30,7 @@ import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.services.bookmark.Bookmark;
 import org.apache.isis.applib.services.bookmark.BookmarkHolder;
-import org.apache.isis.applib.services.bookmark.BookmarkService2;
+import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.registry.ServiceRegistry2;
 import org.apache.isis.applib.services.wrapper.WrapperFactory;
 import org.apache.isis.core.metamodel.services.persistsession.PersistenceSessionServiceInternal;
@@ -48,7 +48,7 @@ import org.apache.isis.core.runtime.persistence.ObjectNotFoundException;
         nature = NatureOfService.DOMAIN,
         menuOrder = "" + Integer.MAX_VALUE
 )
-public class BookmarkServiceInternalDefault implements BookmarkService2 {
+public class BookmarkServiceInternalDefault implements BookmarkService {
 
 
     @Programmatic
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternal.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternal.java
index ff8f23a..04a1b42 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternal.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternal.java
@@ -21,7 +21,7 @@ import java.util.List;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.services.bookmark.Bookmark;
-import org.apache.isis.applib.services.bookmark.BookmarkService2;
+import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.xactn.Transaction;
 import org.apache.isis.applib.services.xactn.TransactionState;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
@@ -78,7 +78,7 @@ public interface PersistenceSessionServiceInternal extends AdapterManager {
      * @return
      */
     @Programmatic
-    Object lookup(Bookmark bookmark, final BookmarkService2.FieldResetPolicy fieldResetPolicy);
+    Object lookup(Bookmark bookmark, final BookmarkService.FieldResetPolicy fieldResetPolicy);
 
     @Programmatic
     Bookmark bookmarkFor(Object domainObject);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternalNoop.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternalNoop.java
index e46b6e2..7534369 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternalNoop.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/persistsession/PersistenceSessionServiceInternalNoop.java
@@ -24,7 +24,7 @@ import org.apache.isis.applib.annotation.DomainService;
 import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.services.bookmark.Bookmark;
-import org.apache.isis.applib.services.bookmark.BookmarkService2;
+import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.xactn.Transaction;
 import org.apache.isis.applib.services.xactn.TransactionState;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
@@ -86,7 +86,7 @@ public class PersistenceSessionServiceInternalNoop implements PersistenceSession
     @Override
     public Object lookup(
             final Bookmark bookmark,
-            final BookmarkService2.FieldResetPolicy fieldResetPolicy) {
+            final BookmarkService.FieldResetPolicy fieldResetPolicy) {
         throw new UnsupportedOperationException("Not supported by this implementation of PersistenceSessionServiceInternal");
     }
 
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/PersistenceSessionServiceInternalDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/PersistenceSessionServiceInternalDefault.java
index 954b492..46fbc47 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/PersistenceSessionServiceInternalDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/persistsession/PersistenceSessionServiceInternalDefault.java
@@ -25,7 +25,7 @@ import org.apache.isis.applib.annotation.NatureOfService;
 import org.apache.isis.applib.annotation.Programmatic;
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.services.bookmark.Bookmark;
-import org.apache.isis.applib.services.bookmark.BookmarkService2;
+import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.xactn.Transaction;
 import org.apache.isis.applib.services.xactn.TransactionState;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
@@ -103,7 +103,7 @@ public class PersistenceSessionServiceInternalDefault implements PersistenceSess
     @Override
     public Object lookup(
             final Bookmark bookmark,
-            final BookmarkService2.FieldResetPolicy fieldResetPolicy) {
+            final BookmarkService.FieldResetPolicy fieldResetPolicy) {
         return getPersistenceSession().lookup(bookmark, fieldResetPolicy);
     }
 
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
index c218254..ddb8d70 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
@@ -41,7 +41,7 @@ import org.slf4j.LoggerFactory;
 
 import org.apache.isis.applib.query.Query;
 import org.apache.isis.applib.services.bookmark.Bookmark;
-import org.apache.isis.applib.services.bookmark.BookmarkService2;
+import org.apache.isis.applib.services.bookmark.BookmarkService;
 import org.apache.isis.applib.services.clock.ClockService;
 import org.apache.isis.applib.services.command.Command;
 import org.apache.isis.applib.services.command.Command3;
@@ -2292,13 +2292,13 @@ public class PersistenceSession implements
 
     public Object lookup(
             final Bookmark bookmark,
-            final BookmarkService2.FieldResetPolicy fieldResetPolicy) {
+            final BookmarkService.FieldResetPolicy fieldResetPolicy) {
         RootOid oid = RootOid.create(bookmark);
         final ObjectAdapter adapter = adapterFor(oid);
         if(adapter == null) {
             return null;
         }
-        if(fieldResetPolicy == BookmarkService2.FieldResetPolicy.RESET && !adapter.getSpecification().isViewModel()) {
+        if(fieldResetPolicy == BookmarkService.FieldResetPolicy.RESET && !adapter.getSpecification().isViewModel()) {
             refreshRootInTransaction(adapter);
         } else {
             loadObjectInTransaction(oid);
diff --git a/todo-deprecation-list.txt b/todo-deprecation-list.txt
index 6ceb3ef..3f3cef4 100644
--- a/todo-deprecation-list.txt
+++ b/todo-deprecation-list.txt
@@ -12,9 +12,7 @@ org.apache.isis.applib.clock
     Clock
 
 
-org.apache.isis.applib.services.bookmark  (8 usages found)
-    BookmarkService.java - deprecated methods, have overloads in BookmarkService2 subtype [suggest we retain these for now]
-org.apache.isis.applib.services.classdiscovery 
+org.apache.isis.applib.services.classdiscovery
     ClassDiscoveryService.java , push down into ClassDiscoveryService2
 
 
@@ -385,6 +383,14 @@ org.apache.isis.applib.services.background  (10 usages found)
 
     Remove support for legacy persisted commands (beginning "<memento>...")
 
+
+
+org.apache.isis.applib.services.bookmark  (8 usages found)
+    BookmarkService.java - deprecated methods, have overloads in BookmarkService2 subtype [suggest we retain these for now]
+
+
+
+
 org.apache.isis.applib.services.command.spi
     CommandService.java
         startTransaction(Command, UUID) - no longer required to do anything, so remove

-- 
To stop receiving notification emails like this one, please contact
"commits@isis.apache.org" <co...@isis.apache.org>.