This is an automated email from the ASF dual-hosted git repository. ahuber pushed a commit to branch v2 in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/v2 by this push: new 9d9f122 ISIS-1976: cleaning up some raw types, unchecked casts and incomplete switches 9d9f122 is described below commit 9d9f1224a4e6fffe85bcacbcc1b57fe7b7d4ab76 Author: Andi Huber <ahu...@apache.org> AuthorDate: Thu Oct 4 18:40:23 2018 +0200 ISIS-1976: cleaning up some raw types, unchecked casts and incomplete switches Task-Url: https://issues.apache.org/jira/browse/ISIS-1976 --- .../core/metamodel/facets/DomainEventHelper.java | 70 ++++++++++------------ .../command/CommandFacetForActionAnnotation.java | 1 + .../invocation/ActionDomainEventFacetAbstract.java | 13 ++-- ...ctionInvocationFacetForDomainEventAbstract.java | 15 +---- .../PublishedActionFacetForActionAnnotation.java | 1 + ...okmarkPolicyFacetForActionLayoutAnnotation.java | 1 + .../DisabledFacetForCollectionAnnotation.java | 2 + ...ectionAddToFacetForDomainEventFromAbstract.java | 17 +++--- .../modify/CollectionDomainEventFacetAbstract.java | 19 ++---- ...nRemoveFromFacetForDomainEventFromAbstract.java | 19 +++--- .../NotPersistedFacetForCollectionAnnotation.java | 1 + .../layout/CollectionLayoutFacetFactory.java | 7 --- ...SortedByFacetForCollectionLayoutAnnotation.java | 4 +- .../layout/SortedByFacetForCollectionXml.java | 6 +- ...fecycleEventFacetForDomainObjectAnnotation.java | 8 +-- ...fecycleEventFacetForDomainObjectAnnotation.java | 8 +-- ...fecycleEventFacetForDomainObjectAnnotation.java | 8 +-- ...fecycleEventFacetForDomainObjectAnnotation.java | 8 +-- ...fecycleEventFacetForDomainObjectAnnotation.java | 9 +-- ...fecycleEventFacetForDomainObjectAnnotation.java | 9 +-- ...fecycleEventFacetForDomainObjectAnnotation.java | 9 +-- .../ImmutableFacetForDomainObjectAnnotation.java | 1 + ...ainObjectLayoutAnnotationUsingTitleUiEvent.java | 8 +-- .../DomainServiceLayoutFacetFactory.java | 11 ---- .../facets/object/grid/GridFacetDefault.java | 6 +- .../facets/object/grid/GridFacetFactory.java | 5 +- .../facets/object/parseable/ParserUtil.java | 16 +++-- .../value/vsp/ValueSemanticsProviderUtil.java | 16 +++-- .../MustSatisfySpecificationFacetAbstract.java | 3 +- ...dAdjustedFacetForParameterLayoutAnnotation.java | 1 + .../MandatoryFacetForParameterAnnotation.java | 1 + .../method/PropertyAutoCompleteFacetMethod.java | 4 -- .../command/CommandFacetForPropertyAnnotation.java | 1 + .../DisabledFacetForPropertyAnnotation.java | 1 + .../MandatoryFacetForPropertyAnnotation.java | 1 + .../modify/PropertyDomainEventFacetAbstract.java | 19 ++---- ...tySetterOrClearFacetForDomainEventAbstract.java | 21 +++---- ...ublishedPropertyFacetForPropertyAnnotation.java | 1 + ...romptStyleFacetForPropertyLayoutAnnotation.java | 2 +- .../propertylayout/PropertyLayoutFacetFactory.java | 2 - ...edAdjustedFacetForPropertyLayoutAnnotation.java | 1 + ...UnchangingFacetForPropertyLayoutAnnotation.java | 1 + .../isis/core/metamodel/layout/DeweyOrderSet.java | 4 +- .../specloader/InjectorMethodEvaluatorDefault.java | 5 +- .../classsubstitutor/ClassSubstitutor.java | 14 ++--- .../CollectionFacetOnStandaloneList.java | 4 +- .../isis/progmodels/dflt/JavaReflectorHelper.java | 5 +- 47 files changed, 152 insertions(+), 237 deletions(-) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/DomainEventHelper.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/DomainEventHelper.java index 5d3dd9d..50bb2fb 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/DomainEventHelper.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/DomainEventHelper.java @@ -19,6 +19,8 @@ package org.apache.isis.core.metamodel.facets; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; import java.util.Arrays; @@ -51,11 +53,11 @@ public class DomainEventHelper { } // -- postEventForAction, newActionDomainEvent - @SuppressWarnings({ "rawtypes" }) - public ActionDomainEvent<?> postEventForAction( + + public <S> ActionDomainEvent<S> postEventForAction( final AbstractDomainEvent.Phase phase, - final Class eventType, - final ActionDomainEvent<?> existingEvent, + final Class<? extends ActionDomainEvent<S>> eventType, + final ActionDomainEvent<S> existingEvent, final ObjectAction objectAction, final IdentifiedHolder identified, final ManagedObject targetAdapter, @@ -65,14 +67,14 @@ public class DomainEventHelper { final ObjectAdapter resultAdapter) { try { - final ActionDomainEvent<?> event; + final ActionDomainEvent<S> event; if (existingEvent != null && phase.isExecuted()) { // reuse existing event from the executing phase event = existingEvent; } else { // all other phases, create a new event - final Object source = ObjectAdapter.Util.unwrapPojo(targetAdapter); + final S source = uncheckedCast(ObjectAdapter.Util.unwrapPojo(targetAdapter)); final Object[] arguments = ObjectAdapter.Util.unwrapPojoArray(argumentAdapters); final Identifier identifier = identified.getIdentifier(); event = newActionDomainEvent(eventType, identifier, source, arguments); @@ -115,11 +117,6 @@ public class DomainEventHelper { } } -// private static <T> List<T> immutableList(final Iterable<T> iterable) { -// return Collections.unmodifiableList(_Lists.newArrayList(iterable)); -// } - - @SuppressWarnings("unchecked") static <S> ActionDomainEvent<S> newActionDomainEvent( final Class<? extends ActionDomainEvent<S>> type, final Identifier identifier, @@ -133,7 +130,7 @@ public class DomainEventHelper { final Class<?>[] parameterTypes = constructor.getParameterTypes(); if(parameterTypes.length == 0) { final Object event = constructor.newInstance(); - final ActionDomainEvent<S> ade = (ActionDomainEvent<S>) event; + final ActionDomainEvent<S> ade = uncheckedCast(event); ade.setSource(source); ade.setIdentifier(identifier); @@ -158,7 +155,7 @@ public class DomainEventHelper { continue; } final Object event = constructor.newInstance(source, identifier, arguments); - return (ActionDomainEvent<S>) event; + return uncheckedCast(event); } throw new NoSuchMethodException(type.getName()+".<init>(? super " + source.getClass().getName() + ", " + Identifier.class.getName() + ", [Ljava.lang.Object;)"); } @@ -172,18 +169,18 @@ public class DomainEventHelper { // -- postEventForProperty, newPropertyInteraction - public PropertyDomainEvent<?, ?> postEventForProperty( + public <S, T> PropertyDomainEvent<S, T> postEventForProperty( final AbstractDomainEvent.Phase phase, - final Class eventType, - final PropertyDomainEvent<?, ?> existingEvent, + final Class<? extends PropertyDomainEvent<S, T>> eventType, + final PropertyDomainEvent<S, T> existingEvent, final IdentifiedHolder identified, final ManagedObject targetAdapter, - final Object oldValue, - final Object newValue) { + final T oldValue, + final T newValue) { try { - final PropertyDomainEvent<?, ?> event; - final Object source = ObjectAdapter.Util.unwrapPojo(targetAdapter); + final PropertyDomainEvent<S, T> event; + final S source = uncheckedCast(ObjectAdapter.Util.unwrapPojo(targetAdapter)); final Identifier identifier = identified.getIdentifier(); if(existingEvent != null && phase.isExecuted()) { @@ -206,11 +203,10 @@ public class DomainEventHelper { } } - private static <S,T> void setEventNewValue(PropertyDomainEvent<S, T> event, Object newValue) { - event.setNewValue((T) newValue); + private static <S,T> void setEventNewValue(PropertyDomainEvent<S, T> event, T newValue) { + event.setNewValue(newValue); } - @SuppressWarnings("unchecked") static <S,T> PropertyDomainEvent<S,T> newPropertyDomainEvent( final Class<? extends PropertyDomainEvent<S, T>> type, final Identifier identifier, @@ -225,7 +221,7 @@ public class DomainEventHelper { final Class<?>[] parameterTypes = constructor.getParameterTypes(); if(parameterTypes.length == 0) { final Object event = constructor.newInstance(); - final PropertyDomainEvent<S, T> pde = (PropertyDomainEvent<S, T>) event; + final PropertyDomainEvent<S, T> pde = uncheckedCast(event); pde.setSource(source); pde.setIdentifier(identifier); pde.setOldValue(oldValue); @@ -253,7 +249,7 @@ public class DomainEventHelper { continue; } final Object event = constructor.newInstance(source, identifier, oldValue, newValue); - return (PropertyDomainEvent<S, T>) event; + return uncheckedCast(event); } throw new NoSuchMethodException(type.getName()+".<init>(? super " + source.getClass().getName() + ", " + Identifier.class.getName() + ", java.lang.Object, java.lang.Object)"); @@ -262,22 +258,22 @@ public class DomainEventHelper { // -- postEventForCollection, newCollectionDomainEvent - public CollectionDomainEvent<?, ?> postEventForCollection( + public <S, T> CollectionDomainEvent<S, T> postEventForCollection( AbstractDomainEvent.Phase phase, - final Class eventType, - final CollectionDomainEvent<?, ?> existingEvent, + final Class<? extends CollectionDomainEvent<S, T>> eventType, + final CollectionDomainEvent<S, T> existingEvent, final IdentifiedHolder identified, final ManagedObject targetAdapter, final CollectionDomainEvent.Of of, - final Object reference) { + final T reference) { try { - final CollectionDomainEvent<?, ?> event; + final CollectionDomainEvent<S, T> event; if (existingEvent != null && phase.isExecuted()) { // reuse existing event from the executing phase event = existingEvent; } else { // all other phases, create a new event - final Object source = ObjectAdapter.Util.unwrapPojo(targetAdapter); + final S source = uncheckedCast(ObjectAdapter.Util.unwrapPojo(targetAdapter)); final Identifier identifier = identified.getIdentifier(); event = newCollectionDomainEvent(eventType, phase, identifier, source, of, reference); } @@ -291,7 +287,6 @@ public class DomainEventHelper { } } - @SuppressWarnings("unchecked") <S, T> CollectionDomainEvent<S, T> newCollectionDomainEvent( final Class<? extends CollectionDomainEvent<S, T>> type, final AbstractDomainEvent.Phase phase, @@ -309,7 +304,7 @@ public class DomainEventHelper { final Class<?>[] parameterTypes = constructor.getParameterTypes(); if(parameterTypes.length ==0) { final Object event = constructor.newInstance(); - final CollectionDomainEvent<S, T> cde = (CollectionDomainEvent<S, T>) event; + final CollectionDomainEvent<S, T> cde = uncheckedCast(event); cde.setSource(source); cde.setIdentifier(identifier); @@ -338,7 +333,7 @@ public class DomainEventHelper { continue; } final Object event = constructor.newInstance(source, identifier, of, value); - return (CollectionDomainEvent<S, T>) event; + return uncheckedCast(event); } if(phase == AbstractDomainEvent.Phase.EXECUTED) { @@ -360,7 +355,7 @@ public class DomainEventHelper { continue; } final Object event = constructor.newInstance(source, identifier, value); - return (CollectionDomainEvent<S, T>) event; + return uncheckedCast(event); } } else if(of == CollectionDomainEvent.Of.REMOVE_FROM) { // support for @PostsCollectionRemovedFrom annotation: @@ -381,16 +376,13 @@ public class DomainEventHelper { } final Object event = constructor.newInstance( source, identifier, value); - return (CollectionDomainEvent<S, T>) event; + return uncheckedCast(event); } } } throw new NoSuchMethodException(type.getName()+".<init>(? super " + source.getClass().getName() + ", " + Identifier.class.getName() + ", java.lang.Object)"); } - - - // -- eventBusService private EventBusService getEventBusService() { diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/command/CommandFacetForActionAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/command/CommandFacetForActionAnnotation.java index c873ac4..7ba09d2 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/command/CommandFacetForActionAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/command/CommandFacetForActionAnnotation.java @@ -77,6 +77,7 @@ public class CommandFacetForActionAnnotation extends CommandFacetAbstract { case ENABLED: return new CommandFacetForActionAnnotation( persistence, executeIn, Enablement.ENABLED, processor, holder, servicesInjector); + default: } throw new IllegalStateException("command '" + command + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionDomainEventFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionDomainEventFacetAbstract.java index 5fcb378..6f2a34f 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionDomainEventFacetAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionDomainEventFacetAbstract.java @@ -78,7 +78,7 @@ extends SingleClassValueFacetAbstract implements ActionDomainEventFacet { final ActionDomainEvent<?> event = domainEventHelper.postEventForAction( AbstractDomainEvent.Phase.HIDE, - eventType(), null, + getEventType(), null, actionFrom(ic), getIdentified(), ic.getTarget(), ic.getMixedIn(), argumentAdaptersFrom(ic), null, @@ -95,7 +95,7 @@ extends SingleClassValueFacetAbstract implements ActionDomainEventFacet { final ActionDomainEvent<?> event = domainEventHelper.postEventForAction( AbstractDomainEvent.Phase.DISABLE, - eventType(), null, + getEventType(), null, actionFrom(ic), getIdentified(), ic.getTarget(), ic.getMixedIn(), argumentAdaptersFrom(ic), null, @@ -138,7 +138,7 @@ extends SingleClassValueFacetAbstract implements ActionDomainEventFacet { final ActionDomainEvent<?> event = domainEventHelper.postEventForAction( AbstractDomainEvent.Phase.VALIDATE, - eventType(), null, + getEventType(), null, actionFrom(ic), getIdentified(), ic.getTarget(), ic.getMixedIn(), aic.getArgs(), null, @@ -154,13 +154,8 @@ extends SingleClassValueFacetAbstract implements ActionDomainEventFacet { return null; } - protected Class<?> eventType() { - return value(); - } - public Class<? extends ActionDomainEvent<?>> getEventType() { - //noinspection unchecked - return _Casts.uncheckedCast(eventType()); + return _Casts.uncheckedCast(value()); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java index a855d4e..39bc843 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/ActionInvocationFacetForDomainEventAbstract.java @@ -214,6 +214,7 @@ implements ImperativeFacet { final Interaction.MemberExecutor<Interaction.ActionInvocation> callable = new Interaction.MemberExecutor<Interaction.ActionInvocation>() { + @SuppressWarnings("rawtypes") @Override public Object execute(final Interaction.ActionInvocation currentExecution) { @@ -238,6 +239,7 @@ implements ImperativeFacet { // ... post the executing event + final ActionDomainEvent<?> event = domainEventHelper.postEventForAction( AbstractDomainEvent.Phase.EXECUTING, @@ -252,14 +254,12 @@ implements ImperativeFacet { // invoke method final Object resultPojo = invokeMethodElseFromCache(targetAdapter, argumentAdapters); - final ObjectAdapter resultAdapterPossiblyCloned = cloneIfViewModelCloneable(resultPojo, mixinElseRegularAdapter); - // ... post the executed event domainEventHelper.postEventForAction( AbstractDomainEvent.Phase.EXECUTED, - eventType, verify(event), + getEventType(), (ActionDomainEvent)event, owningAction, owningAction, targetAdapter, mixedInAdapter, argumentAdapters, command, resultAdapterPossiblyCloned); @@ -514,15 +514,6 @@ implements ImperativeFacet { } } - - /** - * Optional hook, previously to allow facet implementations of (now removed) annotations to to discard the event if the domain event - * was incompatible. Now a no-op I think. - */ - protected ActionDomainEvent<?> verify(final ActionDomainEvent<?> event) { - return event; - } - /** * For testing only. */ diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/publishing/PublishedActionFacetForActionAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/publishing/PublishedActionFacetForActionAnnotation.java index 13fd010..96cb186 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/publishing/PublishedActionFacetForActionAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/publishing/PublishedActionFacetForActionAnnotation.java @@ -61,6 +61,7 @@ public class PublishedActionFacetForActionAnnotation extends PublishedActionFace return null; case ENABLED: return new PublishedActionFacetForActionAnnotation(holder); + default: } throw new IllegalStateException("publishing '" + publishing + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/layout/BookmarkPolicyFacetForActionLayoutAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/layout/BookmarkPolicyFacetForActionLayoutAnnotation.java index 7e52e4e..569d3dc 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/layout/BookmarkPolicyFacetForActionLayoutAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/layout/BookmarkPolicyFacetForActionLayoutAnnotation.java @@ -44,6 +44,7 @@ public class BookmarkPolicyFacetForActionLayoutAnnotation extends BookmarkPolicy return new BookmarkPolicyFacetForActionLayoutAnnotation(bookmarkPolicy, holder); case NEVER: return null; + default: } throw new IllegalStateException("bookmarkPolicy '" + bookmarkPolicy + "' not recognised"); } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/disabled/DisabledFacetForCollectionAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/disabled/DisabledFacetForCollectionAnnotation.java index a229f86..33d2551 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/disabled/DisabledFacetForCollectionAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/disabled/DisabledFacetForCollectionAnnotation.java @@ -55,6 +55,8 @@ public class DisabledFacetForCollectionAnnotation extends DisabledFacetAbstractI case ENABLED: return null; + default: + break; } throw new IllegalStateException("editing '" + editing + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionAddToFacetForDomainEventFromAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionAddToFacetForDomainEventFromAbstract.java index 4a32bb6..7059ea5 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionAddToFacetForDomainEventFromAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionAddToFacetForDomainEventFromAbstract.java @@ -19,6 +19,8 @@ package org.apache.isis.core.metamodel.facets.collections.collection.modify; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import java.util.Set; import org.apache.isis.applib.events.domain.AbstractDomainEvent; @@ -88,10 +90,11 @@ implements CollectionAddToFacet { // execute the add wrapped between the executing and executed events ... // ... post the executing event + final CollectionDomainEvent<?, ?> event = domainEventHelper.postEventForCollection( AbstractDomainEvent.Phase.EXECUTING, - eventType(), null, + getEventType(), null, getIdentified(), targetAdapter, CollectionDomainEvent.Of.ADD_TO, referencedObject); @@ -102,21 +105,15 @@ implements CollectionAddToFacet { // ... post the executed event domainEventHelper.postEventForCollection( AbstractDomainEvent.Phase.EXECUTED, - value(), verify(event), + getEventType(), uncheckedCast((CollectionDomainEvent<?, ?>)event), getIdentified(), targetAdapter, CollectionDomainEvent.Of.ADD_TO, referencedObject); } - private Class<? extends CollectionDomainEvent<?, ?>> eventType() { - return value(); + public <S, T> Class<? extends CollectionDomainEvent<S, T>> getEventType() { + return uncheckedCast(value()); } - /** - * Optional hook to allow the facet implementation of now-deleted annotations to discard the event if of a different type; now a no-op, I think. - */ - protected CollectionDomainEvent<?, ?> verify(CollectionDomainEvent<?, ?> event) { - return event; - } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionDomainEventFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionDomainEventFacetAbstract.java index b430213..ead0ca5 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionDomainEventFacetAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionDomainEventFacetAbstract.java @@ -26,6 +26,7 @@ import org.apache.isis.applib.services.i18n.TranslationService; import org.apache.isis.applib.services.wrapper.events.UsabilityEvent; import org.apache.isis.applib.services.wrapper.events.ValidityEvent; import org.apache.isis.applib.services.wrapper.events.VisibilityEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facetapi.IdentifiedHolder; import org.apache.isis.core.metamodel.facets.DomainEventHelper; @@ -64,7 +65,7 @@ public abstract class CollectionDomainEventFacetAbstract extends SingleClassValu final CollectionDomainEvent<?, ?> event = domainEventHelper.postEventForCollection( AbstractDomainEvent.Phase.HIDE, - eventType(), null, + getEventType(), null, getIdentified(), ic.getTarget(), CollectionDomainEvent.Of.ACCESS, null); @@ -80,7 +81,7 @@ public abstract class CollectionDomainEventFacetAbstract extends SingleClassValu final CollectionDomainEvent<?, ?> event = domainEventHelper.postEventForCollection( AbstractDomainEvent.Phase.DISABLE, - eventType(), null, + getEventType(), null, getIdentified(), ic.getTarget(), CollectionDomainEvent.Of.ACCESS, null); @@ -108,7 +109,7 @@ public abstract class CollectionDomainEventFacetAbstract extends SingleClassValu final CollectionDomainEvent<?, ?> event = domainEventHelper.postEventForCollection( AbstractDomainEvent.Phase.VALIDATE, - eventType(), null, + getEventType(), null, getIdentified(), ic.getTarget(), of, proposed); @@ -123,16 +124,8 @@ public abstract class CollectionDomainEventFacetAbstract extends SingleClassValu return null; } - private Class<?> eventType() { - return value(); - } - - /** - * For testing. - */ - public Class<? extends CollectionDomainEvent<?, ?>> getEventType() { - Class eventType = eventType(); - return eventType; + public <S, T> Class<? extends CollectionDomainEvent<S, T>> getEventType() { + return _Casts.uncheckedCast(value()); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionRemoveFromFacetForDomainEventFromAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionRemoveFromFacetForDomainEventFromAbstract.java index 9d5a9eb..d38bb50 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionRemoveFromFacetForDomainEventFromAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/modify/CollectionRemoveFromFacetForDomainEventFromAbstract.java @@ -19,10 +19,13 @@ package org.apache.isis.core.metamodel.facets.collections.collection.modify; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import java.util.Collection; import org.apache.isis.applib.events.domain.AbstractDomainEvent; import org.apache.isis.applib.events.domain.CollectionDomainEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.adapter.ObjectAdapter; import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy; import org.apache.isis.core.metamodel.facetapi.Facet; @@ -90,7 +93,7 @@ implements CollectionRemoveFromFacet { final CollectionDomainEvent<?, ?> event = domainEventHelper.postEventForCollection( AbstractDomainEvent.Phase.EXECUTING, - eventType(), null, + getEventType(), null, getIdentified(), targetAdapter, CollectionDomainEvent.Of.REMOVE_FROM, referencedObject); @@ -101,22 +104,14 @@ implements CollectionRemoveFromFacet { // ... and post the executed event domainEventHelper.postEventForCollection( AbstractDomainEvent.Phase.EXECUTED, - value(), verify(event), + getEventType(), uncheckedCast((CollectionDomainEvent<?, ?>)event), getIdentified(), targetAdapter, CollectionDomainEvent.Of.REMOVE_FROM, referencedObject); } - private Class<? extends CollectionDomainEvent<?, ?>> eventType() { - return value(); - } - - /** - * Optional hook to allow the facet implementation for now removed annotations - * to discard the event if of a different type. Now a no-op, I think. - */ - protected CollectionDomainEvent<?, ?> verify(CollectionDomainEvent<?, ?> event) { - return event; + public <S, T> Class<? extends CollectionDomainEvent<S, T>> getEventType() { + return _Casts.uncheckedCast(value()); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/notpersisted/NotPersistedFacetForCollectionAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/notpersisted/NotPersistedFacetForCollectionAnnotation.java index b016553..be0856c 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/notpersisted/NotPersistedFacetForCollectionAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/collection/notpersisted/NotPersistedFacetForCollectionAnnotation.java @@ -47,6 +47,7 @@ public class NotPersistedFacetForCollectionAnnotation extends NotPersistedFacetA return null; case EXCLUDED: return new NotPersistedFacetForCollectionAnnotation(holder); + default: } throw new IllegalStateException("mementoSerialization '" + mementoSerialization + "' not recognized"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/CollectionLayoutFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/CollectionLayoutFacetFactory.java index f47663c..2bcb1af 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/CollectionLayoutFacetFactory.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/CollectionLayoutFacetFactory.java @@ -19,7 +19,6 @@ package org.apache.isis.core.metamodel.facets.collections.layout; import java.util.List; -import java.util.Properties; import org.apache.isis.applib.annotation.CollectionLayout; import org.apache.isis.core.metamodel.facetapi.FacetHolder; @@ -48,7 +47,6 @@ public class CollectionLayoutFacetFactory extends FacetFactoryAbstract implement final FacetHolder holder = processMethodContext.getFacetHolder(); - Properties properties = null; final List<CollectionLayout> collectionLayouts = Annotations.getAnnotations(processMethodContext.getMethod(), CollectionLayout.class); @@ -93,11 +91,6 @@ public class CollectionLayoutFacetFactory extends FacetFactoryAbstract implement @Override public void process(ProcessContributeeMemberContext processMemberContext) { - final FacetHolder holder = processMemberContext.getFacetHolder(); - - Properties properties = null; - - // cssClass CssClassFacet cssClassFacet = null; FacetUtil.addFacet(cssClassFacet); diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/SortedByFacetForCollectionLayoutAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/SortedByFacetForCollectionLayoutAnnotation.java index 47e457b..3df9063 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/SortedByFacetForCollectionLayoutAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/SortedByFacetForCollectionLayoutAnnotation.java @@ -19,6 +19,8 @@ package org.apache.isis.core.metamodel.facets.collections.layout; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import java.util.Comparator; import java.util.List; @@ -39,7 +41,7 @@ public class SortedByFacetForCollectionLayoutAnnotation extends SortedByFacetAbs .filter(Comparator.class::isAssignableFrom) .findFirst() .map(sortedBy -> { - Class<? extends Comparator<?>> sortedByForceGenerics = sortedBy; + Class<? extends Comparator<?>> sortedByForceGenerics = uncheckedCast(sortedBy); return new SortedByFacetForCollectionLayoutAnnotation(sortedByForceGenerics, holder); }) .orElse(null); diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/SortedByFacetForCollectionXml.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/SortedByFacetForCollectionXml.java index b030736..5816f3f 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/SortedByFacetForCollectionXml.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/layout/SortedByFacetForCollectionXml.java @@ -19,6 +19,8 @@ package org.apache.isis.core.metamodel.facets.collections.layout; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import java.util.Comparator; import org.apache.isis.applib.layout.component.CollectionLayoutData; @@ -37,12 +39,12 @@ public class SortedByFacetForCollectionXml extends SortedByFacetAbstract { if (sortedBy == null) { return null; } - final Class sortedByClass = ClassUtil.forName(sortedBy); + final Class<?> sortedByClass = ClassUtil.forName(sortedBy); if(sortedByClass == Comparator.class) { return null; } - return sortedByClass != null ? new SortedByFacetForCollectionXml(sortedByClass, holder) : null; + return sortedByClass != null ? new SortedByFacetForCollectionXml(uncheckedCast(sortedByClass), holder) : null; } private SortedByFacetForCollectionXml(Class<? extends Comparator<?>> sortedBy, FacetHolder holder) { diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/CreatedLifecycleEventFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/CreatedLifecycleEventFacetForDomainObjectAnnotation.java index bf3af3d..015be1e 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/CreatedLifecycleEventFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/CreatedLifecycleEventFacetForDomainObjectAnnotation.java @@ -21,6 +21,7 @@ package org.apache.isis.core.metamodel.facets.object.callbacks; import org.apache.isis.applib.events.lifecycle.AbstractLifecycleEvent; import org.apache.isis.applib.events.lifecycle.ObjectCreatedEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facets.SingleClassValueFacetAbstract; import org.apache.isis.core.metamodel.specloader.SpecificationLoader; @@ -40,11 +41,8 @@ public class CreatedLifecycleEventFacetForDomainObjectAnnotation extends SingleC @Override public Class<? extends AbstractLifecycleEvent<?>> getEventType() { - //noinspection unchecked - return eventType(); + return _Casts.uncheckedCast(value()); } - Class eventType() { - return value(); - } + } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/LoadedLifecycleEventFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/LoadedLifecycleEventFacetForDomainObjectAnnotation.java index a0c15ff..7784e03 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/LoadedLifecycleEventFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/LoadedLifecycleEventFacetForDomainObjectAnnotation.java @@ -20,6 +20,7 @@ package org.apache.isis.core.metamodel.facets.object.callbacks; import org.apache.isis.applib.events.lifecycle.ObjectLoadedEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facets.SingleClassValueFacetAbstract; import org.apache.isis.core.metamodel.specloader.SpecificationLoader; @@ -39,12 +40,7 @@ public class LoadedLifecycleEventFacetForDomainObjectAnnotation extends SingleCl @Override public Class<? extends ObjectLoadedEvent<?>> getEventType() { - //noinspection unchecked - return eventType(); - } - - Class eventType() { - return value(); + return _Casts.uncheckedCast(value()); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/PersistedLifecycleEventFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/PersistedLifecycleEventFacetForDomainObjectAnnotation.java index aef38e6..f8c4ea4 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/PersistedLifecycleEventFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/PersistedLifecycleEventFacetForDomainObjectAnnotation.java @@ -20,6 +20,7 @@ package org.apache.isis.core.metamodel.facets.object.callbacks; import org.apache.isis.applib.events.lifecycle.ObjectPersistedEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facets.SingleClassValueFacetAbstract; import org.apache.isis.core.metamodel.specloader.SpecificationLoader; @@ -39,12 +40,7 @@ public class PersistedLifecycleEventFacetForDomainObjectAnnotation extends Singl @Override public Class<? extends ObjectPersistedEvent<?>> getEventType() { - //noinspection unchecked - return eventType(); - } - - Class eventType() { - return value(); + return _Casts.uncheckedCast(value()); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/PersistingLifecycleEventFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/PersistingLifecycleEventFacetForDomainObjectAnnotation.java index 14a9163..5adfb1f 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/PersistingLifecycleEventFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/PersistingLifecycleEventFacetForDomainObjectAnnotation.java @@ -20,6 +20,7 @@ package org.apache.isis.core.metamodel.facets.object.callbacks; import org.apache.isis.applib.events.lifecycle.ObjectPersistingEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facets.SingleClassValueFacetAbstract; import org.apache.isis.core.metamodel.specloader.SpecificationLoader; @@ -39,12 +40,7 @@ public class PersistingLifecycleEventFacetForDomainObjectAnnotation extends Sing @Override public Class<? extends ObjectPersistingEvent<?>> getEventType() { - //noinspection unchecked - return eventType(); - } - - Class eventType() { - return value(); + return _Casts.uncheckedCast(value()); } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovingLifecycleEventFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovingLifecycleEventFacetForDomainObjectAnnotation.java index bbbd0eb..c199589 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovingLifecycleEventFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovingLifecycleEventFacetForDomainObjectAnnotation.java @@ -20,6 +20,7 @@ package org.apache.isis.core.metamodel.facets.object.callbacks; import org.apache.isis.applib.events.lifecycle.ObjectRemovingEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.Facet; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facets.SingleClassValueFacetAbstract; @@ -40,13 +41,7 @@ public class RemovingLifecycleEventFacetForDomainObjectAnnotation extends Single @Override public Class<? extends ObjectRemovingEvent<?>> getEventType() { - //noinspection unchecked - return eventType(); + return _Casts.uncheckedCast(value()); } - Class eventType() { - return value(); - } - - } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/UpdatedLifecycleEventFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/UpdatedLifecycleEventFacetForDomainObjectAnnotation.java index f12d4b2..e739ef4 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/UpdatedLifecycleEventFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/UpdatedLifecycleEventFacetForDomainObjectAnnotation.java @@ -20,6 +20,7 @@ package org.apache.isis.core.metamodel.facets.object.callbacks; import org.apache.isis.applib.events.lifecycle.ObjectUpdatedEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.Facet; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facets.SingleClassValueFacetAbstract; @@ -40,13 +41,7 @@ public class UpdatedLifecycleEventFacetForDomainObjectAnnotation extends SingleC @Override public Class<? extends ObjectUpdatedEvent<?>> getEventType() { - //noinspection unchecked - return eventType(); + return _Casts.uncheckedCast(value()); } - Class eventType() { - return value(); - } - - } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/UpdatingLifecycleEventFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/UpdatingLifecycleEventFacetForDomainObjectAnnotation.java index cb17e25..8d2d400 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/UpdatingLifecycleEventFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/UpdatingLifecycleEventFacetForDomainObjectAnnotation.java @@ -20,6 +20,7 @@ package org.apache.isis.core.metamodel.facets.object.callbacks; import org.apache.isis.applib.events.lifecycle.ObjectUpdatingEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.Facet; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facets.SingleClassValueFacetAbstract; @@ -40,13 +41,7 @@ public class UpdatingLifecycleEventFacetForDomainObjectAnnotation extends Single @Override public Class<? extends ObjectUpdatingEvent<?>> getEventType() { - //noinspection unchecked - return eventType(); + return _Casts.uncheckedCast(value()); } - Class eventType() { - return value(); - } - - } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/editing/ImmutableFacetForDomainObjectAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/editing/ImmutableFacetForDomainObjectAnnotation.java index c5bd46b..5f7a2b6 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/editing/ImmutableFacetForDomainObjectAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobject/editing/ImmutableFacetForDomainObjectAnnotation.java @@ -63,6 +63,7 @@ public class ImmutableFacetForDomainObjectAnnotation extends ImmutableFacetAbstr return new ImmutableFacetForDomainObjectAnnotation(disabledReason, holder); case ENABLED: return null; + default: } throw new IllegalStateException("domainObject.editing() not recognised, is " + domainObject.editing()); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobjectlayout/TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobjectlayout/TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.java index 39e8533..e8449c3 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobjectlayout/TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainobjectlayout/TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.java @@ -21,15 +21,13 @@ package org.apache.isis.core.metamodel.facets.object.domainobjectlayout; import java.util.List; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import org.apache.isis.applib.NonRecoverableException; import org.apache.isis.applib.annotation.DomainObjectLayout; import org.apache.isis.applib.events.ui.TitleUiEvent; import org.apache.isis.applib.services.eventbus.EventBusService; import org.apache.isis.applib.services.i18n.TranslatableString; import org.apache.isis.applib.services.i18n.TranslationService; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.commons.config.IsisConfiguration; import org.apache.isis.core.metamodel.facetapi.Facet; import org.apache.isis.core.metamodel.facetapi.FacetHolder; @@ -42,7 +40,7 @@ import org.apache.isis.core.metamodel.util.EventUtil; public class TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent extends TitleFacetAbstract { - private static final Logger LOG = LoggerFactory.getLogger(TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.class); + //private static final Logger LOG = LoggerFactory.getLogger(TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent.class); public static Facet create( final List<DomainObjectLayout> domainObjectLayouts, @@ -119,7 +117,7 @@ public class TitleFacetViaDomainObjectLayoutAnnotationUsingTitleUiEvent extends private TitleUiEvent<Object> newTitleUiEvent(final Object domainObject) { try { - final TitleUiEvent<Object> titleUiEvent = (TitleUiEvent<Object>) titleUiEventClass.newInstance(); + final TitleUiEvent<Object> titleUiEvent = _Casts.uncheckedCast(titleUiEventClass.newInstance()); titleUiEvent.setSource(domainObject); return titleUiEvent; } catch (InstantiationException | IllegalAccessException ex) { diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainservicelayout/DomainServiceLayoutFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainservicelayout/DomainServiceLayoutFacetFactory.java index 83d5418..3ddd54e 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainservicelayout/DomainServiceLayoutFacetFactory.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/domainservicelayout/DomainServiceLayoutFacetFactory.java @@ -30,8 +30,6 @@ import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract; import org.apache.isis.core.metamodel.facets.object.domainservice.DomainServiceMenuOrder; import org.apache.isis.core.metamodel.facets.object.domainservicelayout.annotation.DomainServiceLayoutFacetAnnotation; - - public class DomainServiceLayoutFacetFactory extends FacetFactoryAbstract { public DomainServiceLayoutFacetFactory() { @@ -78,13 +76,4 @@ public class DomainServiceLayoutFacetFactory extends FacetFactoryAbstract { FacetUtil.addFacet(NamedFacetForDomainServiceLayoutAnnotation.create(domainServiceLayouts, facetHolder)); } - private static String coalesce(final String... reasons) { - for (final String reason : reasons) { - if(reason != null) { - return reason; - } - } - return null; - } - } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/grid/GridFacetDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/grid/GridFacetDefault.java index c5c38bd..0a953ce 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/grid/GridFacetDefault.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/grid/GridFacetDefault.java @@ -18,9 +18,6 @@ */ package org.apache.isis.core.metamodel.facets.object.grid; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import org.apache.isis.applib.layout.grid.Grid; import org.apache.isis.applib.services.grid.GridService; import org.apache.isis.core.metamodel.facetapi.Facet; @@ -32,8 +29,7 @@ public class GridFacetDefault extends FacetAbstract implements GridFacet { - private static final Logger LOG = LoggerFactory.getLogger(GridFacetDefault.class); - + //private static final Logger LOG = LoggerFactory.getLogger(GridFacetDefault.class); public static Class<? extends Facet> type() { return GridFacet.class; diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/grid/GridFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/grid/GridFacetFactory.java index aa3e52f..9179974 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/grid/GridFacetFactory.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/grid/GridFacetFactory.java @@ -16,9 +16,6 @@ * under the License. */ package org.apache.isis.core.metamodel.facets.object.grid; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import org.apache.isis.applib.services.grid.GridService; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facetapi.FacetUtil; @@ -27,7 +24,7 @@ import org.apache.isis.core.metamodel.facets.FacetFactoryAbstract; public class GridFacetFactory extends FacetFactoryAbstract { - private static final Logger LOG = LoggerFactory.getLogger(GridFacetFactory.class); + //private static final Logger LOG = LoggerFactory.getLogger(GridFacetFactory.class); public GridFacetFactory() { super(FeatureType.OBJECTS_ONLY); diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/parseable/ParserUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/parseable/ParserUtil.java index 50d0939..7fb3034 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/parseable/ParserUtil.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/parseable/ParserUtil.java @@ -19,6 +19,8 @@ package org.apache.isis.core.metamodel.facets.object.parseable; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import org.apache.isis.applib.adapters.Parser; import org.apache.isis.commons.internal.base._Strings; import org.apache.isis.core.commons.config.IsisConfiguration; @@ -39,11 +41,17 @@ public final class ParserUtil { return !_Strings.isNullOrEmpty(parserName) ? parserName : null; } - @SuppressWarnings("unchecked") public static Class<? extends Parser<?>> parserOrNull(final Class<?> candidateClass, final String classCandidateName) { - @SuppressWarnings("rawtypes") - final Class type = candidateClass != null ? ClassUtil.implementingClassOrNull(candidateClass.getName(), Parser.class, FacetHolder.class) : null; - return type != null ? type : (Class)ClassUtil.implementingClassOrNull(classCandidateName, Parser.class, FacetHolder.class); + + final Class<? extends Parser<?>> type = candidateClass != null + ? uncheckedCast(ClassUtil.implementingClassOrNull( + candidateClass.getName(), Parser.class, FacetHolder.class)) + : null; + + return type != null + ? type + : uncheckedCast(ClassUtil.implementingClassOrNull( + classCandidateName, Parser.class, FacetHolder.class)); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/value/vsp/ValueSemanticsProviderUtil.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/value/vsp/ValueSemanticsProviderUtil.java index 154d886..48dd3a9 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/value/vsp/ValueSemanticsProviderUtil.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/value/vsp/ValueSemanticsProviderUtil.java @@ -19,6 +19,8 @@ package org.apache.isis.core.metamodel.facets.object.value.vsp; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import org.apache.isis.applib.adapters.ValueSemanticsProvider; import org.apache.isis.commons.internal.base._Strings; import org.apache.isis.core.commons.config.IsisConfiguration; @@ -39,11 +41,17 @@ public final class ValueSemanticsProviderUtil { return !_Strings.isNullOrEmpty(semanticsProviderName) ? semanticsProviderName : null; } - @SuppressWarnings("unchecked") + public static Class<? extends ValueSemanticsProvider<?>> valueSemanticsProviderOrNull(final Class<?> candidateClass, final String classCandidateName) { - @SuppressWarnings("rawtypes") - final Class clazz = candidateClass != null ? ClassUtil.implementingClassOrNull(candidateClass.getName(), ValueSemanticsProvider.class, FacetHolder.class) : null; - return clazz != null ? clazz : (Class)ClassUtil.implementingClassOrNull(classCandidateName, ValueSemanticsProvider.class, FacetHolder.class); + + final Class<? extends ValueSemanticsProvider<?>> clazz = candidateClass != null + ? uncheckedCast(ClassUtil.implementingClassOrNull( + candidateClass.getName(), ValueSemanticsProvider.class, FacetHolder.class)) + : null; + return clazz != null + ? clazz + : uncheckedCast(ClassUtil.implementingClassOrNull( + classCandidateName, ValueSemanticsProvider.class, FacetHolder.class)); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/objectvalue/mustsatisfyspec/MustSatisfySpecificationFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/objectvalue/mustsatisfyspec/MustSatisfySpecificationFacetAbstract.java index 76c300d..70b9b62 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/objectvalue/mustsatisfyspec/MustSatisfySpecificationFacetAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/objectvalue/mustsatisfyspec/MustSatisfySpecificationFacetAbstract.java @@ -67,8 +67,7 @@ public abstract class MustSatisfySpecificationFacetAbstract extends FacetAbstrac specificationEvaluator = new SpecificationEvaluator(translationService, translationContext); } - private static void inject( - final List specifications, final ServicesInjector servicesInjector) { + private static void inject(final List<?> specifications, final ServicesInjector servicesInjector) { servicesInjector.injectServicesInto(specifications); } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/layout/RenderedAdjustedFacetForParameterLayoutAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/layout/RenderedAdjustedFacetForParameterLayoutAnnotation.java index f3506ff..02a905c 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/layout/RenderedAdjustedFacetForParameterLayoutAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/layout/RenderedAdjustedFacetForParameterLayoutAnnotation.java @@ -43,6 +43,7 @@ public class RenderedAdjustedFacetForParameterLayoutAnnotation extends RenderedA return null; case AS_DAY_BEFORE: return new RenderedAdjustedFacetForParameterLayoutAnnotation(holder); + default: } throw new IllegalStateException("renderDay '" + renderDay + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/mandatory/MandatoryFacetForParameterAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/mandatory/MandatoryFacetForParameterAnnotation.java index 8501b54..842135e 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/mandatory/MandatoryFacetForParameterAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/param/parameter/mandatory/MandatoryFacetForParameterAnnotation.java @@ -56,6 +56,7 @@ public abstract class MandatoryFacetForParameterAnnotation extends MandatoryFace return new MandatoryFacetForParameterAnnotation.Required(holder); case OPTIONAL: return new MandatoryFacetForParameterAnnotation.Optional(holder); + default: } throw new IllegalStateException("optionality '" + optionality + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethod.java index c63bf47..b147a35 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethod.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethod.java @@ -28,7 +28,6 @@ import org.apache.isis.core.commons.authentication.AuthenticationSession; import org.apache.isis.core.commons.authentication.AuthenticationSessionProvider; import org.apache.isis.core.metamodel.adapter.ObjectAdapter; import org.apache.isis.core.metamodel.adapter.ObjectAdapterProvider; -import org.apache.isis.core.metamodel.adapter.ObjectAdapter.Util; import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy; import org.apache.isis.core.metamodel.deployment.DeploymentCategory; import org.apache.isis.core.metamodel.facetapi.FacetHolder; @@ -94,9 +93,6 @@ public class PropertyAutoCompleteFacetMethod extends PropertyAutoCompleteFacetAb final String searchArg, final InteractionInitiatedBy interactionInitiatedBy) { - final AuthenticationSession authenticationSession = getAuthenticationSession(); - final DeploymentCategory deploymentCategory = getDeploymentCategory(); - final Object collectionOrArray = ObjectAdapter.InvokeUtils.invoke(method, owningAdapter, searchArg); if (collectionOrArray == null) { return null; diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/command/CommandFacetForPropertyAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/command/CommandFacetForPropertyAnnotation.java index b7b40d3..b31ef45 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/command/CommandFacetForPropertyAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/command/CommandFacetForPropertyAnnotation.java @@ -70,6 +70,7 @@ public class CommandFacetForPropertyAnnotation extends CommandFacetAbstract { return null; case ENABLED: return new CommandFacetForPropertyAnnotation(commandPersistence, commandExecuteIn, Enablement.ENABLED, holder, processor, servicesInjector); + default: } throw new IllegalStateException("command '" + command + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/disabled/DisabledFacetForPropertyAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/disabled/DisabledFacetForPropertyAnnotation.java index fecd07c..6a9a490 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/disabled/DisabledFacetForPropertyAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/disabled/DisabledFacetForPropertyAnnotation.java @@ -50,6 +50,7 @@ public class DisabledFacetForPropertyAnnotation extends DisabledFacetAbstractImp return new DisabledFacetForPropertyAnnotation(disabledReason, holder); case ENABLED: return new DisabledFacetForPropertyAnnotationInvertedSemantics(holder); + default: } return null; }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/mandatory/MandatoryFacetForPropertyAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/mandatory/MandatoryFacetForPropertyAnnotation.java index 2b6368e..6731e91 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/mandatory/MandatoryFacetForPropertyAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/mandatory/MandatoryFacetForPropertyAnnotation.java @@ -62,6 +62,7 @@ public abstract class MandatoryFacetForPropertyAnnotation extends MandatoryFacet return new MandatoryFacetForPropertyAnnotation.Required(holder); case OPTIONAL: return new MandatoryFacetForPropertyAnnotation.Optional(holder); + default: } throw new IllegalStateException("optionality '" + optionality + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertyDomainEventFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertyDomainEventFacetAbstract.java index 4c42856..2a75197 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertyDomainEventFacetAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertyDomainEventFacetAbstract.java @@ -26,6 +26,7 @@ import org.apache.isis.applib.services.i18n.TranslationService; import org.apache.isis.applib.services.wrapper.events.UsabilityEvent; import org.apache.isis.applib.services.wrapper.events.ValidityEvent; import org.apache.isis.applib.services.wrapper.events.VisibilityEvent; +import org.apache.isis.commons.internal.base._Casts; import org.apache.isis.core.metamodel.facetapi.FacetHolder; import org.apache.isis.core.metamodel.facetapi.IdentifiedHolder; import org.apache.isis.core.metamodel.facets.DomainEventHelper; @@ -70,7 +71,7 @@ extends SingleClassValueFacetAbstract implements PropertyDomainEventFacet { final PropertyDomainEvent<?, ?> event = domainEventHelper.postEventForProperty( AbstractDomainEvent.Phase.HIDE, - eventType(), null, + getEventType(), null, getIdentified(), ic.getTarget(), null, null); if (event != null && event.isHidden()) { @@ -85,7 +86,7 @@ extends SingleClassValueFacetAbstract implements PropertyDomainEventFacet { final PropertyDomainEvent<?, ?> event = domainEventHelper.postEventForProperty( AbstractDomainEvent.Phase.DISABLE, - eventType(), null, + getEventType(), null, getIdentified(), ic.getTarget(), null, null); if (event != null && event.isDisabled()) { @@ -108,7 +109,7 @@ extends SingleClassValueFacetAbstract implements PropertyDomainEventFacet { final PropertyDomainEvent<?, ?> event = domainEventHelper.postEventForProperty( AbstractDomainEvent.Phase.VALIDATE, - eventType(), null, + getEventType(), null, getIdentified(), ic.getTarget(), oldValue, proposedValue); if (event != null && event.isInvalid()) { @@ -128,15 +129,7 @@ extends SingleClassValueFacetAbstract implements PropertyDomainEventFacet { return proposedAdapter != null? proposedAdapter.getPojo(): null; } - private Class<?> eventType() { - return value(); - } - - /** - * For testing. - */ - public Class<? extends PropertyDomainEvent<?, ?>> getEventType() { - Class eventType = eventType(); - return eventType; + public <S, T> Class<? extends PropertyDomainEvent<S, T>> getEventType() { + return _Casts.uncheckedCast(value()); } } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertySetterOrClearFacetForDomainEventAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertySetterOrClearFacetForDomainEventAbstract.java index 27c7027..1f1ed60 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertySetterOrClearFacetForDomainEventAbstract.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/modify/PropertySetterOrClearFacetForDomainEventAbstract.java @@ -19,6 +19,8 @@ package org.apache.isis.core.metamodel.facets.properties.property.modify; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import java.sql.Timestamp; import java.util.Objects; @@ -238,7 +240,7 @@ extends SingleValueFacetAbstract<Class<? extends PropertyDomainEvent<?,?>>> { final PropertyDomainEvent<?, ?> event = domainEventHelper.postEventForProperty( AbstractDomainEvent.Phase.EXECUTING, - eventType(), null, + getEventType(), null, getIdentified(), targetAdapter, oldValue, newValue); @@ -259,7 +261,7 @@ extends SingleValueFacetAbstract<Class<? extends PropertyDomainEvent<?,?>>> { // ... post the executed event domainEventHelper.postEventForProperty( AbstractDomainEvent.Phase.EXECUTED, - eventType(), verify(event), + getEventType(), uncheckedCast((PropertyDomainEvent<?, ?>)event), getIdentified(), targetAdapter, oldValue, actualNewValue); } @@ -281,7 +283,7 @@ extends SingleValueFacetAbstract<Class<? extends PropertyDomainEvent<?,?>>> { interaction.execute(executor, execution); // handle any exceptions - final Interaction.Execution priorExecution = interaction.getPriorExecution(); + final Interaction.Execution<?, ?> priorExecution = interaction.getPriorExecution(); // TODO: should also sync DTO's 'threw' attribute here...? @@ -302,19 +304,10 @@ extends SingleValueFacetAbstract<Class<? extends PropertyDomainEvent<?,?>>> { } } - private Class<? extends PropertyDomainEvent<?, ?>> eventType() { - return value(); - } - - /** - * Optional hook to allow the facet implementation for now-deleted annotations to discard an event if incompatible. - * Now in effect redundant. - */ - protected PropertyDomainEvent<?, ?> verify(PropertyDomainEvent<?, ?> event) { - return event; + public <S, T> Class<? extends PropertyDomainEvent<S, T>> getEventType() { + return uncheckedCast(value()); } - private InteractionDtoServiceInternal getInteractionDtoServiceInternal() { return servicesInjector.lookupServiceElseFail(InteractionDtoServiceInternal.class); } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/publishing/PublishedPropertyFacetForPropertyAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/publishing/PublishedPropertyFacetForPropertyAnnotation.java index 7d00aa7..ff82d74 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/publishing/PublishedPropertyFacetForPropertyAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/property/publishing/PublishedPropertyFacetForPropertyAnnotation.java @@ -56,6 +56,7 @@ public class PublishedPropertyFacetForPropertyAnnotation extends PublishedProper return null; case ENABLED: return new PublishedPropertyFacetForPropertyAnnotation(holder); + default: } return null; diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/PromptStyleFacetForPropertyLayoutAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/PromptStyleFacetForPropertyLayoutAnnotation.java index a6d03e4..3178760 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/PromptStyleFacetForPropertyLayoutAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/PromptStyleFacetForPropertyLayoutAnnotation.java @@ -66,7 +66,7 @@ public class PromptStyleFacetForPropertyLayoutAnnotation extends PromptStyleFace promptStyle = PromptStyleConfiguration.parse(configuration); return new PromptStyleFacetAsConfigured(promptStyle, holder); - + default: } throw new IllegalStateException("promptStyle '" + promptStyle + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/PropertyLayoutFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/PropertyLayoutFacetFactory.java index 6884548..4cfb2d2 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/PropertyLayoutFacetFactory.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/PropertyLayoutFacetFactory.java @@ -140,8 +140,6 @@ public class PropertyLayoutFacetFactory extends FacetFactoryAbstract implements @Override public void process(ProcessContributeeMemberContext processMemberContext) { - final FacetHolder holder = processMemberContext.getFacetHolder(); - // cssClass CssClassFacet cssClassFacet = null; diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/RenderedAdjustedFacetForPropertyLayoutAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/RenderedAdjustedFacetForPropertyLayoutAnnotation.java index f98e43e..20609eb 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/RenderedAdjustedFacetForPropertyLayoutAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/RenderedAdjustedFacetForPropertyLayoutAnnotation.java @@ -43,6 +43,7 @@ public class RenderedAdjustedFacetForPropertyLayoutAnnotation extends RenderedAd return null; case AS_DAY_BEFORE: return new RenderedAdjustedFacetForPropertyLayoutAnnotation(holder); + default: } throw new IllegalStateException("renderDay '" + renderDay + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/UnchangingFacetForPropertyLayoutAnnotation.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/UnchangingFacetForPropertyLayoutAnnotation.java index 0458a11..d1f38e6 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/UnchangingFacetForPropertyLayoutAnnotation.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/propertylayout/UnchangingFacetForPropertyLayoutAnnotation.java @@ -46,6 +46,7 @@ public class UnchangingFacetForPropertyLayoutAnnotation extends UnchangingFacetA case NO_REPAINT: unchanging = true; return new UnchangingFacetForPropertyLayoutAnnotation(unchanging, holder); + default: } throw new IllegalStateException("repainting '" + repainting + "' not recognised"); }) diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/DeweyOrderSet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/DeweyOrderSet.java index 11568f9..f993e93 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/DeweyOrderSet.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/layout/DeweyOrderSet.java @@ -112,9 +112,7 @@ public class DeweyOrderSet implements Comparable<DeweyOrderSet>, Iterable<Object // now populate the OrderSets for (final String groupName : groupNames) { final DeweyOrderSet deweyOrderSet = orderSetsByGroup.get(groupName); - // REVIEW: something fishy happens here with casting, hence warnings - // left in - final SortedSet sortedMembers = sortedMembersByGroup.get(groupName); + final SortedSet<IdentifiedHolder> sortedMembers = sortedMembersByGroup.get(groupName); deweyOrderSet.addAll(sortedMembers); deweyOrderSet.copyOverChildren(); } diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/InjectorMethodEvaluatorDefault.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/InjectorMethodEvaluatorDefault.java index b5cbb6c..c4a40bb 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/InjectorMethodEvaluatorDefault.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/InjectorMethodEvaluatorDefault.java @@ -22,15 +22,12 @@ package org.apache.isis.core.metamodel.specloader; import java.lang.reflect.Method; import java.util.Map; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import org.apache.isis.commons.internal.collections._Maps; import org.apache.isis.core.metamodel.spec.InjectorMethodEvaluator; public final class InjectorMethodEvaluatorDefault implements InjectorMethodEvaluator { - private final static Logger LOG = LoggerFactory.getLogger(InjectorMethodEvaluatorDefault.class); + //private final static Logger LOG = LoggerFactory.getLogger(InjectorMethodEvaluatorDefault.class); private final Map<Method, Map<Class<?>, Boolean>> isInjectorMethod = _Maps.newConcurrentHashMap(); diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/classsubstitutor/ClassSubstitutor.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/classsubstitutor/ClassSubstitutor.java index 0f29c53..31e461d 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/classsubstitutor/ClassSubstitutor.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/classsubstitutor/ClassSubstitutor.java @@ -88,13 +88,13 @@ public class ClassSubstitutor { private final Set<Class<?>> classesToIgnore = _Sets.newHashSet(); private final Set<String> classNamesToIgnore = _Sets.newHashSet(); - /** - * For any classes registered as ignored, {@link #getClass(Class)} will - * return <tt>null</tt>. - */ - private boolean ignore(final Class<?> q) { - return classesToIgnore.add(q); - } +// /** +// * For any classes registered as ignored, {@link #getClass(Class)} will +// * return <tt>null</tt>. +// */ +// private boolean ignore(final Class<?> q) { +// return classesToIgnore.add(q); +// } /** * For any classes registered as ignored, {@link #getClass(Class)} will diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/standalonelist/CollectionFacetOnStandaloneList.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/standalonelist/CollectionFacetOnStandaloneList.java index b5ffdd5..7290e7e 100644 --- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/standalonelist/CollectionFacetOnStandaloneList.java +++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/standalonelist/CollectionFacetOnStandaloneList.java @@ -19,6 +19,8 @@ package org.apache.isis.core.metamodel.specloader.specimpl.standalonelist; +import static org.apache.isis.commons.internal.base._Casts.uncheckedCast; + import java.util.List; import java.util.function.Supplier; import java.util.stream.Stream; @@ -41,7 +43,7 @@ public class CollectionFacetOnStandaloneList extends CollectionFacetAbstract { public <T extends ManagedObject> Stream<T> stream(T wrappedObjectList) { final List<ManagedObject> list = collection(wrappedObjectList); return list.stream() - .map(x->(T)x); + .map(x->uncheckedCast(x)); } /** diff --git a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java index 8a2892e..5f9a5e7 100644 --- a/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java +++ b/core/metamodel/src/main/java/org/apache/isis/progmodels/dflt/JavaReflectorHelper.java @@ -52,10 +52,7 @@ public final class JavaReflectorHelper { metaModelRefiner.refineMetaModelValidator(metaModelValidator, configuration); } - // the programming model is itself also a MetaModelValidatorRefiner - if(!metaModelRefiners.contains(programmingModel)) { - programmingModel.refineMetaModelValidator(metaModelValidator, configuration); - } + programmingModel.refineMetaModelValidator(metaModelValidator, configuration); return new SpecificationLoader(configuration, programmingModel, metaModelValidator, servicesInjector); }