guillaume in felix

FELIX-4482 - Use scope=provided for OSGi APIs dependencies

* core and online-manipulator updated

* it modules does not have exclusions anymore

Removed empty directories
Use the manipulator BOM to harmonize dependencies' versions
Only style: 2 spaces indent for Xml
FELIX-4454 Online manipulator should be able to take advantage of Stereotypes

* Use the new manipulator-bom

* Moved AnnotationLiteral into the spi package (seems more logical to group class usable from modules)

* Changed the Module API a bit (module still have to implement the configure() method, but the container do not call that method itself (avoid multiple invocations leading to duplicate bindings))

* Introduced ModuleProvider interface for Pojoization to normalize the way modules are given to the manipulator

* Refactored a bit the 'ipojo:' UrlHandler (use of annotation + logservice)

* Provided a dedicated ResourceStore that search for annotation bytecode in all available bundles

* Added IT tests to ensure that services modules are accessible and that annotation bytecode is usable

  1. … 17 more files in changeset.
FELIX-4453 Introduce manipulator BOM (Bill of Material)
    • ?
Oops, accidentally committed some comments for disabling tests
FELIX-4419 Open access to InstanceDeclaration and TypeDeclaration

* Added DeclarationBuilderService interface

* InstanceBuilder produces DeclarationHandle to XYZDeclaration

* Declarations now also implements DeclarationHandle

* Added some core-it tests to show typical service usage

  1. /ipojo/runtime/core-it/ipojo-core-declaration-test/src
  2. … 34 more files in changeset.
Complement annotations javadoc with code samples
Try to stabilize concurrent TestCase

Lower assertions level (this is to dependent on the thread pool behavior and the OS).

Fix typo
FELIX-4268 Duplicated name errors always happen when there are 2 factories with the same name

* Generating a name always produce a unique name

* When name is provided by the instance, only check uniqueness and try appending factory's version if any, then re-check

* Changes NameGenerator interface (no more used for provided name verification)

FELIX-4265 Provides a recorder for startup events

* Exports the o.a.f.i.extender.queue.debug package

* Register a QueueEventProxy service when JVM started with 'org.apache.felix.ipojo.extender.BootstrapQueueDebug=true' system property

Quick fix: executionTime counter was still running after exception
FELIX-4264 JobInfo should provide a way to identify the kind of task

* Changed Callable<T> to Job<T>, added requirement on BundleReference

* Identify 3 types of jobs

* Updated implementations and test cases

  1. … 5 more files in changeset.
FELIX-4262 QueueServices should be observable

* Added QueueListener to observe from a third-party what's going on in the thread pool

Removed unused field
FELIX-4252 Make Extender's ThreadPool size configurable

* Oops, forgot to register my service under ManagedService interface ...

FELIX-4252 Make Extender's ThreadPool size configurable

* Through "org.apache.felix.ipojo.extender.ThreadPoolSize" System property

* Through ConfigurationAdmin (PID: org.apache.felix.ipojo.extender.ExecutorQueueService)

* Added a ThreadGroup iPOJO Extender's threads

FELIX-4213 Temporal handler broken with iPOJO 1.10.1

* Fix compilation issue

Add some meaningful descriptions when submitting jobs to the QueueService
FELIX-4112 Add meta-annotations for handler description

* @HandlerBinding can be used to declare an annotation as a handler

annotation (will produce Elements in the metadata structure). The

supporting annotation type do not have to be in a package containing

'handler' or 'ipojo'

* @Ignore can be used to ignore an annotation that would be (otherwise)

mapped to a custom handler annotation (because it contains 'handler'

or 'ipojo' in its name)

* Unified support for @Stereotype, @HandlerBinding and @Ignore

* Merged BindingRegistry and AnnotationBindingRegistry into 1 entity

** Implementation is split into 3 delegating registries for better

separation of concerns

* Module DSL improved to support @Stereotype, @HandlerBinding and

@Ignore registration

* Added annotations javadoc

  1. … 80 more files in changeset.
FELIX-4164 Instance / Component matching regression

* Tracks instances specifying the component's name OR the component's classname

FELIX-4155 Update bnd-ipojo-plugin for bndlib 2.x

* Clazz.getPath() is now getAbsolutePath()

* Analyzer.getReferrers() now gives Packages instead of a Map<String, Map<String, String>>

* Uses Attrs type instead of the attributes Map

* Attrs attributes can mow specify a type (Version is useful for us)

* Imports have been cleaned

FELIX-4156 Fix versions of maven plugins

* maven-checkstyle-plugin set to 2.10

* Changed ${pom.version} tp ${project.version}

FELIX-4021 maven-ipojo-plugin fails on WAR packaging

* When writing back resources, their paths were not converted

FELIX-4021 maven-ipojo-plugin fails on WAR packaging

* Only map WEB-INF/classes/** resources

* Leave others unchanged

FELIX-4156 Fix versions of maven plugins

* maven-checkstyle-plugin set to 2.10

* rat-maven-plugin set to 1.0-alpha3