[
https://issues.apache.org/jira/browse/ISIS-833?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Dan Haywood updated ISIS-833:
-----------------------------
Description:
... so that in future these can be released independently of core; and to
reduce configuration (isis.properties file).
~~~~~~
No change for the following services:
core request-scoped services; already annotated with @DomainService, and so
always available
- CommandContext (applib implementation; populated by runtime
if available)
- Bulk.InteractionContext (applib implementation; not used by runtime)
- Scratchpad (applib implementation; not used by runtime)
- QueryResultsCache (applib implementation; not used by runtime)
core singleton services; already annotated with @DomainService, and so always
available
- MementoServiceDefault (runtime implementation; used
implicitly by runtime for commands)
- BookmarkServiceDefault (runtime implementation; used
implicitly by runtime for commands)
- XmlSnapshotServiceDefault (runtime implementation; not used by
runtime)
- ClassDiscoveryServiceUsingReflections (applib implementation; not used by
runtime)
- ClockService (applib implementation; not used by runtime)
~~~
These services should changed to be annotated annotated with @DomainService
(because JDO is now core):
- IsisJdoSupportImpl (not used by runtime)
- EventBusServiceJdo (used by runtime if available)
- ExceptionRecognizerCompositeForJdoObjectStore (used by runtime if available)
~~~
IsisJdoSupport API should move from the jdo-applib to applib.
~~~~~~
The following are new (Maven) modules.
Some notes:
* In all cases these can be annotated with @DomainService; thus they are
configured and registered automatically if added to the classpath.
* If a service can be used by runtime, then its API is defined in applib; the
module therefore contains only the impl. Most of the modules below fall into
this category.
* If a service is completely standalone from the framework, then it defines its
own API (in an "applib" submodule) and its own impl. An example of this is
isis-module-settings, which defines AppSettings and UserSettings.
isis-module-wrapper (used by integtestsupport)
- WrapperFactoryDefault (rename core-wrapper implementation)
isis-module-command
- CommandServiceJdo (used by runtime if available, so API in
applib)
- CommandServiceJdoContributions (UI, not used by runtime)
- CommandServiceJdoRepository (no UI, supporting service for
...Contributions)
- BackgroundCommandServiceJdo (UI visible, not used by runtime
but prereq for background service)
- BackgroundCommandServiceJdoContributions (UI visible, not used by runtime)
- BackgroundCommandServiceJdoRepository (not visible, supporting service
for ...Contributions)
isis-module-audit
- AuditingServiceJdo (used by runtime if available, so API in
applib)
- AuditingServiceJdoContributions (UI, not used by runtime)
- AuditingServiceJdoRepository (not visible, supporting service for
...Contributions)
isis-module-background
- BackgroundServiceDefault (used by runtime if available, so API in
applib; requires BackgroundCommandService)
isis-module-publishing
- PublishingServiceJdo (used by runtime if available, so API in
applib)
- PublishingServiceJdoContributions (UI, not used by runtime)
- PublishingServiceJdoRepository (not visible, supporting service for
...Contributions)
isis-module-devutils (not used by runtime, standalone)
- applib
- DeveloperUtilitiesService
- impl
- DeveloperUtilitiesServiceDefault (metamodel impl)
isis-module-appsettings (not used by runtime, standalone)
- applib
- ApplicationSettingsServiceRW
- UserSettingsServiceRW
- impl
ApplicationSettingsServiceJdo (UI, not used by runtime)
ApplicationSettingsServiceHidden (not UI, not used by runtime)
UserSettingsServiceJdo (UI, not used by runtime)
UserSettingsServiceHidden (not UI, not used by runtime)
in addition:
* move IsisJdoSupport APi into core-applib *
* EventBusServiceDefault can be deprecated, since its subclass
EventBusServiceJdo is always available
was:
... so that in future these can be released independently of core; and to
reduce configuration (isis.properties file).
~~~~~~
No change for the following services:
core request-scoped services; already annotated with @DomainService, and so
always available
- CommandContext (applib implementation; populated by runtime
if available)
- Bulk.InteractionContext (applib implementation; not used by runtime)
- Scratchpad (applib implementation; not used by runtime)
- QueryResultsCache (applib implementation; not used by runtime)
core singleton services; already annotated with @DomainService, and so always
available
- MementoServiceDefault (runtime implementation; used
implicitly by runtime for commands)
- BookmarkServiceDefault (runtime implementation; used
implicitly by runtime for commands)
- XmlSnapshotServiceDefault (runtime implementation; not used by
runtime)
- ClassDiscoveryServiceUsingReflections (applib implementation; not used by
runtime)
- ClockService (applib implementation; not used by runtime)
~~~
These services should changed to be annotated annotated with @DomainService
(because JDO is now core):
- IsisJdoSupportImpl (not used by runtime)
- EventBusServiceJdo (used by runtime if available)
- ExceptionRecognizerCompositeForJdoObjectStore (used by runtime if available)
~~~~~~
The following are new (Maven) modules.
Some notes:
* In all cases these can be annotated with @DomainService; thus they are
configured and registered automatically if added to the classpath.
* If a service can be used by runtime, then its API is defined in applib; the
module therefore contains only the impl. Most of the modules below fall into
this category.
* If a service is completely standalone from the framework, then it defines its
own API (in an "applib" submodule) and its own impl. An example of this is
isis-module-settings, which defines AppSettings and UserSettings.
isis-module-wrapper (used by integtestsupport)
- WrapperFactoryDefault (rename core-wrapper implementation)
isis-module-command
- CommandServiceJdo (used by runtime if available, so API in
applib)
- CommandServiceJdoContributions (UI, not used by runtime)
- CommandServiceJdoRepository (no UI, supporting service for
...Contributions)
- BackgroundCommandServiceJdo (UI visible, not used by runtime
but prereq for background service)
- BackgroundCommandServiceJdoContributions (UI visible, not used by runtime)
- BackgroundCommandServiceJdoRepository (not visible, supporting service
for ...Contributions)
isis-module-audit
- AuditingServiceJdo (used by runtime if available, so API in
applib)
- AuditingServiceJdoContributions (UI, not used by runtime)
- AuditingServiceJdoRepository (not visible, supporting service for
...Contributions)
isis-module-background
- BackgroundServiceDefault (used by runtime if available, so API in
applib; requires BackgroundCommandService)
isis-module-publishing
- PublishingServiceJdo (used by runtime if available, so API in
applib)
- PublishingServiceJdoContributions (UI, not used by runtime)
- PublishingServiceJdoRepository (not visible, supporting service for
...Contributions)
isis-module-devutils (not used by runtime, standalone)
- applib
- DeveloperUtilitiesService
- impl
- DeveloperUtilitiesServiceDefault (metamodel impl)
isis-module-appsettings (not used by runtime, standalone)
- applib
- ApplicationSettingsServiceRW
- UserSettingsServiceRW
- impl
ApplicationSettingsServiceJdo (UI, not used by runtime)
ApplicationSettingsServiceHidden (not UI, not used by runtime)
UserSettingsServiceJdo (UI, not used by runtime)
UserSettingsServiceHidden (not UI, not used by runtime)
in addition:
* move IsisJdoSupport APi into core-applib *
* EventBusServiceDefault can be deprecated, since its subclass
EventBusServiceJdo is always available
> Break out applib and JDO services into modules
> ----------------------------------------------
>
> Key: ISIS-833
> URL: https://issues.apache.org/jira/browse/ISIS-833
> Project: Isis
> Issue Type: Improvement
> Affects Versions: objectstore-jdo-1.5.0, core-1.5.0
> Reporter: Dan Haywood
> Assignee: Dan Haywood
> Fix For: objectstore-jdo-1.6.0, core-1.6.0
>
>
> ... so that in future these can be released independently of core; and to
> reduce configuration (isis.properties file).
> ~~~~~~
> No change for the following services:
> core request-scoped services; already annotated with @DomainService, and so
> always available
> - CommandContext (applib implementation; populated by
> runtime if available)
> - Bulk.InteractionContext (applib implementation; not used by
> runtime)
> - Scratchpad (applib implementation; not used by
> runtime)
> - QueryResultsCache (applib implementation; not used by
> runtime)
> core singleton services; already annotated with @DomainService, and so always
> available
> - MementoServiceDefault (runtime implementation; used
> implicitly by runtime for commands)
> - BookmarkServiceDefault (runtime implementation; used
> implicitly by runtime for commands)
> - XmlSnapshotServiceDefault (runtime implementation; not used by
> runtime)
> - ClassDiscoveryServiceUsingReflections (applib implementation; not used by
> runtime)
> - ClockService (applib implementation; not used by
> runtime)
> ~~~
> These services should changed to be annotated annotated with @DomainService
> (because JDO is now core):
> - IsisJdoSupportImpl (not used by runtime)
> - EventBusServiceJdo (used by runtime if available)
> - ExceptionRecognizerCompositeForJdoObjectStore (used by runtime if
> available)
> ~~~
> IsisJdoSupport API should move from the jdo-applib to applib.
> ~~~~~~
> The following are new (Maven) modules.
> Some notes:
> * In all cases these can be annotated with @DomainService; thus they are
> configured and registered automatically if added to the classpath.
> * If a service can be used by runtime, then its API is defined in applib; the
> module therefore contains only the impl. Most of the modules below fall into
> this category.
> * If a service is completely standalone from the framework, then it defines
> its own API (in an "applib" submodule) and its own impl. An example of this
> is isis-module-settings, which defines AppSettings and UserSettings.
> isis-module-wrapper (used by integtestsupport)
> - WrapperFactoryDefault (rename core-wrapper implementation)
> isis-module-command
> - CommandServiceJdo (used by runtime if available, so API in
> applib)
> - CommandServiceJdoContributions (UI, not used by runtime)
> - CommandServiceJdoRepository (no UI, supporting service for
> ...Contributions)
> - BackgroundCommandServiceJdo (UI visible, not used by runtime
> but prereq for background service)
> - BackgroundCommandServiceJdoContributions (UI visible, not used by runtime)
> - BackgroundCommandServiceJdoRepository (not visible, supporting service
> for ...Contributions)
> isis-module-audit
> - AuditingServiceJdo (used by runtime if available, so API in
> applib)
> - AuditingServiceJdoContributions (UI, not used by runtime)
> - AuditingServiceJdoRepository (not visible, supporting service for
> ...Contributions)
> isis-module-background
> - BackgroundServiceDefault (used by runtime if available, so API in
> applib; requires BackgroundCommandService)
> isis-module-publishing
> - PublishingServiceJdo (used by runtime if available, so API in
> applib)
> - PublishingServiceJdoContributions (UI, not used by runtime)
> - PublishingServiceJdoRepository (not visible, supporting service for
> ...Contributions)
> isis-module-devutils (not used by runtime, standalone)
> - applib
> - DeveloperUtilitiesService
> - impl
> - DeveloperUtilitiesServiceDefault (metamodel impl)
> isis-module-appsettings (not used by runtime, standalone)
> - applib
> - ApplicationSettingsServiceRW
> - UserSettingsServiceRW
> - impl
> ApplicationSettingsServiceJdo (UI, not used by runtime)
> ApplicationSettingsServiceHidden (not UI, not used by runtime)
> UserSettingsServiceJdo (UI, not used by runtime)
> UserSettingsServiceHidden (not UI, not used by runtime)
> in addition:
> * move IsisJdoSupport APi into core-applib *
> * EventBusServiceDefault can be deprecated, since its subclass
> EventBusServiceJdo is always available
--
This message was sent by Atlassian JIRA
(v6.2#6252)