You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2017/10/04 03:43:51 UTC
[isis] branch dev/2.0.0/ISIS-1742-remove-deprecations updated:
ISIS-1742: updates to the todo list
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch dev/2.0.0/ISIS-1742-remove-deprecations
in repository https://gitbox.apache.org/repos/asf/isis.git
The following commit(s) were added to refs/heads/dev/2.0.0/ISIS-1742-remove-deprecations by this push:
new 0b5d666 ISIS-1742: updates to the todo list
0b5d666 is described below
commit 0b5d666a562b18191c55485e1b271fead2f08ddc
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Wed Oct 4 04:43:43 2017 +0100
ISIS-1742: updates to the todo list
---
todo-deprecation-list.txt | 155 +++++++++++++++++++++++++---------------------
1 file changed, 84 insertions(+), 71 deletions(-)
diff --git a/todo-deprecation-list.txt b/todo-deprecation-list.txt
index d6c3112..0a0186e 100644
--- a/todo-deprecation-list.txt
+++ b/todo-deprecation-list.txt
@@ -1,5 +1,7 @@
+
+
DONE:
org.apache.isis.applib
@@ -34,108 +36,107 @@ org.apache.isis.applib.annotation
ActionOrder.java - entire annotation, use @MemberOrder instead
FieldOrder.java - entire annotation, use @MemberOrder instead
-
+
CollectionLayout.java
render() - use @CollectionLayout(defaultView=...) instead
RenderType.java - supporting enum for @Render annotation
Render.java - entire annotation, use @CollectionLayout(defaultView=...) instead
Resolve.java - entire annotation, use @CollectionLayout(defaultView=...) instead
-
+
CssClass.java - entire annotation, use @XxxLayout(cssClass=...) instead, where Xxx is Property, Collection, Action, Parameter, DomainObject, ViewModel
CssClassFa.java - entire annotation, use @XxxLayout(cssClass=...) instead, where Xxx is Property, Collection, Action, Parameter, DomainObject, ViewModel
-
+
DescribedAs.java - entire annotation, use @XxxLayout(describedAs=...) instead
-
+
MaxLength.java - entire annotation, use @Property(maxLength=...) and @Parameter(maxLength=...)
MultiLine.java - entire annotation, use @PropertyLayout(multiLine=...) and @ParameterLayout(multiLine=...) instead.
Named.java - entire annotation, use @XxxLayout(named=...) instead, where Xxx is Property, Collection, Action, Parameter, DomainObject, ViewModel
Plural.java - entire annotation, use @DomainObjectLayout(plural=...) instead
-
-
+
+
TO REMOVE:
-
+
org.apache.isis.applib
-
+
AbstractContainedObject.java - entire class
AbstractDomainObject.java - entire class
AbstractFactoryAndRepository.java - entire class
-
+
DomainObjectContainer.java - entire class
-
-
+
+
org.apache.isis.applib.annotation
-
-
-
+
+
+
Aggregated.java - entire annotation, not supported internally
NotPersistable.java - entire annotation, not supported and does nothing
-
+
AutoComplete.java - entire annotation, use @DomainObject(autoComplete...=...)
Bookmarkable.java - entire annotation, use @DomainObjectLayout(bookmarking=...)
Bounded.java - entire annotation, use @DomainObject(bounded=...)
-
+
Bulk.java - entire annotation, use @Action(invokeOn=...)
Bulk.InteractionContext - entire service, use ActionInvocationContext service instead
InvokedOn.java - entire enum, along with @Bulk annotation.
-
-
+
+
Audited.java - entire annotation, use @DomainObject(audited=...)
-
+
Command.java - entire annotation, use @Action(command=...) instead
CommandExecuteIn.java - entire annotation, use @Action(commandExecuteIn=...) instead
CommandPersistence.java - entire annotation, use @Action(commandPersistence=...) instead
-
+
Debug.java - entire annotation, use @Action#(restrictTo=...) instead
Exploration.java - entire annotation, use @Action(restrictTo=....) instead
Prototype.java - entire annotation, use @Action(restrictTo=....) instead
-
+
Disabled.java - entire annotation, use @Property(editingDisabledReason=...) instead
Hidden.java - entire annotation, use @Property(hidden=...), @Collection(hidden=...), @Action(hidden=...)
-
+
Ignore.java - entire annotation, use @Programmatic instead.
Immutable.java - entire annotation, use @DomainObject(editing=...) instead
-
+
Mandatory.java - entire annotation, use @Property(optionality=...) and @Parameter(optionality=...), or @javax.annotations.Nullable
Optional.java - entire annotation, use @Property(optionality=...) and @Parameter(optionality=...), or @javax.annotations.Nullable
-
+
Mask.java - entire annotation, not supported by either Wicket viewer or RO viewer
-
- MemberGroupLayout.java - entire annotation, use Xxx.layout.xml instead
+
MemberGroups.java - entire annotation, use Xxx.layout.xml instead
-
+
MustSatisfy.java - entire annotation, use @Property(mustSatisfy=....) or @Parameter(mustSatisfy=...) instead
RegEx.java - entire annotation, use @Property(regexPatternFlags=...) or @Parameter(regexPatternFlags=...) instead
RenderedAsDayBefore.java - entire annotation, use @PropertyLayout(renderedAsDayBefore=...) and @ParameterLayout(renderedAsDayBefore=...)
SortedBy.java - entire annotation, use @CollectionLayout(sortedBy=...) instead
TypeOf.java - entire annotation, use @Collection(typeOf=...) or @Action(typeOf=...) instead.
TypicalLength.java - entire annotation, use @PropertyLayout(typicalLength=...) instead.
-
+
NotContributed.java - entire annotation, use @DomainService(nature=...) or mixins instead.
NotInServiceMenu.java - entire annotation, use @DomainService(nature=...) or mixins instead.
-
+
NotPersisted.java - entire annotation, use @Property(notPersisted=...) instead
-
+
ObjectType.java - entire annotation, use @DomainObject(objectType=...) or @javax.jdo.annotations.Discriminator instead.
Paged.java - entire annotation, use @DomainObjectLayout(paged=...) or @CollectionLayout(paged=...) instead.
-
+
Parameter.java
minLength() attribute; not supported. For autocomplete, use @MinLength annotation.
-
+
When.java - entire enum, no replacement (believe is unused within the framwork)
-
+
org.apache.isis.applib.clock
Clock.java -
getTimeAsCalendar() (1 usage found)
getTimeAsDate() (1 usage found)
-
+
org.apache.isis.applib.events - entire package. These event classes supported only by WrapperFactory;
redundant as @Xxx(domainEvent=...) on member achieves much the same effect using event bus
org.apache.isis.applib.filter - entire package of Filter classes; use guava Predicate instead.
-
+
org.apache.isis.applib.fixturescripts
FixtureScript.java - various methods to simplify API
add(...) - use addResult(...) instead
@@ -145,16 +146,16 @@ org.apache.isis.applib.fixturescripts
lookup(String, Class<T>) - use ExecutionContext#lookup(...) instead
FixtureScripts.java - remove deprecated methods;
framework provides an implementation of this service, and use FixtureScriptsSpecificatoinProvider to configure instead.
-
+
org.apache.isis.applib.marker - remove these marker interaces (tend to use annotations in preference)
- ImmutableOncePersisted.java
+ ImmutableOncePersisted.java
ImmutableUntilPersisted.java
NeverImmutable.java
NonPersistable.java
ProgramPersistable.java
org.apache.isis.applib.services.actinvoc
ActionInvocationContext.java -remove unused constructors
-
+
org.apache.isis.applib.services.audit (2 usages found)
AuditingService3.java - remove entire service, use AuditerService instead
org.apache.isis.applib.services.background (10 usages found)
@@ -162,23 +163,23 @@ org.apache.isis.applib.services.background (10 usages found)
BackgroundCommandService.java - remove methods using AIM, instead keep those using CommandDto (in BackgroundCommandService2)
BackgroundService.java
asActionInvocationMemento(Method, Object, Object[]) - remove this internal API, no longer called by framework
-
+
org.apache.isis.applib.services.bookmark (8 usages found)
BookmarkService.java - deprecated methods, have overloads in BookmarkService2 subtype [suggest we retain these for now]
org.apache.isis.applib.services.classdiscovery
ClassDiscoveryService.java , push down into ClassDiscoveryService2
-
+
org.apache.isis.applib.services.command
Command2.java - methods for working with interaction events (remove with those event types)
flushActionInteractionEvents()
peekActionInteractionEvent()
- popActionInteractionEvent()
+ popActionInteractionEvent()
pushActionInteractionEvent(ActionInteractionEvent<?>)
-
+
org.apache.isis.applib.services.command.spi
CommandService.java
startTransaction(Command, UUID) - no longer required to do anything, so remove
-
+
org.apache.isis.applib.services.eventbus
AbstractInteractionEvent.java - remove
ActionInteractionEvent.java - remove
@@ -190,10 +191,10 @@ org.apache.isis.applib.services.eventbus
PropertyInteractionEvent.java - remove
org.apache.isis.applib.services.memento (19 usages found)
MementoService.java - remove entire service (previously to support view models, but now @ViewModel and JAXB)
-
+
org.apache.isis.applib.services.metamodel
MetaModelService2.java - push down to subtype, retain overloads for now
-
+
org.apache.isis.applib.services.publish - remove classes pertaining to original PublishingService (payload factories etc).
EventMetadata.java - remove class
EventPayload.java - remove class
@@ -202,24 +203,24 @@ org.apache.isis.applib.services.publish - remove classes pertaining to original
PublishedEventStateType.java - remove class
PublishingService.java - remove domain service interface
StatusMessageMessageType.java - remove class
-
+
org.apache.isis.applib.services.settings
SettingTypes.java - remove, used only by 3rd party code (incode platform settings module)
-
+
org.apache.isis.applib.services.wrapper
WrapperObject.java
save() and wrapped() - remove to avoid name clashes, use __isis_Xxx() methods instead
-
+
org.apache.isis.applib.snapshot
Snapshottable.java - remove ? [suggest we retain the Snapshot service for now]
-
-
+
+
org.apache.isis.applib.value
DateTime.java
longValue() - use #millisSinceEpoch()
Time.java
longValue() - use #millisSinceEpoch()
-
+
org.apache.isis.core.objectstore.jdo.applib.annotations - remove package entirely
Auditable.java - use @DomainObject(audited=...) instead.
org.apache.isis.objectstore.jdo.applib
@@ -231,25 +232,13 @@ org.apache.isis.objectstore.jdo.applib.service
Util.java - remove
org.apache.isis.objectstore.jdo.applib.service.support
IsisJdoSupport.java - replaced by org.apache.isis.applib.services.jdosupport.IsisJdoSupport
-
-Notes:
-sometimes there are multiple versions of a type, eg BookmarkService2 and BookmarkService, where BookmarkService2 extends BookmarkService. In these cases, suggest push down the methods from supertype, and then delete that supertype, but don't rename the subtype (not in this release, at least).
-Also propose:
-make AppManifest mandatory
-remove support for Xxx.layout.json
-remove support for contributed services (use mixins instead)
-
-Also for 2.0.0, new features/deprecations:
-automatically wrap domain services (perhaps behind a config property)
-automatically infer \@Programmatic for all \@DomainService(nature=DOMAIN)
-deprecate use of guava predicates, but don't remove (too big a change, weren't deprecated previously)
-deprecate FixtureScripts service with view to removing from applib ... the framework provides an implementation by default
-get rid of automatic initialization of fields (perhaps behind a config property)
-deprecate the Apache Isis' DateTime classes for removal in the future) ... and probably all of the custom value types, subclasses of Magnitude
-
-
-Propose to retain:
+
+
+
+PROPOSE TO RETAIN:
+
+
Below is the code currently deprecated in the applib, but I propose to retain even in 2.0.0 (on the grounds that a replacement for them is not fully designed):
org.apache.isis.applib.adapters - custom value type support
@@ -286,8 +275,33 @@ org.apache.isis.applib.services.command
popActionDomainEvent()
pushActionDomainEvent(ActionDomainEvent<?>) (
+ MemberGroupLayout.java - entire annotation, use Xxx.layout.xml instead
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
+Notes:
+
+sometimes there are multiple versions of a type, eg BookmarkService2 and BookmarkService, where BookmarkService2 extends BookmarkService. In these cases, suggest pull up the methods from the subtype(s) into the supertype, and then delete those subtypes... ie we end up with a new expanded version of BookmarkService.
+
+
+Also propose:
+ make AppManifest mandatory
+ remove support for Xxx.layout.json
+ remove support for contributed services (use mixins instead)
+
+Also for 2.0.0, new features/deprecations:
+ automatically wrap domain services (perhaps behind a config property)
+ automatically infer \@Programmatic for all \@DomainService(nature=DOMAIN)
+ deprecate use of guava predicates, but don't remove (too big a change, weren't deprecated previously)
+ deprecate FixtureScripts service with view to removing from applib ... the framework provides an implementation by default
+ get rid of automatic initialization of fields (perhaps behind a config property)
+ deprecate the Apache Isis' DateTime classes for removal in the future) ... and probably all of the custom value types, subclasses of Magnitude
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
OTHER STUFF:
@@ -331,4 +345,3 @@ update .xsd for layout, make render optional and deprecated.
-
--
To stop receiving notification emails like this one, please contact
['"commits@isis.apache.org" <co...@isis.apache.org>'].