[Component-DSL] Add concurrency tests

Disabled by default because they take some time.
The tests try to ensure that, when registering a counter effect, the
tuple always will execute it, either when the tuple is closed or in the
same moment if the tuple is already closed.

Same thing goes with OSGiResultImpl. If the result has been closed it
should never start. If, on the contrary, the program held by the result
had been started it should wait for it to finish starting before closing
it. If the program has not been started then the closing handlers will
not be executed.

Understading the close handlers as "counter effects" of the start
handlers, both Tuple and OSGiRsultImpl try to enforce the the net result
is always 0.

Of course the DSL can't make sure that the close handlers are the
"inverse" of the start handlers, or that the DSL users do not embed side
effects in allegedly pure operations.

git-svn-id: https://svn.apache.org/repos/asf/aries/trunk@1811732 13f79535-47bb-0310-9956-ffa450edef68
4 files changed
tree: ac8860e377eaf9c6491dcd9f415339e39e7a088b
  1. component-dsl/
  2. itests/
  3. itests-run/
  4. pom.xml