Clone Tools
  • last updated 24 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
ISIS-2158: introduces a DeficiencyFacet

- facets of this particular type do now get added directly to the

meta-model during validation; these are specifically added to the

facet-holder, that is considered responsible for the failure

- this automatically allows for the meta-model export to also include

deficiency facets, explaining what's going wrong, right at the place

where they originate from

  1. … 42 more files in changeset.
ISIS-2158: polish meta-model life cycle

  1. … 13 more files in changeset.
ISIS-2158: consolidate all jdo programming model refiners

- also renames some classes in 'jdo-common' -> IsisXxxJdo

  1. … 13 more files in changeset.
ISIS-1998: at type-level now supported @Collection and @CollectionLayout

- follows same semantic as @Property and @PropertyLayout

  1. … 7 more files in changeset.
ISIS-1998: also type-level processes @ActionLayout and @PropertyLayout

  1. … 6 more files in changeset.
ISIS-1998: infers intent when using @Property with mixins ...

- when @Property at type level: infers @Action(semantics=SAFE) and

@Mixin(methodName="proc")

- when @Property at method level: infers @Action(semantics=SAFE), but

@Mixin at type level is still required

  1. … 5 more files in changeset.
ISIS-1998: extending MixinFacet to help with early mixin-main method detection

  1. … 5 more files in changeset.
ISIS-1998: allows @Action on type as synonym for @Mixin(method="act")

  1. … 27 more files in changeset.
ISIS-1998: use @Mixin as meta-annotation on @Action, @Property ...

  1. … 11 more files in changeset.
ISIS-2158: non-invasive preparations for ISIS-1998

adding tests first (test driven development) before actually modifying

the programming model ...

1. facet processing tests

2. smoketests to test whether the generated meta-model is as expected

  1. … 24 more files in changeset.
ISIS-2158: fixes NamedFacet picking up on empty 'named' attribute

  1. … 3 more files in changeset.
ISIS-2158: fixes the annotation syntesizer (proxy generator)

- did fail when a method had multiple annotations sharing the same

attribute

  1. … 9 more files in changeset.
ISIS-2158: annotation scanning: minor performance tweaks

- also adding caches, but these are all disabled for now

- we'll need a large sample domain to actually measure performance

  1. … 12 more files in changeset.
ISIS-2158: have IsisSystemEnvironment cleanup Isis' _Context

- also tries to ensure, there can be only one IsisSystemEnvironment

instance at any time

- moving IsisSystemEnvironment one up in package hierarchy

- we hook into the Spring context's life-cycle and call _Context.clear()

when Spring is about to start the @PostConstuct phase

- also fixes a concurrent testing issue

  1. … 32 more files in changeset.
ISIS-2158: let have the ServiceInjector use the same injection point resolving logic (ordering) as Spring does

- @Primary is used prior to others regardless of @Order

ServiceInjector provides backward-compatibility, but maybe we are able

to remove it entirely later.

  1. … 12 more files in changeset.
ISIS-2158: more workarounds to fix running a batch of smoketests

  1. … 1 more file in changeset.
ISIS-2158: removes the IsisSystemEnvironmentProvider

- this indirection is not required

  1. … 3 more files in changeset.
ISIS-2158: move JdoPersistenceLifecycleService -> jdo-common

- fixes smoketests with headless config

  1. … 3 more files in changeset.
ISIS-2158: smoketests to have their individual in-mem connections

- adds new 'IsisPresets.H2InMemory_withUniqueSchema'

- also converts DN plugin to use new config bean 'DataNucleusSettings'

However, there might be a random number collision when generating unique

schema names, though highly unlikely. Unfortunately using a UUID as

schema name does not seem to work, its too long (has too many

characters).

  1. … 5 more files in changeset.
ISIS-2158: config-beans: adding test case for 'ConnectionURL'

  1. … 3 more files in changeset.
ISIS-2158: MethodRemover: using Set<Method> instead of List<Method>

- should(!?) perform better on classes with lots of methods

- also solving concurrent modification issues when stress testing

spec-loading

  1. … 5 more files in changeset.
ISIS-2158: refine MethodRemover interface

- less List instances required during spec-loading

- also makes the FacetHolderImpl thread-safe, which is required for

concurrent spec-loading

  1. … 11 more files in changeset.
ISIS-2158: performance regression?

  1. … 12 more files in changeset.
ISIS-2158: spec-loading: minor tweaks

- profiling data shows, that basically most of the time is spent doing

reflective stuff like finding annotations including meta-annotations

Instead of writing or own reflection tools (with caching), we could

utilize those that Spring already provides.

  1. … 7 more files in changeset.
ISIS-2158: spec-loading: simplify spec-cache

  1. … 4 more files in changeset.
ISIS-2158: spec-loading: some refinement and polishing

  1. … 17 more files in changeset.
ISIS-2158: attempt to simplify some of the spec-loading code

  1. … 8 more files in changeset.
ISIS-2158: fixes all core tests; maven core standard build works

  1. … 3 more files in changeset.
ISIS-2158: fixing build issues after merge

  1. … 2 more files in changeset.
ISIS-2158: wrapper: extend async programming model to also match method references that don't return a value (like Runnable)

- BackgroundService seems now obsolete, need to check whether it can be

removed

  1. … 7 more files in changeset.