You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2018/04/13 10:27:42 UTC
[isis] branch master updated (5a5e4f3 -> 22732db)
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git.
from 5a5e4f3 ISIS-1841 remove compile-warning suppressions
new 93a8c63 ISIS-1841 replace Util with Java language idioms
new af45ccd ISIS-1841 provide serialVersionUIDs
new 6db3409 ISIS-1841 further cleanup compiler warnings
new 22732db ISIS-1742 moving deprecated MementoService to -legacy
The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../applib/services/memento/MementoService.java | 3 +-
.../isis/applib/services/memento/package-info.java | 0
...aseEncodingWithSupportForLargeUrlsAbstract.java | 8 +-
.../org/apache/isis/applib/AbstractViewModel.java | 1 -
.../isis/applib/domain/DomainObjectList.java | 22 ++--
.../isis/applib/fixturescripts/FixtureScripts.java | 24 +++--
.../apache/isis/applib/internal/base/_Casts.java | 26 ++++-
.../isis/applib/internal/discover/_Discover.java | 1 -
.../isis/applib/internal/memento/_Mementos.java | 85 +++++++++++++++
.../internal/memento/_Mementos_MementoDefault.java | 107 +++++++++++++++++++
.../internal/{base => memento}/package-info.java | 2 +-
.../isis/applib/mixins/dto/Dto_downloadXml.java | 5 +-
.../isis/applib/mixins/dto/Dto_downloadXsd.java | 5 +-
.../services/bookmark/BookmarkHolder_lookup.java | 2 +-
.../services/bookmark/BookmarkHolder_object.java | 2 +-
.../services/command/spi/CommandService.java | 2 -
.../services/config/ConfigurationServiceMenu.java | 15 +--
.../apache/isis/applib/services/error/Ticket.java | 4 +-
.../isis/applib/services/hint/HintStore.java | 4 +-
.../applib/services/hsqldb/HsqlDbManagerMenu.java | 2 +-
.../services/metamodel/MetaModelServicesMenu.java | 6 +-
.../services/publish/PublisherServiceLogging.java | 19 ++--
.../services/swagger/SwaggerServiceMenu.java | 11 +-
.../services/urlencoding/UrlEncodingService.java | 17 ++-
.../UrlEncodingServiceUsingBaseEncoding.java | 13 ++-
.../UrlEncodingServiceWithCompressionAbstract.java | 23 +++-
.../isis/applib/services/userreg/UserDetails.java | 4 +-
.../isis/applib/util/ObjectContract_Parser.java | 6 +-
.../java/org/apache/isis/applib/value/Clob.java | 4 +-
.../isis/applib/events/InteractionEventTest.java | 16 ++-
.../isis/applib/internal/memento/MementosTest.java | 117 +++++++++++++++++++++
.../eventbus/AbstractDomainEvent_veto_Test.java | 5 +-
.../services/i18n/TranslatableStringTest.java | 12 +--
.../urlencoding/UrlEncodingServiceTest.java | 48 +++++++++
...codingServiceWithCompression_Abstract_Test.java | 35 ------
.../org/apache/isis/schema/utils/Roundtrip.java | 3 +-
...ObjectFacetDeclarativeInitializingAbstract.java | 77 +++++++++-----
...ableObjectFacetForXmlRootElementAnnotation.java | 4 +-
.../command/CommandDtoServiceInternal.java | 1 -
...ConfigurationBuilder_PeekConfigurationTest.java | 2 -
.../core/commons/lang/ListUtilsTest_adjust.java | 7 +-
.../commons/lang/ListUtilsTest_mutableCopy.java | 5 -
.../oid/OidMarshallerTest_roundtripping.java | 3 +-
.../Annotations_getAnnotations_on_Field_Test.java | 1 +
...notations_getAnnotations_on_Parameter_Test.java | 1 +
.../core/metamodel/facets/CollectionUtilsTest.java | 3 +-
...SpecificationValidatingInteractionMoreTest.java | 9 +-
...isfySpecificationValidatingInteractionTest.java | 15 ++-
.../facets/propparam/specification/Utils.java | 40 -------
.../core/runtime/services/memento/Dom4jUtil.java | 0
.../services/memento/MementoServiceDefault.java | 22 ++--
.../memento/MementoServiceDefaultTest.java | 0
.../command/CommandDtoServiceInternalDefault.java | 54 +++++-----
53 files changed, 636 insertions(+), 267 deletions(-)
rename core/{applib => applib-legacy}/src/main/java/org/apache/isis/applib/services/memento/MementoService.java (97%)
rename core/{applib => applib-legacy}/src/main/java/org/apache/isis/applib/services/memento/package-info.java (100%)
create mode 100644 core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
create mode 100644 core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
copy core/applib/src/main/java/org/apache/isis/applib/internal/{base => memento}/package-info.java (95%)
create mode 100644 core/applib/src/test/java/org/apache/isis/applib/internal/memento/MementosTest.java
create mode 100644 core/applib/src/test/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceTest.java
delete mode 100644 core/applib/src/test/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompression_Abstract_Test.java
delete mode 100644 core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/Utils.java
rename core/{runtime => runtime-legacy}/src/main/java/org/apache/isis/core/runtime/services/memento/Dom4jUtil.java (100%)
rename core/{runtime => runtime-legacy}/src/main/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefault.java (97%)
rename core/{runtime => runtime-legacy}/src/test/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefaultTest.java (100%)
--
To stop receiving notification emails like this one, please contact
ahuber@apache.org.
[isis] 01/04: ISIS-1841 replace Util with Java language idioms
Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 93a8c63590415167efbf963773b3f4adb21b9517
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Apr 13 07:49:50 2018 +0200
ISIS-1841 replace Util with Java language idioms
---
...SpecificationValidatingInteractionMoreTest.java | 9 ++++-
...isfySpecificationValidatingInteractionTest.java | 15 ++++++--
.../facets/propparam/specification/Utils.java | 40 ----------------------
3 files changed, 21 insertions(+), 43 deletions(-)
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/MustSatisfySpecificationValidatingInteractionMoreTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/MustSatisfySpecificationValidatingInteractionMoreTest.java
index 58f1eb5..0f0f741 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/MustSatisfySpecificationValidatingInteractionMoreTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/MustSatisfySpecificationValidatingInteractionMoreTest.java
@@ -41,6 +41,8 @@ import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
+import java.util.Collections;
+
public class MustSatisfySpecificationValidatingInteractionMoreTest {
@Rule
@@ -65,6 +67,7 @@ public class MustSatisfySpecificationValidatingInteractionMoreTest {
private SpecificationRequiresFirstLetterToBeUpperCase requiresFirstLetterToBeUpperCase;
public static class Customer {}
+
@Before
public void setUp() throws Exception {
@@ -77,7 +80,11 @@ public class MustSatisfySpecificationValidatingInteractionMoreTest {
requiresFirstLetterToBeUpperCase = new SpecificationRequiresFirstLetterToBeUpperCase();
- facetForSpecificationFirstLetterUpperCase = new MustSatisfySpecificationFromMustSatisfyAnnotationOnTypeFacet(Utils.listOf(requiresFirstLetterToBeUpperCase), identifiedHolder, mockServicesInjector);
+ facetForSpecificationFirstLetterUpperCase =
+ new MustSatisfySpecificationFromMustSatisfyAnnotationOnTypeFacet(
+ Collections.singletonList(requiresFirstLetterToBeUpperCase),
+ identifiedHolder,
+ mockServicesInjector);
mockProposedObjectAdapter = context.mock(ObjectAdapter.class, "proposed");
}
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/MustSatisfySpecificationValidatingInteractionTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/MustSatisfySpecificationValidatingInteractionTest.java
index 96fdfc1..93216ad 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/MustSatisfySpecificationValidatingInteractionTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/MustSatisfySpecificationValidatingInteractionTest.java
@@ -41,6 +41,8 @@ import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
+import java.util.Collections;
+
public class MustSatisfySpecificationValidatingInteractionTest {
@Rule
@@ -79,8 +81,17 @@ public class MustSatisfySpecificationValidatingInteractionTest {
specificationAlwaysSatisfied = new SpecificationAlwaysSatisfied();
specificationNeverSatisfied = new SpecificationNeverSatisfied();
- facetForSpecificationAlwaysSatisfied = new MustSatisfySpecificationFromMustSatisfyAnnotationOnTypeFacet(Utils.listOf(specificationAlwaysSatisfied), identifiedHolder, mockServicesInjector);
- facetForSpecificationNeverSatisfied = new MustSatisfySpecificationFromMustSatisfyAnnotationOnTypeFacet(Utils.listOf(specificationNeverSatisfied), identifiedHolder, mockServicesInjector);
+ facetForSpecificationAlwaysSatisfied =
+ new MustSatisfySpecificationFromMustSatisfyAnnotationOnTypeFacet(
+ Collections.singletonList(specificationAlwaysSatisfied),
+ identifiedHolder,
+ mockServicesInjector);
+
+ facetForSpecificationNeverSatisfied =
+ new MustSatisfySpecificationFromMustSatisfyAnnotationOnTypeFacet(
+ Collections.singletonList(specificationNeverSatisfied),
+ identifiedHolder,
+ mockServicesInjector);
mockProposedObjectAdapter = context.mock(ObjectAdapter.class, "proposed");
mockProposedObject = context.mock(Object.class, "proposedObject");
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/Utils.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/Utils.java
deleted file mode 100644
index 4ccea41..0000000
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/propparam/specification/Utils.java
+++ /dev/null
@@ -1,40 +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.core.metamodel.facets.propparam.specification;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.isis.applib.spec.Specification;
-
-public final class Utils {
-
- private Utils() {
- }
-
-
- public static List<Specification> listOf(final Specification specification) {
- return new ArrayList<Specification>() {
- {
- add(specification);
- }
- };
- }
-}
--
To stop receiving notification emails like this one, please contact
ahuber@apache.org.
[isis] 04/04: ISIS-1742 moving deprecated MementoService to -legacy
Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 22732dbd1c67b025665862047f3e342517d06321
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Apr 13 12:21:19 2018 +0200
ISIS-1742 moving deprecated MementoService to -legacy
Introduces _Mementos for Internal API.
---
.../applib/services/memento/MementoService.java | 3 +-
.../isis/applib/services/memento/package-info.java | 0
...aseEncodingWithSupportForLargeUrlsAbstract.java | 8 +-
.../isis/applib/fixturescripts/FixtureScripts.java | 24 +++--
.../apache/isis/applib/internal/base/_Casts.java | 26 ++++-
.../isis/applib/internal/memento/_Mementos.java | 85 +++++++++++++++
.../internal/memento/_Mementos_MementoDefault.java | 107 +++++++++++++++++++
.../_Casts.java => memento/package-info.java} | 27 ++---
.../services/urlencoding/UrlEncodingService.java | 17 ++-
.../UrlEncodingServiceUsingBaseEncoding.java | 13 ++-
.../UrlEncodingServiceWithCompressionAbstract.java | 23 +++-
.../isis/applib/internal/memento/MementosTest.java | 117 +++++++++++++++++++++
.../urlencoding/UrlEncodingServiceTest.java | 48 +++++++++
...codingServiceWithCompression_Abstract_Test.java | 35 ------
...ObjectFacetDeclarativeInitializingAbstract.java | 77 +++++++++-----
...ableObjectFacetForXmlRootElementAnnotation.java | 4 +-
.../command/CommandDtoServiceInternal.java | 1 -
.../core/runtime/services/memento/Dom4jUtil.java | 0
.../services/memento/MementoServiceDefault.java | 22 ++--
.../memento/MementoServiceDefaultTest.java | 0
.../command/CommandDtoServiceInternalDefault.java | 54 +++++-----
21 files changed, 538 insertions(+), 153 deletions(-)
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/memento/MementoService.java b/core/applib-legacy/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
similarity index 97%
rename from core/applib/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
rename to core/applib-legacy/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
index aa604cf..76de626 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
+++ b/core/applib-legacy/src/main/java/org/apache/isis/applib/services/memento/MementoService.java
@@ -33,7 +33,8 @@ import org.apache.isis.applib.services.jaxb.JaxbService;
* registered and available for use; no configuration is required.
* </p>
*
- * @deprecated - for view models, use JAXB annotations and the {@link JaxbService}; for action invocations and such like, use {@link InteractionContext} and {@link CommandContext}.
+ * @deprecated - for view models, use JAXB annotations and the {@link JaxbService};
+ * for action invocations and such like, use {@link InteractionContext} and {@link CommandContext}.
*/
@Deprecated
public interface MementoService {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/memento/package-info.java b/core/applib-legacy/src/main/java/org/apache/isis/applib/services/memento/package-info.java
similarity index 100%
rename from core/applib/src/main/java/org/apache/isis/applib/services/memento/package-info.java
rename to core/applib-legacy/src/main/java/org/apache/isis/applib/services/memento/package-info.java
diff --git a/core/applib-legacy/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncodingWithSupportForLargeUrlsAbstract.java b/core/applib-legacy/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncodingWithSupportForLargeUrlsAbstract.java
index 739ec60..e8e4aa1 100644
--- a/core/applib-legacy/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncodingWithSupportForLargeUrlsAbstract.java
+++ b/core/applib-legacy/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncodingWithSupportForLargeUrlsAbstract.java
@@ -31,9 +31,9 @@ public abstract class UrlEncodingServiceUsingBaseEncodingWithSupportForLargeUrls
Maps.synchronizedBiMap(HashBiMap.<String, String>create(EXPECTED_SIZE));
@Override
- public String encode(final String value) {
+ public String encodeString(final String value) {
if(!canCache(value)) {
- return super.encode(value);
+ return super.encodeString(value);
}
synchronized (cachedValueByKey) {
@@ -47,9 +47,9 @@ public abstract class UrlEncodingServiceUsingBaseEncodingWithSupportForLargeUrls
}
@Override
- public String decode(final String key) {
+ public String decodeToString(final String key) {
if(key == null || !key.startsWith(KEY_PREFIX)) {
- return super.decode(key);
+ return super.decodeToString(key);
}
String keySuffix = key.substring(KEY_PREFIX.length());
return cachedValueByKey.get(keySuffix);
diff --git a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScripts.java b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScripts.java
index 1b8549c..4593ec9 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScripts.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScripts.java
@@ -28,6 +28,7 @@ import java.util.function.Predicate;
import java.util.stream.Collectors;
import javax.annotation.PostConstruct;
+import javax.xml.bind.annotation.XmlRootElement;
import org.apache.isis.applib.AbstractService;
import org.apache.isis.applib.DomainObjectContainer;
@@ -47,8 +48,7 @@ import org.apache.isis.applib.services.bookmark.BookmarkService;
import org.apache.isis.applib.services.classdiscovery.ClassDiscoveryService;
import org.apache.isis.applib.services.fixturespec.FixtureScriptsDefault;
import org.apache.isis.applib.services.fixturespec.FixtureScriptsSpecification;
-import org.apache.isis.applib.services.memento.MementoService;
-import org.apache.isis.applib.services.memento.MementoService.Memento;
+import org.apache.isis.applib.services.jaxb.JaxbService;
import org.apache.isis.applib.services.registry.ServiceRegistry;
import org.apache.isis.applib.services.repository.RepositoryService;
import org.apache.isis.applib.services.title.TitleService;
@@ -413,15 +413,21 @@ public abstract class FixtureScripts extends AbstractService {
// -- memento support for FixtureScript
+ @XmlRootElement(name = "fixtureScript")
+ public static class FixtureScriptMemento {
+ private String path;
+ public String getPath() { return path; }
+ public void setPath(String path) { this.path = path; }
+ }
String mementoFor(final FixtureScript fs) {
- return mementoService.create()
- .set("path", fs.getParentPath())
- .asString();
+ final FixtureScriptMemento memento = new FixtureScriptMemento();
+ memento.setPath(fs.getParentPath());
+ return jaxbService.toXml(memento);
}
- void initOf(final String mementoStr, final FixtureScript fs) {
- final Memento memento = mementoService.parse(mementoStr);
- fs.setParentPath(memento.get("path", String.class));
+ void initOf(final String xml, final FixtureScript fs) {
+ final FixtureScriptMemento memento = jaxbService.fromXml(FixtureScriptMemento.class, xml);
+ fs.setParentPath(memento.getPath());
}
// -- helpers (package level)
@@ -467,7 +473,7 @@ public abstract class FixtureScripts extends AbstractService {
TitleService titleService;
@javax.inject.Inject
- MementoService mementoService;
+ JaxbService jaxbService;
@javax.inject.Inject
BookmarkService bookmarkService;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java b/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
index 30713a9..d201ff6 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
@@ -19,6 +19,11 @@
package org.apache.isis.applib.internal.base;
+import java.util.Objects;
+import java.util.function.Supplier;
+
+import javax.annotation.Nullable;
+
/**
* <h1>- internal use only -</h1>
* <p>
@@ -36,8 +41,27 @@ public final class _Casts {
private _Casts(){}
@SuppressWarnings("unchecked")
- public static <T> T uncheckedCast(Object obj) {
+ public static <T> T uncheckedCast(@Nullable Object obj) {
return (T) obj;
}
+
+ /**
+ * Returns the casts of {@code value} to {@code cls}, or if this fails returns the result of {@code orElse}
+ * @param value
+ * @param cls
+ * @param orElse
+ * @return
+ */
+ public static <T> T castToOrElse(@Nullable Object value, Class<T> cls, Supplier<T> orElse) {
+ Objects.requireNonNull(cls);
+ Objects.requireNonNull(orElse);
+
+ try {
+ return cls.cast(value);
+ } catch (Exception e) {
+ return orElse.get();
+ }
+
+ }
}
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java b/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
new file mode 100644
index 0000000..291df6f
--- /dev/null
+++ b/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos.java
@@ -0,0 +1,85 @@
+/*
+ * 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.internal.memento;
+
+import java.util.Set;
+
+import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
+
+/**
+ * <h1>- internal use only -</h1>
+ * <p>
+ * Provides framework internal memento support.
+ * </p>
+ * <p>
+ * <b>WARNING</b>: Do <b>NOT</b> use any of the classes provided by this package! <br/>
+ * These may be changed or removed without notice!
+ * </p>
+ *
+ * @since 2.0.0
+ */
+public final class _Mementos {
+
+ private _Mementos(){}
+
+ // -- MEMENTO INTERFACE
+
+ public static interface Memento {
+
+ public Memento set(String name, Object value);
+
+ public <T> T get(String name, Class<T> cls);
+
+ /**
+ * @return To-String serialization of this Memento.
+ */
+ public String asString();
+
+ public Set<String> keySet();
+ }
+
+ // -- CONSTRUCTION
+
+ /**
+ * Creates an empty {@link Memento}.
+ *
+ * <p>
+ * Typically followed by {@link Memento#set(String, Object)} for each of the data values to
+ * add to the {@link Memento}, then {@link Memento#asString()} to convert to a string format.
+ *
+ */
+ public static Memento create(UrlEncodingService codec) {
+ return new _Mementos_MementoDefault(codec);
+ }
+
+ /**
+ * Parse string returned from {@link Memento#asString()}
+ *
+ * <p>
+ * Typically followed by {@link Memento#get(String, Class)} for each of the data values held
+ * in the {@link Memento}.
+ *
+ */
+ public static Memento parse(UrlEncodingService codec, final String str) {
+ return _Mementos_MementoDefault.parse(codec, str);
+
+ }
+
+}
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java b/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
new file mode 100644
index 0000000..d69e5f2
--- /dev/null
+++ b/core/applib/src/main/java/org/apache/isis/applib/internal/memento/_Mementos_MementoDefault.java
@@ -0,0 +1,107 @@
+/*
+ * 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.internal.memento;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.util.Map;
+import java.util.Objects;
+import java.util.Set;
+
+import javax.annotation.Nullable;
+
+import org.apache.isis.applib.internal.base._Casts;
+import org.apache.isis.applib.internal.base._NullSafe;
+import org.apache.isis.applib.internal.collections._Maps;
+import org.apache.isis.applib.internal.collections._Sets;
+import org.apache.isis.applib.internal.memento._Mementos.Memento;
+import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
+
+/**
+ *
+ * package private mixin for utility class {@link _Mementos}
+ *
+ * Memento default implementation.
+ *
+ */
+class _Mementos_MementoDefault implements _Mementos.Memento {
+
+ private final UrlEncodingService codec;
+ private final Map<String, Object> valuesByKey;
+
+ _Mementos_MementoDefault(UrlEncodingService codec) {
+ this(codec, _Maps.newHashMap());
+ }
+
+ private _Mementos_MementoDefault(UrlEncodingService codec, Map<String, Object> valuesByKey) {
+ Objects.requireNonNull(codec);
+ this.codec = codec;
+ this.valuesByKey = valuesByKey;
+ }
+
+ @Override
+ public Memento set(String name, Object value) {
+ valuesByKey.put(name, value);
+ return this;
+ }
+
+ @Override
+ public <T> T get(String name, Class<T> cls) {
+ final Object value = valuesByKey.get(name);
+ return _Casts.castToOrElse(value, cls, ()->null);
+ }
+
+ @Override
+ public Set<String> keySet() {
+ return _Sets.unmodifiable(valuesByKey.keySet());
+ }
+
+ @Override
+ public String asString() {
+
+ final ByteArrayOutputStream os = new ByteArrayOutputStream(16*1024); // 16k initial size
+
+ try(ObjectOutputStream oos = new ObjectOutputStream(os)){
+ oos.writeObject(valuesByKey);
+ } catch (Exception e) {
+ throw new IllegalArgumentException("failed to serialize memento", e);
+ }
+
+ return codec.encode(os.toByteArray());
+ }
+
+ // -- PARSER
+
+ static Memento parse(UrlEncodingService codec, @Nullable String str) {
+ Objects.requireNonNull(codec);
+ if(_NullSafe.isEmpty(str)) {
+ return null;
+ }
+ try(ObjectInputStream ois = new ObjectInputStream(new ByteArrayInputStream(codec.decode(str)))) {
+ final Map<String, Object> valuesByKey = _Casts.uncheckedCast(ois.readObject());
+ return new _Mementos_MementoDefault(codec, valuesByKey);
+ } catch (Exception e) {
+ throw new IllegalArgumentException("failed to parse memento from serialized string", e);
+ }
+ }
+
+}
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java b/core/applib/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
similarity index 70%
copy from core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
copy to core/applib/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
index 30713a9..098b24b 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/internal/base/_Casts.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/internal/memento/package-info.java
@@ -16,28 +16,13 @@
* specific language governing permissions and limitations
* under the License.
*/
-
-package org.apache.isis.applib.internal.base;
-
/**
- * <h1>- internal use only -</h1>
- * <p>
- * Casting Utilities
- * </p>
- * <p>
- * <b>WARNING</b>: Do <b>NOT</b> use any of the classes provided by this package! <br/>
+ * <h1>Internal API</h1>
+ * Internal classes, contributing to the internal proprietary API.
* These may be changed or removed without notice!
+ * <p>
+ * <b>WARNING</b>:
+ * Do NOT use any of the classes provided by this package!
* </p>
- *
- * @since 2.0.0
*/
-public final class _Casts {
-
- private _Casts(){}
-
- @SuppressWarnings("unchecked")
- public static <T> T uncheckedCast(Object obj) {
- return (T) obj;
- }
-
-}
+package org.apache.isis.applib.internal.memento;
\ No newline at end of file
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
index 9f02e84..6754532 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingService.java
@@ -16,14 +16,27 @@
*/
package org.apache.isis.applib.services.urlencoding;
+import java.nio.charset.StandardCharsets;
+
import org.apache.isis.applib.annotation.Programmatic;
+import org.apache.isis.applib.internal.base._Strings;
public interface UrlEncodingService {
@Programmatic
- public String encode(final String str);
+ public String encode(final byte[] bytes);
+
+ @Programmatic
+ public byte[] decode(String str);
@Programmatic
- public String decode(String str);
+ public default String encodeString(final String str) {
+ return encode(_Strings.toBytes(str, StandardCharsets.UTF_8));
+ }
+ @Programmatic
+ public default String decodeToString(final String str) {
+ return _Strings.ofBytes(decode(str), StandardCharsets.UTF_8);
+ }
+
}
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncoding.java b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncoding.java
index 82b8086..1090d0a 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncoding.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceUsingBaseEncoding.java
@@ -20,7 +20,6 @@ import java.nio.charset.StandardCharsets;
import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.annotation.Programmatic;
import org.apache.isis.applib.internal.base._Bytes;
import org.apache.isis.applib.internal.base._Strings;
@@ -30,14 +29,14 @@ import org.apache.isis.applib.internal.base._Strings;
)
public class UrlEncodingServiceUsingBaseEncoding implements UrlEncodingService {
- @Override @Programmatic
- public String encode(final String str) {
- return _Strings.convert(str, _Bytes.asUrlBase64, StandardCharsets.UTF_8);
+ @Override
+ public String encode(final byte[] bytes) {
+ return _Strings.ofBytes(_Bytes.asUrlBase64.apply(bytes), StandardCharsets.UTF_8);
}
- @Override @Programmatic
- public String decode(final String str) {
- return _Strings.convert(str, _Bytes.ofUrlBase64, StandardCharsets.UTF_8);
+ @Override
+ public byte[] decode(final String str) {
+ return _Bytes.ofUrlBase64.apply(_Strings.toBytes(str, StandardCharsets.UTF_8));
}
}
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompressionAbstract.java b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompressionAbstract.java
index ebbc455..cebc1fd 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompressionAbstract.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompressionAbstract.java
@@ -14,13 +14,28 @@ import org.apache.isis.applib.internal.base._Strings;
public abstract class UrlEncodingServiceWithCompressionAbstract implements UrlEncodingService {
@Override
- public String encode(final String str) {
- return _Strings.convert(str, _Bytes.asCompressedUrlBase64, StandardCharsets.UTF_8);
+ public String encode(final byte[] bytes) {
+ return _Strings.ofBytes(_Bytes.asCompressedUrlBase64.apply(bytes), StandardCharsets.UTF_8);
}
@Override
- public String decode(final String str) {
- return _Strings.convert(str, _Bytes.ofCompressedUrlBase64, StandardCharsets.UTF_8);
+ public byte[] decode(final String str) {
+ return _Bytes.ofCompressedUrlBase64.apply(_Strings.toBytes(str, StandardCharsets.UTF_8));
}
+ // -- OVERRIDING DEFAULTS FOR STRING UNARY OPERATORS
+
+// @Override
+// public String encodeString(final String str) {
+// return _Strings.convert(str, _Bytes.asCompressedUrlBase64, StandardCharsets.UTF_8);
+// }
+//
+// @Override
+// public String decodeToString(final String str) {
+// return _Strings.convert(str, _Bytes.ofCompressedUrlBase64, StandardCharsets.UTF_8);
+// }
+
+ // --
+
+
}
diff --git a/core/applib/src/test/java/org/apache/isis/applib/internal/memento/MementosTest.java b/core/applib/src/test/java/org/apache/isis/applib/internal/memento/MementosTest.java
new file mode 100644
index 0000000..a919c2c
--- /dev/null
+++ b/core/applib/src/test/java/org/apache/isis/applib/internal/memento/MementosTest.java
@@ -0,0 +1,117 @@
+/*
+ * 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.internal.memento;
+
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.nullValue;
+import static org.junit.Assert.assertThat;
+
+import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.util.Date;
+
+import org.apache.isis.applib.internal.memento._Mementos.Memento;
+import org.apache.isis.applib.services.bookmark.Bookmark;
+import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
+import org.apache.isis.applib.services.urlencoding.UrlEncodingServiceUsingBaseEncoding;
+import org.apache.isis.applib.services.urlencoding.UrlEncodingServiceWithCompressionAbstract;
+import org.joda.time.LocalDate;
+import org.junit.Before;
+import org.junit.Test;
+
+public class MementosTest {
+
+ static enum DOW {
+ Mon,Tue,Wed,Thu,Fri
+ }
+
+ UrlEncodingServiceWithCompressionAbstract serviceWithCompression;
+ UrlEncodingServiceUsingBaseEncoding serviceBaseEncoding;
+
+ @Before
+ public void setUp() throws Exception {
+ serviceWithCompression = new UrlEncodingServiceWithCompressionAbstract(){};
+ serviceBaseEncoding = new UrlEncodingServiceUsingBaseEncoding(){};
+ }
+
+ @Test
+ public void roundtrip() {
+ roundtrip(serviceBaseEncoding);
+ }
+
+ @Test
+ public void roundtrip_with_compression() {
+ roundtrip(serviceWithCompression);
+ }
+
+ private void roundtrip(UrlEncodingService codec) {
+ final Memento memento = _Mementos.create(codec);
+
+ memento.set("someString", "a string");
+ memento.set("someStringWithDoubleSpaces", "a string");
+ memento.set("someByte", (byte)123);
+ memento.set("someShort", (short)12345);
+ memento.set("someInt", 123456789);
+ memento.set("someLong", 1234567890123456789L);
+ memento.set("someFloat", 123.45F);
+ memento.set("someDouble", 1234567890.123456);
+ memento.set("someBooleanTrue", Boolean.TRUE);
+ memento.set("someBooleanFalse", Boolean.FALSE);
+ memento.set("someBigInteger", new BigInteger("123456789012345678901234567890"));
+ memento.set("someBigDecimal", new BigDecimal("123456789012345678901234567890.123456789"));
+ memento.set("someLocalDate", new LocalDate(2013,9,3));
+ memento.set("someJavaUtilDate", new Date(300_000_000));
+
+ memento.set("someBookmark", new Bookmark("CUS", "12345"));
+ memento.set("someNullValue", null);
+
+ memento.set("someEnum", DOW.Wed);
+
+ final String str = memento.asString();
+
+ final Memento memento2 = _Mementos.parse(codec, str);
+
+ assertThat(memento2.get("someString", String.class), is("a string"));
+ assertThat(memento2.get("someStringWithDoubleSpaces", String.class), is("a string"));
+ assertThat(memento2.get("someByte", Byte.class), is((byte)123));
+ assertThat(memento2.get("someShort", Short.class), is((short)12345));
+ assertThat(memento2.get("someInt", Integer.class), is(123456789));
+ assertThat(memento2.get("someLong", Long.class), is(1234567890123456789L));
+ assertThat(memento2.get("someFloat", Float.class), is(123.45F));
+ assertThat(memento2.get("someDouble", Double.class), is(1234567890.123456));
+ assertThat(memento2.get("someBooleanTrue", Boolean.class), is(Boolean.TRUE));
+ assertThat(memento2.get("someBooleanFalse", Boolean.class), is(Boolean.FALSE));
+ assertThat(memento2.get("someBigInteger", BigInteger.class), is(new BigInteger("123456789012345678901234567890")));
+ assertThat(memento2.get("someBigDecimal", BigDecimal.class), is(new BigDecimal("123456789012345678901234567890.123456789")));
+ assertThat(memento2.get("someLocalDate", LocalDate.class), is(new LocalDate(2013,9,3)));
+ assertThat(memento2.get("someJavaUtilDate", Date.class), is(new Date(300_000_000)));
+ assertThat(memento2.get("someBookmark", Bookmark.class), is(new Bookmark("CUS", "12345")));
+
+ // a nullValue can be grabbed as any type, will always succeed
+ assertThat(memento2.get("someNullValue", Integer.class), is(nullValue()));
+ assertThat(memento2.get("someNullValue", Bookmark.class), is(nullValue()));
+ assertThat(memento2.get("someNullValue", LocalDate.class), is(nullValue()));
+
+ assertThat(memento2.get("someEnum", DOW.class), is(DOW.Wed));
+
+ }
+
+
+}
diff --git a/core/applib/src/test/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceTest.java b/core/applib/src/test/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceTest.java
new file mode 100644
index 0000000..8ad36cc
--- /dev/null
+++ b/core/applib/src/test/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceTest.java
@@ -0,0 +1,48 @@
+package org.apache.isis.applib.services.urlencoding;
+
+import static org.hamcrest.CoreMatchers.equalTo;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.Matchers.greaterThan;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+public class UrlEncodingServiceTest {
+
+ UrlEncodingServiceWithCompressionAbstract serviceWithCompression;
+ UrlEncodingServiceUsingBaseEncoding serviceBaseEncoding;
+
+ @Before
+ public void setUp() throws Exception {
+ serviceWithCompression = new UrlEncodingServiceWithCompressionAbstract(){};
+ serviceBaseEncoding = new UrlEncodingServiceUsingBaseEncoding(){};
+ }
+
+ @Test
+ public void roundtrip() throws Exception {
+ roundtrip(serviceBaseEncoding, false);
+ }
+
+ @Test
+ public void roundtrip_with_compression() throws Exception {
+ roundtrip(serviceWithCompression, true);
+ }
+
+ private void roundtrip(UrlEncodingService service, boolean testIsCompressing) throws Exception {
+
+ final String original = "0-theme-entityPageContainer-entity-rows-2-rowContents-1-col-tabGroups-1-panel-tabPanel-rows-1-rowContents-1-col-fieldSets-1-memberGroup-properties-1-property-scalarTypeContainer-scalarIfRegular-associatedActionLinksBelow-additionalLinkList-additionalLinkItem-0-additionalLink";
+
+ final String encoded = service.encodeString(original);
+ final String decoded = service.decodeToString(encoded);
+
+ Assert.assertThat(decoded, is(equalTo(original)));
+
+ if(testIsCompressing) {
+ Assert.assertThat(original.length(), is(greaterThan(encoded.length())));
+ }
+
+ }
+
+
+}
\ No newline at end of file
diff --git a/core/applib/src/test/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompression_Abstract_Test.java b/core/applib/src/test/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompression_Abstract_Test.java
deleted file mode 100644
index 3ff0ee6..0000000
--- a/core/applib/src/test/java/org/apache/isis/applib/services/urlencoding/UrlEncodingServiceWithCompression_Abstract_Test.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.apache.isis.applib.services.urlencoding;
-
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-
-import static org.hamcrest.CoreMatchers.equalTo;
-import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.Matchers.greaterThan;
-
-public class UrlEncodingServiceWithCompression_Abstract_Test {
-
- UrlEncodingServiceWithCompressionAbstract service;
-
- @Before
- public void setUp() throws Exception {
- service = new UrlEncodingServiceWithCompressionAbstract(){};
-// service.base64Encoder = new UrlEncodingServiceUsingBaseEncoding();
- }
-
- @Test
- public void roundtrip() throws Exception {
-
- final String original = "0-theme-entityPageContainer-entity-rows-2-rowContents-1-col-tabGroups-1-panel-tabPanel-rows-1-rowContents-1-col-fieldSets-1-memberGroup-properties-1-property-scalarTypeContainer-scalarIfRegular-associatedActionLinksBelow-additionalLinkList-additionalLinkItem-0-additionalLink";
-
- final String encoded = service.encode(original);
- final String decoded = service.decode(encoded);
-
- Assert.assertThat(decoded, is(equalTo(original)));
-
- Assert.assertThat(original.length(), is(greaterThan(encoded.length())));
- }
-
-
-}
\ No newline at end of file
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetDeclarativeInitializingAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetDeclarativeInitializingAbstract.java
index 1d3a4d2..70a4de4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetDeclarativeInitializingAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetDeclarativeInitializingAbstract.java
@@ -23,9 +23,8 @@ import java.util.List;
import java.util.Set;
import java.util.UUID;
-import org.apache.isis.applib.services.bookmark.Bookmark;
-import org.apache.isis.applib.services.bookmark.BookmarkService;
-import org.apache.isis.applib.services.memento.MementoService;
+import org.apache.isis.applib.internal.memento._Mementos;
+import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
import org.apache.isis.core.metamodel.adapter.mgr.AdapterManager;
import org.apache.isis.core.metamodel.adapter.oid.Oid;
@@ -37,9 +36,9 @@ import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySe
import org.apache.isis.core.metamodel.services.ServicesInjector;
import org.apache.isis.core.metamodel.spec.ObjectSpecId;
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
-import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
import org.apache.isis.core.metamodel.spec.feature.Contributed;
import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
+import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
public abstract class RecreatableObjectFacetDeclarativeInitializingAbstract extends RecreatableObjectFacetAbstract {
@@ -63,10 +62,15 @@ public abstract class RecreatableObjectFacetDeclarativeInitializingAbstract exte
final Object viewModelPojo,
final String mementoStr) {
- final MementoService mementoService = servicesInjector.lookupService(MementoService.class);
- final BookmarkService bookmarkService = servicesInjector.lookupService(BookmarkService.class);
-
- final MementoService.Memento memento = mementoService.parse(mementoStr);
+ final UrlEncodingService codec = servicesInjector.lookupService(UrlEncodingService.class);
+
+ final _Mementos.Memento memento = _Mementos.parse(codec, mementoStr);
+
+//TODO Legacy of ...
+// final MementoService mementoService = servicesInjector.lookupService(MementoService.class);
+// final BookmarkService bookmarkService = servicesInjector.lookupService(BookmarkService.class);
+//
+// final MementoService.Memento memento = mementoService.parse(mementoStr);
final Set<String> mementoKeys = memento.keySet();
@@ -84,15 +88,21 @@ public abstract class RecreatableObjectFacetDeclarativeInitializingAbstract exte
final String propertyId = property.getId();
Object propertyValue = null;
-
+
if(mementoKeys.contains(propertyId)) {
- final Class<?> propertyType = property.getSpecification().getCorrespondingClass();
- propertyValue = memento.get(propertyId, propertyType);
- } else if(mementoKeys.contains(propertyId + ".bookmark")) {
- final Bookmark propertyValueBookmark = memento.get(propertyId + ".bookmark", Bookmark.class);
- propertyValue = bookmarkService.lookup(propertyValueBookmark);
+ final Class<?> propertyType = property.getSpecification().getCorrespondingClass();
+ propertyValue = memento.get(propertyId, propertyType);
}
+//TODO Legacy of ...
+// if(mementoKeys.contains(propertyId)) {
+// final Class<?> propertyType = property.getSpecification().getCorrespondingClass();
+// propertyValue = memento.get(propertyId, propertyType);
+// } else if(mementoKeys.contains(propertyId + ".bookmark")) {
+// final Bookmark propertyValueBookmark = memento.get(propertyId + ".bookmark", Bookmark.class);
+// propertyValue = bookmarkService.lookup(propertyValueBookmark);
+// }
+
if(propertyValue != null) {
property.set(viewModelAdapter, adapterManager.adapterFor(propertyValue), InteractionInitiatedBy.FRAMEWORK);
}
@@ -101,11 +111,16 @@ public abstract class RecreatableObjectFacetDeclarativeInitializingAbstract exte
@Override
public String memento(Object viewModelPojo) {
+
+ final UrlEncodingService codec = servicesInjector.lookupService(UrlEncodingService.class);
+
+ final _Mementos.Memento memento = _Mementos.create(codec);
- final MementoService mementoService = servicesInjector.lookupService(MementoService.class);
- final BookmarkService bookmarkService = servicesInjector.lookupService(BookmarkService.class);
-
- final MementoService.Memento memento = mementoService.create();
+//TODO Legacy of ...
+// final MementoService mementoService = servicesInjector.lookupService(MementoService.class);
+// final BookmarkService bookmarkService = servicesInjector.lookupService(BookmarkService.class);
+//
+// final MementoService.Memento memento = mementoService.create();
// this is horrible, but there's a catch-22 here...
// we need an adapter in order to query the state of the object via the metamodel, on the other hand
@@ -115,9 +130,15 @@ public abstract class RecreatableObjectFacetDeclarativeInitializingAbstract exte
boolean createdTemporaryAdapter = false;
ObjectAdapter viewModelAdapter = adapterManager.getAdapterFor(viewModelPojo);
if(viewModelAdapter == null) {
- final ObjectSpecification objectSpecification = specificationLoader.loadSpecification(viewModelPojo.getClass());
+
+ final ObjectSpecification objectSpecification =
+ specificationLoader.loadSpecification(viewModelPojo.getClass());
+
final ObjectSpecId objectSpecId = objectSpecification.getSpecId();
- viewModelAdapter = adapterManager.mapRecreatedPojo(RootOid.create(objectSpecId, UUID.randomUUID().toString()), viewModelPojo);
+ viewModelAdapter =
+ adapterManager.mapRecreatedPojo(
+ RootOid.create(objectSpecId, UUID.randomUUID().toString()),
+ viewModelPojo);
createdTemporaryAdapter = true;
}
@@ -144,12 +165,16 @@ public abstract class RecreatableObjectFacetDeclarativeInitializingAbstract exte
InteractionInitiatedBy.FRAMEWORK);
if(propertyValueAdapter != null) {
final Object propertyValue = propertyValueAdapter.getObject();
- if(mementoService.canSet(propertyValue)) {
- memento.set(property.getId(), propertyValue);
- } else {
- final Bookmark propertyValueBookmark = bookmarkService.bookmarkFor(propertyValue);
- memento.set(property.getId() + ".bookmark", propertyValueBookmark);
- }
+
+ memento.set(property.getId(), propertyValue);
+
+//TODO Legacy of ...
+// if(mementoService.canSet(propertyValue)) {
+// memento.set(property.getId(), propertyValue);
+// } else {
+// final Bookmark propertyValueBookmark = bookmarkService.bookmarkFor(propertyValue);
+// memento.set(property.getId() + ".bookmark", propertyValueBookmark);
+// }
}
}
return memento.asString();
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetForXmlRootElementAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetForXmlRootElementAnnotation.java
index 3fa1dca..27c958e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetForXmlRootElementAnnotation.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/recreatable/RecreatableObjectFacetForXmlRootElementAnnotation.java
@@ -39,7 +39,7 @@ public class RecreatableObjectFacetForXmlRootElementAnnotation extends Recreatab
@Override
protected Object doInstantiate(final Class<?> viewModelClass, final String mementoStr) {
- final String xmlStr = getUrlEncodingService().decode(mementoStr);
+ final String xmlStr = getUrlEncodingService().decodeToString(mementoStr);
final Object viewModelPojo = getJaxbService().fromXml(viewModelClass, xmlStr);
return viewModelPojo;
@@ -49,7 +49,7 @@ public class RecreatableObjectFacetForXmlRootElementAnnotation extends Recreatab
public String memento(final Object pojo) {
final String xml = getJaxbService().toXml(pojo);
- final String encoded = getUrlEncodingService().encode(xml);
+ final String encoded = getUrlEncodingService().encodeString(xml);
return encoded;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/command/CommandDtoServiceInternal.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/command/CommandDtoServiceInternal.java
index c1bb4a3..dbe77c2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/command/CommandDtoServiceInternal.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/services/command/CommandDtoServiceInternal.java
@@ -16,7 +16,6 @@
*/
package org.apache.isis.core.metamodel.services.command;
-import java.lang.reflect.Method;
import java.util.List;
import org.apache.isis.applib.annotation.Programmatic;
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/memento/Dom4jUtil.java b/core/runtime-legacy/src/main/java/org/apache/isis/core/runtime/services/memento/Dom4jUtil.java
similarity index 100%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/memento/Dom4jUtil.java
rename to core/runtime-legacy/src/main/java/org/apache/isis/core/runtime/services/memento/Dom4jUtil.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefault.java b/core/runtime-legacy/src/main/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefault.java
similarity index 97%
rename from core/runtime/src/main/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefault.java
rename to core/runtime-legacy/src/main/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefault.java
index c3d56b2..52ecbc5 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefault.java
+++ b/core/runtime-legacy/src/main/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefault.java
@@ -19,19 +19,18 @@ package org.apache.isis.core.runtime.services.memento;
import java.util.List;
import java.util.Set;
-import com.google.common.base.Function;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Sets;
-
-import org.dom4j.Document;
-import org.dom4j.DocumentHelper;
-import org.dom4j.Element;
-
import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.NatureOfService;
import org.apache.isis.applib.annotation.Programmatic;
import org.apache.isis.applib.services.memento.MementoService;
import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
+import org.dom4j.Document;
+import org.dom4j.DocumentHelper;
+import org.dom4j.Element;
+
+import com.google.common.base.Function;
+import com.google.common.collect.Iterables;
+import com.google.common.collect.Sets;
/**
* This service provides a mechanism by which a serializable memento of arbitrary state can be created. Most
@@ -41,11 +40,14 @@ import org.apache.isis.applib.services.urlencoding.UrlEncodingService;
* This implementation has no UI and there are no other implementations of the service API, and so it annotated
* with {@link org.apache.isis.applib.annotation.DomainService}. Because this class is implemented in core, this means
* that it is automatically registered and available for use; no further configuration is required.
+ *
+ * @deprecated - because {@link MementoService} is deprecated.
*/
@DomainService(
nature = NatureOfService.DOMAIN,
menuOrder = "" + Integer.MAX_VALUE
)
+@Deprecated
public class MementoServiceDefault implements MementoService {
static class MementoDefault implements Memento {
@@ -89,7 +91,7 @@ public class MementoServiceDefault implements MementoService {
}
protected String encode(final String xmlStr) {
- return noEncoding ? xmlStr : urlEncodingService.encode(xmlStr);
+ return noEncoding ? xmlStr : urlEncodingService.encodeString(xmlStr);
}
private static final Function<Element, String> ELEMENT_NAME = new Function<Element, String>(){
@@ -149,7 +151,7 @@ public class MementoServiceDefault implements MementoService {
if (noEncoding) {
xmlStr = str;
} else {
- xmlStr = urlEncodingService.decode(str);
+ xmlStr = urlEncodingService.decodeToString(str);
}
final Document doc = Dom4jUtil.parse(xmlStr);
return new MementoDefault(doc, noEncoding, urlEncodingService);
diff --git a/core/runtime/src/test/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefaultTest.java b/core/runtime-legacy/src/test/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefaultTest.java
similarity index 100%
rename from core/runtime/src/test/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefaultTest.java
rename to core/runtime-legacy/src/test/java/org/apache/isis/core/runtime/services/memento/MementoServiceDefaultTest.java
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/command/CommandDtoServiceInternalDefault.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/command/CommandDtoServiceInternalDefault.java
index dc4ec41..8fb9c88 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/services/command/CommandDtoServiceInternalDefault.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/services/command/CommandDtoServiceInternalDefault.java
@@ -16,15 +16,12 @@
*/
package org.apache.isis.core.runtime.services.command;
-import java.lang.reflect.Method;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import javax.annotation.PostConstruct;
-import com.google.common.collect.Lists;
-
import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.NatureOfService;
import org.apache.isis.applib.annotation.Programmatic;
@@ -40,11 +37,8 @@ import org.apache.isis.core.metamodel.services.command.CommandDtoServiceInternal
import org.apache.isis.core.metamodel.spec.ObjectSpecification;
import org.apache.isis.core.metamodel.spec.feature.ObjectAction;
import org.apache.isis.core.metamodel.spec.feature.ObjectActionParameter;
-import org.apache.isis.core.metamodel.spec.feature.ObjectMember;
import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
import org.apache.isis.core.metamodel.specloader.SpecificationLoader;
-import org.apache.isis.core.metamodel.specloader.specimpl.dflt.ObjectSpecificationDefault;
-import org.apache.isis.core.runtime.services.memento.MementoServiceDefault;
import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
import org.apache.isis.schema.cmd.v1.ActionDto;
import org.apache.isis.schema.cmd.v1.CommandDto;
@@ -63,15 +57,15 @@ import org.apache.isis.schema.utils.CommonDtoUtils;
)
public class CommandDtoServiceInternalDefault implements CommandDtoServiceInternal {
- private final MementoServiceDefault mementoService;
-
- public CommandDtoServiceInternalDefault() {
- this(new MementoServiceDefault());
- }
-
- CommandDtoServiceInternalDefault(MementoServiceDefault mementoService) {
- this.mementoService = mementoService.withNoEncoding();
- }
+// private final MementoServiceDefault mementoService;
+//
+// public CommandDtoServiceInternalDefault() {
+// this(new MementoServiceDefault());
+// }
+//
+// CommandDtoServiceInternalDefault(MementoServiceDefault mementoService) {
+// this.mementoService = mementoService.withNoEncoding();
+// }
// //////////////////////////////////////
@@ -84,23 +78,23 @@ public class CommandDtoServiceInternalDefault implements CommandDtoServiceIntern
// //////////////////////////////////////
- private ObjectSpecificationDefault getJavaSpecificationOfOwningClass(final Method method) {
- return getJavaSpecification(method.getDeclaringClass());
- }
+// private ObjectSpecificationDefault getJavaSpecificationOfOwningClass(final Method method) {
+// return getJavaSpecification(method.getDeclaringClass());
+// }
- private ObjectSpecificationDefault getJavaSpecification(final Class<?> cls) {
- final ObjectSpecification objectSpec = getSpecification(cls);
- if (!(objectSpec instanceof ObjectSpecificationDefault)) {
- throw new UnsupportedOperationException(
- "Only Java is supported "
- + "(specification is '" + objectSpec.getClass().getCanonicalName() + "')");
- }
- return (ObjectSpecificationDefault) objectSpec;
- }
+// private ObjectSpecificationDefault getJavaSpecification(final Class<?> cls) {
+// final ObjectSpecification objectSpec = getSpecification(cls);
+// if (!(objectSpec instanceof ObjectSpecificationDefault)) {
+// throw new UnsupportedOperationException(
+// "Only Java is supported "
+// + "(specification is '" + objectSpec.getClass().getCanonicalName() + "')");
+// }
+// return (ObjectSpecificationDefault) objectSpec;
+// }
- private ObjectSpecification getSpecification(final Class<?> type) {
- return specificationLoader.loadSpecification(type);
- }
+// private ObjectSpecification getSpecification(final Class<?> type) {
+// return specificationLoader.loadSpecification(type);
+// }
// //////////////////////////////////////
--
To stop receiving notification emails like this one, please contact
ahuber@apache.org.
[isis] 02/04: ISIS-1841 provide serialVersionUIDs
Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
commit af45ccd2707dfaf73e453fb92723e9c50204ee6c
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Apr 13 08:04:28 2018 +0200
ISIS-1841 provide serialVersionUIDs
---
.../org/apache/isis/applib/AbstractViewModel.java | 1 -
.../isis/applib/domain/DomainObjectList.java | 22 +++++++++++-----------
.../isis/applib/mixins/dto/Dto_downloadXml.java | 5 ++++-
.../isis/applib/mixins/dto/Dto_downloadXsd.java | 5 ++++-
.../services/bookmark/BookmarkHolder_lookup.java | 2 +-
.../services/bookmark/BookmarkHolder_object.java | 2 +-
.../services/command/spi/CommandService.java | 2 --
.../services/config/ConfigurationServiceMenu.java | 15 +++++++++------
.../apache/isis/applib/services/error/Ticket.java | 4 +++-
.../isis/applib/services/hint/HintStore.java | 4 +++-
.../applib/services/hsqldb/HsqlDbManagerMenu.java | 2 +-
.../services/metamodel/MetaModelServicesMenu.java | 6 ++----
.../services/publish/PublisherServiceLogging.java | 19 ++++++++-----------
.../services/swagger/SwaggerServiceMenu.java | 11 ++++-------
.../isis/applib/services/userreg/UserDetails.java | 4 +++-
.../java/org/apache/isis/applib/value/Clob.java | 4 +++-
16 files changed, 57 insertions(+), 51 deletions(-)
diff --git a/core/applib/src/main/java/org/apache/isis/applib/AbstractViewModel.java b/core/applib/src/main/java/org/apache/isis/applib/AbstractViewModel.java
index 2a1b891..4658b42 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/AbstractViewModel.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/AbstractViewModel.java
@@ -31,7 +31,6 @@ package org.apache.isis.applib;
* As an alternative, consider simply annotating the view model class with {@link org.apache.isis.applib.annotation.ViewModel}.
* </p>
*
- * @see org.apache.isis.applib.DomainObjectContainer
*/
public abstract class AbstractViewModel implements ViewModel {
diff --git a/core/applib/src/main/java/org/apache/isis/applib/domain/DomainObjectList.java b/core/applib/src/main/java/org/apache/isis/applib/domain/DomainObjectList.java
index 8f2f5bb..5d76466 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/domain/DomainObjectList.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/domain/DomainObjectList.java
@@ -60,15 +60,15 @@ import org.apache.isis.schema.utils.jaxbadapters.PersistentEntitiesAdapter;
public class DomainObjectList {
// -- ui event classes
- public static class TitleUiEvent extends IsisApplibModule.TitleUiEvent<DomainObjectList>{}
- public static class IconUiEvent extends IsisApplibModule.IconUiEvent<DomainObjectList>{}
- public static class CssClassUiEvent extends IsisApplibModule.CssClassUiEvent<DomainObjectList>{}
+ public static class TitleUiEvent extends IsisApplibModule.TitleUiEvent<DomainObjectList>{ private static final long serialVersionUID = 1L; }
+ public static class IconUiEvent extends IsisApplibModule.IconUiEvent<DomainObjectList>{ private static final long serialVersionUID = 1L; }
+ public static class CssClassUiEvent extends IsisApplibModule.CssClassUiEvent<DomainObjectList>{ private static final long serialVersionUID = 1L; }
// -- domain event classes
- public static abstract class PropertyDomainEvent<T> extends IsisApplibModule.PropertyDomainEvent<DomainObjectList, T> { }
- public static abstract class CollectionDomainEvent<T> extends IsisApplibModule.CollectionDomainEvent<DomainObjectList, T> { }
- public static abstract class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<DomainObjectList> { }
+ public static abstract class PropertyDomainEvent<T> extends IsisApplibModule.PropertyDomainEvent<DomainObjectList, T> { private static final long serialVersionUID = 1L; }
+ public static abstract class CollectionDomainEvent<T> extends IsisApplibModule.CollectionDomainEvent<DomainObjectList, T> { private static final long serialVersionUID = 1L; }
+ public static abstract class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<DomainObjectList> { private static final long serialVersionUID = 1L; }
// -- constructors
@@ -96,7 +96,7 @@ public class DomainObjectList {
// -- property: elementObjectType
- public static class ElementObjectTypeDomainEvent extends PropertyDomainEvent<String> { }
+ public static class ElementObjectTypeDomainEvent extends PropertyDomainEvent<String> { private static final long serialVersionUID = 1L; }
private String elementObjectType;
@Property(
@@ -109,7 +109,7 @@ public class DomainObjectList {
// -- property: actionOwningType
- public static class ActionOwningTypeDomainEvent extends PropertyDomainEvent<String> { }
+ public static class ActionOwningTypeDomainEvent extends PropertyDomainEvent<String> { private static final long serialVersionUID = 1L; }
private String actionOwningType;
@@ -124,7 +124,7 @@ public class DomainObjectList {
// -- property: actionId
- public static class ActionIdDomainEvent extends PropertyDomainEvent<String> { }
+ public static class ActionIdDomainEvent extends PropertyDomainEvent<String> { private static final long serialVersionUID = 1L; }
private String actionId;
@@ -139,7 +139,7 @@ public class DomainObjectList {
// -- property: actionArguments
- public static class ActionArgumentsDomainEvent extends PropertyDomainEvent<String> { }
+ public static class ActionArgumentsDomainEvent extends PropertyDomainEvent<String> { private static final long serialVersionUID = 1L; }
private String actionArguments;
@@ -154,7 +154,7 @@ public class DomainObjectList {
// -- collection: objects
- public static class ObjectsDomainEvent extends CollectionDomainEvent<Object> { }
+ public static class ObjectsDomainEvent extends CollectionDomainEvent<Object> { private static final long serialVersionUID = 1L; }
@XmlJavaTypeAdapter(PersistentEntitiesAdapter.class)
private List<Object> objects = _Lists.newArrayList();
diff --git a/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/Dto_downloadXml.java b/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/Dto_downloadXml.java
index f071dc7..5373ab4 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/Dto_downloadXml.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/Dto_downloadXml.java
@@ -36,7 +36,10 @@ public class Dto_downloadXml {
this.dto = dto;
}
- public static class ActionDomainEvent extends org.apache.isis.applib.IsisApplibModule.ActionDomainEvent<Dto_downloadXml> {}
+ public static class ActionDomainEvent
+ extends org.apache.isis.applib.IsisApplibModule.ActionDomainEvent<Dto_downloadXml> {
+ private static final long serialVersionUID = 1L;
+ }
@Action(
domainEvent = ActionDomainEvent.class,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/Dto_downloadXsd.java b/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/Dto_downloadXsd.java
index ed73593..4f66515 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/Dto_downloadXsd.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/mixins/dto/Dto_downloadXsd.java
@@ -56,7 +56,10 @@ public class Dto_downloadXsd {
}
}
- public static class ActionDomainEvent extends org.apache.isis.applib.IsisApplibModule.ActionDomainEvent<Dto_downloadXsd> {}
+ public static class ActionDomainEvent
+ extends org.apache.isis.applib.IsisApplibModule.ActionDomainEvent<Dto_downloadXsd> {
+ private static final long serialVersionUID = 1L;
+ }
@Action(
domainEvent = ActionDomainEvent.class,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkHolder_lookup.java b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkHolder_lookup.java
index 7626f9d..43727fe 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkHolder_lookup.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkHolder_lookup.java
@@ -34,7 +34,7 @@ public class BookmarkHolder_lookup {
this.bookmarkHolder = bookmarkHolder;
}
- public static class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<BookmarkHolder_lookup> {}
+ public static class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<BookmarkHolder_lookup> { private static final long serialVersionUID = 1L; }
@Action(
domainEvent = ActionDomainEvent.class,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkHolder_object.java b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkHolder_object.java
index f4051be..6941ff4 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkHolder_object.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/bookmark/BookmarkHolder_object.java
@@ -34,7 +34,7 @@ public class BookmarkHolder_object {
this.bookmarkHolder = bookmarkHolder;
}
- public static class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<BookmarkHolder_object> {}
+ public static class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<BookmarkHolder_object> { private static final long serialVersionUID = 1L; }
@Action(
semantics = SemanticsOf.SAFE,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/command/spi/CommandService.java b/core/applib/src/main/java/org/apache/isis/applib/services/command/spi/CommandService.java
index ca7d82b..5e71bb4 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/command/spi/CommandService.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/command/spi/CommandService.java
@@ -16,8 +16,6 @@
*/
package org.apache.isis.applib.services.command.spi;
-import java.util.UUID;
-
import org.apache.isis.applib.annotation.Programmatic;
import org.apache.isis.applib.services.command.Command;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java
index d61e787..5db6a0e 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/config/ConfigurationServiceMenu.java
@@ -40,12 +40,15 @@ import org.apache.isis.applib.annotation.SemanticsOf;
)
public class ConfigurationServiceMenu {
- public static abstract class ActionDomainEvent
- extends IsisApplibModule.ActionDomainEvent<ConfigurationServiceMenu> { }
-
- // //////////////////////////////////////
-
- public static class AllConfigurationPropertiesDomainEvent extends ActionDomainEvent { }
+ public static abstract class ActionDomainEvent
+ extends IsisApplibModule.ActionDomainEvent<ConfigurationServiceMenu> {
+ private static final long serialVersionUID = 1L;
+ }
+
+ public static class AllConfigurationPropertiesDomainEvent
+ extends ActionDomainEvent {
+ private static final long serialVersionUID = 1L;
+ }
@Action(
domainEvent = AllConfigurationPropertiesDomainEvent.class,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/error/Ticket.java b/core/applib/src/main/java/org/apache/isis/applib/services/error/Ticket.java
index 0d28f4b..dbbddd3 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/error/Ticket.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/error/Ticket.java
@@ -33,7 +33,9 @@ import java.io.Serializable;
*/
public class Ticket implements Serializable {
- private final String reference;
+ private static final long serialVersionUID = 4900947111894407314L;
+
+ private final String reference;
private final String userMessage;
private final String details;
private final StackTracePolicy stackTracePolicy;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/hint/HintStore.java b/core/applib/src/main/java/org/apache/isis/applib/services/hint/HintStore.java
index 5c274a4..9347a55 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/hint/HintStore.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/hint/HintStore.java
@@ -27,7 +27,9 @@ public interface HintStore {
public static class BookmarkWithHintId extends Bookmark {
- private final String hintId;
+ private static final long serialVersionUID = -459431279406553124L;
+
+ private final String hintId;
public BookmarkWithHintId(final Bookmark bookmark, final String hintId) {
super(bookmark.toString());
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/hsqldb/HsqlDbManagerMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/hsqldb/HsqlDbManagerMenu.java
index a7f5fc3..296227b 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/hsqldb/HsqlDbManagerMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/hsqldb/HsqlDbManagerMenu.java
@@ -54,7 +54,7 @@ public class HsqlDbManagerMenu {
}
- public static class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<HsqlDbManagerMenu>{}
+ public static class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<HsqlDbManagerMenu>{ private static final long serialVersionUID = 1L; }
@Action(
semantics = SemanticsOf.SAFE,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
index cfa8604..0809b81 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/metamodel/MetaModelServicesMenu.java
@@ -49,8 +49,7 @@ import org.apache.isis.applib.value.Clob;
)
public class MetaModelServicesMenu {
- public static abstract class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<MetaModelServicesMenu> {
- }
+ public static abstract class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<MetaModelServicesMenu> { private static final long serialVersionUID = 1L; }
private final MimeType mimeTypeTextCsv;
@@ -64,8 +63,7 @@ public class MetaModelServicesMenu {
// //////////////////////////////////////
- public static class DownloadMetaModelEvent extends ActionDomainEvent {
- }
+ public static class DownloadMetaModelEvent extends ActionDomainEvent { private static final long serialVersionUID = 1L; }
@Action(
domainEvent = DownloadMetaModelEvent.class,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/publish/PublisherServiceLogging.java b/core/applib/src/main/java/org/apache/isis/applib/services/publish/PublisherServiceLogging.java
index 83b3466..82e2020 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/publish/PublisherServiceLogging.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/publish/PublisherServiceLogging.java
@@ -20,18 +20,15 @@ package org.apache.isis.applib.services.publish;
import javax.annotation.PostConstruct;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
import org.apache.isis.applib.annotation.DomainService;
import org.apache.isis.applib.annotation.NatureOfService;
-import org.apache.isis.applib.services.command.CommandContext;
import org.apache.isis.applib.services.iactn.Interaction;
-import org.apache.isis.applib.services.user.UserService;
import org.apache.isis.schema.chg.v1.ChangesDto;
import org.apache.isis.schema.ixn.v1.InteractionDto;
import org.apache.isis.schema.utils.ChangesDtoUtils;
import org.apache.isis.schema.utils.InteractionDtoUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
@DomainService(
nature = NatureOfService.DOMAIN,
@@ -72,12 +69,12 @@ public class PublisherServiceLogging implements PublisherService {
LOG.debug(ChangesDtoUtils.toXml(changesDto));
}
-
- @javax.inject.Inject
- private CommandContext commandContext;
-
- @javax.inject.Inject
- private UserService userService;
+//TODO [ahuber] not used, remove?
+// @javax.inject.Inject
+// private CommandContext commandContext;
+//
+// @javax.inject.Inject
+// private UserService userService;
}
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java b/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
index 8744aca..f81eb63 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/swagger/SwaggerServiceMenu.java
@@ -42,11 +42,8 @@ import org.apache.isis.applib.value.LocalResourcePath;
)
public class SwaggerServiceMenu {
- public static abstract class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<SwaggerServiceMenu> {
- }
-
-
- public static class OpenSwaggerUiDomainEvent extends ActionDomainEvent {}
+ public static abstract class ActionDomainEvent extends IsisApplibModule.ActionDomainEvent<SwaggerServiceMenu> { private static final long serialVersionUID = 1L; }
+ public static class OpenSwaggerUiDomainEvent extends ActionDomainEvent { private static final long serialVersionUID = 1L; }
@Action(
semantics = SemanticsOf.SAFE,
@@ -61,7 +58,7 @@ public class SwaggerServiceMenu {
return new LocalResourcePath("/swagger-ui/index.html");
}
- public static class OpenRestApiDomainEvent extends ActionDomainEvent {}
+ public static class OpenRestApiDomainEvent extends ActionDomainEvent { private static final long serialVersionUID = 1L; }
@Action(
semantics = SemanticsOf.SAFE,
@@ -76,7 +73,7 @@ public class SwaggerServiceMenu {
return new LocalResourcePath("/"+_Resource.getRestfulPathIfAny()+"/");
}
- public static class DownloadSwaggerSpecDomainEvent extends ActionDomainEvent {}
+ public static class DownloadSwaggerSpecDomainEvent extends ActionDomainEvent { private static final long serialVersionUID = 1L; }
@Action(
semantics = SemanticsOf.SAFE,
diff --git a/core/applib/src/main/java/org/apache/isis/applib/services/userreg/UserDetails.java b/core/applib/src/main/java/org/apache/isis/applib/services/userreg/UserDetails.java
index c7b520f..dd6e7d2 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/services/userreg/UserDetails.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/services/userreg/UserDetails.java
@@ -25,7 +25,9 @@ import java.io.Serializable;
*/
public class UserDetails implements Serializable {
- private String username;
+ private static final long serialVersionUID = -7308102332765149525L;
+
+ private String username;
private String password;
private String confirmPassword;
private String emailAddress;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/value/Clob.java b/core/applib/src/main/java/org/apache/isis/applib/value/Clob.java
index b846671..222371a 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/value/Clob.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/value/Clob.java
@@ -28,7 +28,9 @@ import javax.activation.MimeTypeParseException;
public final class Clob implements NamedWithMimeType, Serializable {
- private final String name;
+ private static final long serialVersionUID = 8694189924062378527L;
+
+ private final String name;
private final MimeType mimeType;
private final CharSequence chars;
--
To stop receiving notification emails like this one, please contact
ahuber@apache.org.
[isis] 03/04: ISIS-1841 further cleanup compiler warnings
Posted by ah...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git
commit 6db340966420fa09c7cbb627f42c9d6bf0b2a20f
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri Apr 13 08:14:07 2018 +0200
ISIS-1841 further cleanup compiler warnings
---
.../apache/isis/applib/internal/discover/_Discover.java | 1 -
.../apache/isis/applib/util/ObjectContract_Parser.java | 6 ++++--
.../apache/isis/applib/events/InteractionEventTest.java | 16 ++++++----------
.../services/eventbus/AbstractDomainEvent_veto_Test.java | 5 ++---
.../applib/services/i18n/TranslatableStringTest.java | 12 ++++--------
.../java/org/apache/isis/schema/utils/Roundtrip.java | 3 ++-
.../IsisConfigurationBuilder_PeekConfigurationTest.java | 2 --
.../isis/core/commons/lang/ListUtilsTest_adjust.java | 7 +------
.../core/commons/lang/ListUtilsTest_mutableCopy.java | 5 -----
.../adapter/oid/OidMarshallerTest_roundtripping.java | 3 ++-
.../facets/Annotations_getAnnotations_on_Field_Test.java | 1 +
.../Annotations_getAnnotations_on_Parameter_Test.java | 1 +
.../isis/core/metamodel/facets/CollectionUtilsTest.java | 3 ++-
13 files changed, 25 insertions(+), 40 deletions(-)
diff --git a/core/applib/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java b/core/applib/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
index ec2f816..48109b3 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/internal/discover/_Discover.java
@@ -21,7 +21,6 @@ package org.apache.isis.applib.internal.discover;
import java.util.List;
-import org.apache.isis.applib.internal.context._Context;
import org.apache.isis.applib.internal.context._Plugin;
import org.apache.isis.applib.plugins.classdiscovery.ClassDiscovery;
import org.apache.isis.applib.plugins.classdiscovery.ClassDiscoveryPlugin;
diff --git a/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContract_Parser.java b/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContract_Parser.java
index 66e331e..cc33d95 100644
--- a/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContract_Parser.java
+++ b/core/applib/src/main/java/org/apache/isis/applib/util/ObjectContract_Parser.java
@@ -51,6 +51,7 @@ class ObjectContract_Parser<T> {
* @param propertyNames
* @return
*/
+ @SuppressWarnings("unchecked")
public static <T> ObjectContract<T> parse(Class<T> cls, @Nullable final String propertyNames) {
Objects.requireNonNull(cls);
@@ -68,6 +69,7 @@ class ObjectContract_Parser<T> {
}
for(Clause<T> clause : clauses) {
+ @SuppressWarnings("rawtypes")
final Function valueExtractor = x->clause.extractValue((T)x);
contract = contract.thenUse(
@@ -86,14 +88,14 @@ class ObjectContract_Parser<T> {
private enum Direction {
ASC {
- @Override
+ @Override @SuppressWarnings({ "unchecked", "rawtypes" })
public Comparator<Comparable<?>> getOrdering() {
// legacy of Ordering.natural().nullsFirst();
return Comparator.nullsFirst(Comparator.<Comparable>naturalOrder());
}
},
ASC_NULLS_LAST {
- @Override
+ @Override @SuppressWarnings({ "unchecked", "rawtypes" })
public Comparator<Comparable<?>> getOrdering() {
// legacy of Ordering.natural().nullsLast();
return Comparator.nullsLast(Comparator.<Comparable>naturalOrder());
diff --git a/core/applib/src/test/java/org/apache/isis/applib/events/InteractionEventTest.java b/core/applib/src/test/java/org/apache/isis/applib/events/InteractionEventTest.java
index dbcc1bf..e37afd3 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/events/InteractionEventTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/events/InteractionEventTest.java
@@ -24,21 +24,17 @@ import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThat;
-import org.jmock.Mockery;
-import org.jmock.integration.junit4.JMock;
-import org.jmock.integration.junit4.JUnit4Mockery;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
import org.apache.isis.applib.Identifier;
import org.apache.isis.applib.services.wrapper.events.InteractionEvent;
+import org.jmock.integration.junit4.JUnitRuleMockery;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
-@RunWith(JMock.class)
public class InteractionEventTest {
- @SuppressWarnings("unused")
- private final Mockery mockery = new JUnit4Mockery();
+ @Rule
+ public final JUnitRuleMockery context = new JUnitRuleMockery();
private InteractionEvent interactionEvent;
diff --git a/core/applib/src/test/java/org/apache/isis/applib/services/eventbus/AbstractDomainEvent_veto_Test.java b/core/applib/src/test/java/org/apache/isis/applib/services/eventbus/AbstractDomainEvent_veto_Test.java
index eba6338..2dec000 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/services/eventbus/AbstractDomainEvent_veto_Test.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/services/eventbus/AbstractDomainEvent_veto_Test.java
@@ -30,7 +30,7 @@ public class AbstractDomainEvent_veto_Test {
@Rule
public ExpectedException expectedException = ExpectedException.none();
- AbstractDomainEvent ev = new AbstractDomainEvent() { };
+ AbstractDomainEvent<?> ev = new AbstractDomainEvent<Object>() { private static final long serialVersionUID = 1L; };
@Test
public void hidden_phase_and_veto_using_null() throws Exception {
@@ -86,8 +86,7 @@ public class AbstractDomainEvent_veto_Test {
public void disable_phase_and_attempt_to_veto_with_null() throws Exception {
// given
- final AbstractDomainEvent ev = new AbstractDomainEvent() {
- };
+ final AbstractDomainEvent<?> ev = new AbstractDomainEvent<Object>() { private static final long serialVersionUID = 1L; };
ev.setEventPhase(AbstractDomainEvent.Phase.DISABLE);
// expect
diff --git a/core/applib/src/test/java/org/apache/isis/applib/services/i18n/TranslatableStringTest.java b/core/applib/src/test/java/org/apache/isis/applib/services/i18n/TranslatableStringTest.java
index 096977a..bca7593 100644
--- a/core/applib/src/test/java/org/apache/isis/applib/services/i18n/TranslatableStringTest.java
+++ b/core/applib/src/test/java/org/apache/isis/applib/services/i18n/TranslatableStringTest.java
@@ -18,15 +18,14 @@
*/
package org.apache.isis.applib.services.i18n;
-import java.util.Locale;
+import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertThat;
+
+import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2;
import org.jmock.Expectations;
import org.jmock.auto.Mock;
import org.junit.Rule;
import org.junit.Test;
-import org.apache.isis.core.unittestsupport.jmocking.JUnitRuleMockery2;
-
-import static org.hamcrest.CoreMatchers.is;
-import static org.junit.Assert.assertThat;
public class TranslatableStringTest {
@@ -89,7 +88,6 @@ public class TranslatableStringTest {
// given
final String simpleText = "text to translate";
final String someContext = "someContext";
- final Locale someLocale = Locale.CANADA; // any
final String translation = "the translation";
final TranslatableString ts = TranslatableString.tr(simpleText);
@@ -111,7 +109,6 @@ public class TranslatableStringTest {
final String singularText = "singular text to translate";
final String pluralText = "plural text to translate";
final String someContext = "someContext";
- final Locale someLocale = Locale.CANADA; // any
final String translation = "the translation";
final TranslatableString ts = TranslatableString.trn(singularText, pluralText, 1);
@@ -133,7 +130,6 @@ public class TranslatableStringTest {
final String singularText = "singular text to translate";
final String pluralText = "plural text to translate";
final String someContext = "someContext";
- final Locale someLocale = Locale.CANADA; // any
final String translation = "the translation";
final int number = 2; // != 1
diff --git a/core/applib/src/test/java/org/apache/isis/schema/utils/Roundtrip.java b/core/applib/src/test/java/org/apache/isis/schema/utils/Roundtrip.java
index 32d8bf1..2cfde93 100644
--- a/core/applib/src/test/java/org/apache/isis/schema/utils/Roundtrip.java
+++ b/core/applib/src/test/java/org/apache/isis/schema/utils/Roundtrip.java
@@ -83,7 +83,8 @@ public class Roundtrip {
// given
final Timestamp startedAt = new Timestamp(new Date().getTime());
- final Timestamp completedAt = new Timestamp(startedAt.getTime() + 1000);
+ @SuppressWarnings("unused")
+ final Timestamp completedAt = new Timestamp(startedAt.getTime() + 1000);
final ValueWithTypeDto returnDto = new ValueWithTypeDto();
returnDto.setType(ValueType.BOOLEAN);
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/commons/configbuilder/IsisConfigurationBuilder_PeekConfigurationTest.java b/core/metamodel/src/test/java/org/apache/isis/core/commons/configbuilder/IsisConfigurationBuilder_PeekConfigurationTest.java
index f2c24b2..36739b8 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/commons/configbuilder/IsisConfigurationBuilder_PeekConfigurationTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/commons/configbuilder/IsisConfigurationBuilder_PeekConfigurationTest.java
@@ -19,8 +19,6 @@
package org.apache.isis.core.commons.configbuilder;
-import java.util.Properties;
-
import org.apache.isis.core.commons.config.IsisConfiguration;
import junit.framework.TestCase;
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/commons/lang/ListUtilsTest_adjust.java b/core/metamodel/src/test/java/org/apache/isis/core/commons/lang/ListUtilsTest_adjust.java
index d0a6d3b..8342792 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/commons/lang/ListUtilsTest_adjust.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/commons/lang/ListUtilsTest_adjust.java
@@ -17,19 +17,14 @@
package org.apache.isis.core.commons.lang;
import static org.hamcrest.CoreMatchers.is;
-import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
-import java.util.Arrays;
-import java.util.Collections;
import java.util.List;
-import com.google.common.collect.Lists;
-
import org.junit.Test;
-import org.apache.isis.core.commons.lang.ListExtensions;
+import com.google.common.collect.Lists;
public class ListUtilsTest_adjust {
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/commons/lang/ListUtilsTest_mutableCopy.java b/core/metamodel/src/test/java/org/apache/isis/core/commons/lang/ListUtilsTest_mutableCopy.java
index 01df869..aaef729 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/commons/lang/ListUtilsTest_mutableCopy.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/commons/lang/ListUtilsTest_mutableCopy.java
@@ -22,15 +22,10 @@ import static org.hamcrest.CoreMatchers.nullValue;
import static org.junit.Assert.assertThat;
import java.util.Arrays;
-import java.util.Collections;
import java.util.List;
-import com.google.common.collect.Lists;
-
import org.junit.Test;
-import org.apache.isis.core.commons.lang.ListExtensions;
-
public class ListUtilsTest_mutableCopy {
@Test
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/adapter/oid/OidMarshallerTest_roundtripping.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/adapter/oid/OidMarshallerTest_roundtripping.java
index e861353..c98bd98 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/adapter/oid/OidMarshallerTest_roundtripping.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/adapter/oid/OidMarshallerTest_roundtripping.java
@@ -28,7 +28,8 @@ import static org.junit.Assert.assertThat;
public class OidMarshallerTest_roundtripping {
- private OidMarshaller oidMarshaller = OidMarshaller.INSTANCE;
+ @SuppressWarnings("unused")
+ private OidMarshaller oidMarshaller = OidMarshaller.INSTANCE;
@Test
public void rootOid_withNoVersion() {
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Field_Test.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Field_Test.java
index cda729a..0f61767 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Field_Test.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Field_Test.java
@@ -16,6 +16,7 @@ import org.apache.isis.applib.annotation.Publishing;
import static org.hamcrest.CoreMatchers.is;
+@SuppressWarnings("unused")
public class Annotations_getAnnotations_on_Field_Test {
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Parameter_Test.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Parameter_Test.java
index e2c1236..8f52dee 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Parameter_Test.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/Annotations_getAnnotations_on_Parameter_Test.java
@@ -13,6 +13,7 @@ import org.junit.Test;
import static org.hamcrest.CoreMatchers.is;
+@SuppressWarnings("unused")
public class Annotations_getAnnotations_on_Parameter_Test {
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/CollectionUtilsTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/CollectionUtilsTest.java
index f7c8067..c1f32c8 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/CollectionUtilsTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/CollectionUtilsTest.java
@@ -81,7 +81,8 @@ public class CollectionUtilsTest {
assertThat(o, is(not(nullValue())));
assertThat(collectionType.isAssignableFrom(o.getClass()), is(true));
- Collection copy = (Collection)o;
+ @SuppressWarnings("rawtypes")
+ Collection copy = (Collection)o;
assertThat(copy.size(), is(3));
}
--
To stop receiving notification emails like this one, please contact
ahuber@apache.org.