Clone Tools
  • last updated 22 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
ISIS-1291: updating docs for new services. Also IsisTransaction now to clears the changed object properties rather than AuditingService, otherwise PublisherService would mis-report the metric of number of changed object properties.

  1. … 27 more files in changeset.
ISIS-1370: cleaning up the API to PublisherService, renaming EnlistedObjectsService to ChangedObjectsService etc.

  1. … 21 more files in changeset.
ISIS-1370: now supports publishing of objects.

  1. … 15 more files in changeset.
ISIS-1399: new MetricsService to capture metrics (objects loaded etc), capture within the Interaction.Execution.

  1. … 12 more files in changeset.
ISIS-1370: factored out EnlistedObjectsServiceInternal from IsisTransaction; used by AuditingServiceInternal and PublishingServiceInternal(Default).

  1. … 7 more files in changeset.
ISIS-1370: moved AuditingServiceInternal to an auditing package.

  1. … 3 more files in changeset.
ISIS-1370: factored out AuditingServiceInternal as wrapper around AuditingService3 (similar design to PublshingServiceInternal wrapping PublishingService).

  1. … 1 more file in changeset.
ISIS-1370: getting build to pass (moving PublishingServiceInternalDefault to package where it will be picked up as a domain service).

Also removing unused code in DomainObjectInvocationHandler.

  1. … 3 more files in changeset.
ISIS-1370: move responsibility for publishing actions into the ActionInvocationFacet (instead of in IsisTransaction and DomainObjectInvocationHandler)

To this end, extract interface for PublishingServiceInternal, move to metamodel module (out from runtime).

Also minor refactoring wihin PublishingServiceInternal(Default) itself.

  1. … 6 more files in changeset.
ISIS-1370: removing unused code from IsisTransaction

ISIS-1370: moving publishObjects from IsisTransaction to PublishingServiceInternal; inline methods; DomainObjectInvocationHandler calls PublishingServiceInternal rather than IsisTransaction.

  1. … 2 more files in changeset.
ISIS-1370: moving IsisTransaction#publishObject to PublishingServiceInternal

  1. … 1 more file in changeset.
ISIS-1370: no need to pass ObjectStringifier to PublishingServiceInternal

  1. … 1 more file in changeset.
ISIS-1370: no need to pass in user and timestamp to PublishingServiceInternal#publishAction(...) ... just obtain from UserService and ClockService.

  1. … 2 more files in changeset.
ISIS-1370: moving IsisTransaction#publishActionIfRequired to PublishingServiceInternal#publishAction

  1. … 2 more files in changeset.
ISIS-1370: simplifying IsisTransaction, just lookup PublishingServiceInternal.

  1. … 2 more files in changeset.
ISIS-1370: moved the responsibility for providing a non-null PayloadFactory into the facets.

  1. … 3 more files in changeset.
ISIS-1370: refactoring the existing implementation of IsisTransaction's PublishingService support

Unify the legacy and default implementations of the PublishedAction.PayloadFactory and PublishedObject.PayloadFactory interfaces.

  1. … 6 more files in changeset.
ISIS-1389: InteractionContext service now also being populated to capture invocation memento

  1. … 9 more files in changeset.
ISIS-1390: minor refactorings (inlining of methods), now easy to track usage of the CommandService

  1. … 1 more file in changeset.
ISIS-1390: default CommandServiceDefault. Also simplifying the relationship between IsisTransaction and Command, and how the Command object is initialized.

Also:

... deprecating CommandService#startTransaction(...), make it the responsibility of IsisTransactionManager to populate the transactionId of the Command in all cases.

... simplifying logic in IsisTransaction; the Command is only just created, so will never have a transactionId to reuse. The design is now simply for the IsisTransactionManager to create a new UUID and set on both the Command and also pass into IsisTransaction.

... extend IsisTranscationManager's executeWithTransaction to allow an existing Command to be passed in; leverage this from BackgroundCommandExecution.

Also:

... use ClockService to obtain the time, rather than Clock singleton (for Command#setTimestamp, also Command#setStartedAt,

... make lookup of mandatory services fail-fast if not present (PropertySetterFacet, ActionInvocationFacet, IsisTransactionManager, IsisTransaction)

... minor alterations to visibility of DomainObjectJdoAbstract properties in tables.

    • -113
    • +89
    ./IsisTransactionManager.java
  1. … 9 more files in changeset.
ISIS-1389: new InteractionContext and Interaction APIs; updated javadoc and deprecated corresponding methods in Command.

  1. … 6 more files in changeset.
ISIS-1291: using wormhole pattern so that bulk actions are persisted as list of adapters on command memento. Note sure I like this, though...

    • -2
    • +7
    ./TransactionalClosureWithReturnAbstract.java
  1. … 3 more files in changeset.
ISIS-1344: reinstating the TransactionClosureXxxAbstract adapter classes ... otherwise these break isis addons security module, for example.

    • -0
    • +25
    ./TransactionalClosureAbstract.java
    • -0
    • +25
    ./TransactionalClosureWithReturnAbstract.java
ISIS-1344: deleting some unused exception classes and deprecated adapter classes, part of runtime/system/transaction

    • -43
    • +0
    ./IsisTransactionManagerCommitException.java
    • -43
    • +0
    ./IsisTransactionManagerDomCallbackException.java
    • -43
    • +0
    ./IsisTransactionManagerResourceCommitException.java
    • -30
    • +0
    ./TransactionalClosureAbstract.java
    • -30
    • +0
    ./TransactionalClosureWithReturnAbstract.java
ISIS-1344: removing the WrapTransaction facets, and from that also the entire FacetDecorator infrastructure since is no longer required.

  1. … 35 more files in changeset.
ISIS-1291: partially reverting the introduction of a SequenceName... no need after all to add to EventMetadata, because there is only one reason for subactions to occur. Also moved the SequenceName enum out from EventMetadata and into Command interface.

  1. … 4 more files in changeset.
ISIS-1291: introduce enum for sequenceName (for newEventMetadata); minor moving around of methods/extract methods refactoring of newEventMetadata within IsisTransaction.

  1. … 2 more files in changeset.
ISIS-1372: factor out newEventMetadata helper in IsisTransaction.

ISIS-1368: added new PublishingService2 API. Also updated documentation.

  1. … 4 more files in changeset.