You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@isis.apache.org by "Dan Haywood (JIRA)" <ji...@apache.org> on 2014/07/03 19:14:34 UTC
[jira] [Updated] (ISIS-833) Break out applib and JDO services into
modules
[ 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)
~~~~~~
The following are new (Maven) modules.
Some notes:
* In all cases (except EventBusServiceDefault, which has an override) 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-eventbus
- EventBusServiceDefault (used by runtime if available, so API in applib)
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-jdosupport
- IsisJdoSupportImpl (not used by runtime)
- EventBusServiceJdo (JDO override; used by runtime if available)
- ExceptionRecognizerCompositeForJdoObjectStore (used by runtime if available)
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 *
was:
So that in future these can be released independently of core.
core request-scoped @DomainServices (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 @DomainServices (always available)
- MementoServiceDefault (runtime implementation)
- BookmarkServiceDefault (runtime implementation)
- XmlSnapshotServiceDefault (runtime implementation)
- ClassDiscoveryServiceUsingReflections (applib implementation)
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-eventbus
- EventBusServiceDefault (used by runtime if available, so API in applib)
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-jdosupport
- IsisJdoSupportImpl (not used by runtime)
- EventBusServiceJdo (JDO override; used by runtime if available)
- ExceptionRecognizerCompositeForJdoObjectStore (used by runtime if available)
isis-module-clock
- ClockService (not used by runtime)
isis-module-devutils (not used by runtime, standalone)
- applib
- DeveloperUtilitiesService
- impl
- DeveloperUtilitiesServiceDefault
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 *
> 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)
> ~~~~~~
> The following are new (Maven) modules.
> Some notes:
> * In all cases (except EventBusServiceDefault, which has an override) 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-eventbus
> - EventBusServiceDefault (used by runtime if available, so API in applib)
> 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-jdosupport
> - IsisJdoSupportImpl (not used by runtime)
> - EventBusServiceJdo (JDO override; used by runtime if available)
> - ExceptionRecognizerCompositeForJdoObjectStore (used by runtime if available)
> 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 *
--
This message was sent by Atlassian JIRA
(v6.2#6252)