Hi, Quinn,

I took a look at PR987:

1) the parent pom should be something like 2.18.0 not 2.18 (maybe the PR was 
around too long, so the parent changed).
2) The readme really needs some love. It mentions spring when there is really 
blueprint; jms, when there is none, etc.
3) for me an example replacing/redefining jms: or activemq: by seda: would 
really make a difference. Like having a jms-definitions-bp.xml and then 
replacing it by seda-definitions-bp.xml, or something like that. I know that´s 
not the point of your sample but the timer-example seems a bit basic. 
4) maybe …-test-karaf would be a better name?
5) my unit tests and itests do not run through. If they would I could provide 
more fleshy feedback.

If I can help, let me know.

Cheers, Thomas.

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running org.apache.camel.BlueprintBeanPropertiesOverrideFromFileTest
Unable to start bundle: org.apache.felix.gogo.runtime [64]
org.osgi.framework.BundleException: Unable to start bundle
        at org.apache.felix.connect.PojoSRBundle.start(PojoSRBundle.java:163)
        at org.apache.felix.connect.PojoSR.startBundles(PojoSR.java:304)
        at org.apache.felix.connect.PojoSR.<init>(PojoSR.java:248)
        at org.apache.felix.connect.PojoSR.<init>(PojoSR.java:129)
        at 
org.apache.felix.connect.PojoServiceRegistryFactoryImpl.newPojoServiceRegistry(PojoServiceRegistryFactoryImpl.java:52)
        at 
org.apache.camel.test.blueprint.CamelBlueprintHelper.createBundleContext(CamelBlueprintHelper.java:173)
        at 
org.apache.camel.test.blueprint.CamelBlueprintHelper.createBundleContext(CamelBlueprintHelper.java:119)
        at 
org.apache.camel.test.blueprint.CamelBlueprintTestSupport.createBundleContext(CamelBlueprintTestSupport.java:127)
        at 
org.apache.camel.test.blueprint.CamelBlueprintTestSupport.setUp(CamelBlueprintTestSupport.java:241)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:483)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
        at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
        at 
org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
        at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
        at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
Caused by: java.lang.IllegalStateException: Thread Print Stream already set
        at 
org.apache.felix.gogo.runtime.threadio.ThreadIOImpl.start(ThreadIOImpl.java:49)
        at 
org.apache.felix.gogo.runtime.activator.Activator.start(Activator.java:76)
        at org.apache.felix.connect.PojoSRBundle.start(PojoSRBundle.java:153)
        ... 37 more
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 10.485 sec - in 
org.apache.camel.BlueprintBeanPropertiesOverrideFromFileTest
Running org.apache.camel.BlueprintBeanPropertiesOverrideFromTestTest
Unable to start bundle: org.apache.felix.gogo.runtime [64]
org.osgi.framework.BundleException: Unable to start bundle
        at org.apache.felix.connect.PojoSRBundle.start(PojoSRBundle.java:163)
        at org.apache.felix.connect.PojoSR.startBundles(PojoSR.java:304)
        at org.apache.felix.connect.PojoSR.<init>(PojoSR.java:248)
        at org.apache.felix.connect.PojoSR.<init>(PojoSR.java:129)
        at 
org.apache.felix.connect.PojoServiceRegistryFactoryImpl.newPojoServiceRegistry(PojoServiceRegistryFactoryImpl.java:52)
        at 
org.apache.camel.test.blueprint.CamelBlueprintHelper.createBundleContext(CamelBlueprintHelper.java:173)
        at 
org.apache.camel.test.blueprint.CamelBlueprintHelper.createBundleContext(CamelBlueprintHelper.java:119)
        at 
org.apache.camel.test.blueprint.CamelBlueprintTestSupport.createBundleContext(CamelBlueprintTestSupport.java:127)
        at 
org.apache.camel.test.blueprint.CamelBlueprintTestSupport.setUp(CamelBlueprintTestSupport.java:241)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:483)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
        at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
        at 
org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
        at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
        at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
Caused by: java.lang.IllegalStateException: Thread Print Stream already set
        at 
org.apache.felix.gogo.runtime.threadio.ThreadIOImpl.start(ThreadIOImpl.java:49)
        at 
org.apache.felix.gogo.runtime.activator.Activator.start(Activator.java:76)
        at org.apache.felix.connect.PojoSRBundle.start(PojoSRBundle.java:153)
        ... 37 more
*ERROR* Cannot use configuration HelloBean for 
[org.osgi.service.cm.ManagedService, id=63, 
bundle=1/jar:file:/Users/thomas/camel/examples/camel-example-blueprint/target/test-bundles/blueprintbeanpropertiesoverridefromtesttest-1473353703335.jar!/]:
 No visibility to configuration bound to 
file:/Users/thomas/camel/examples/camel-example-blueprint/target/classes/
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 38.07 sec - in 
org.apache.camel.BlueprintBeanPropertiesOverrideFromTestTest
Running org.apache.camel.BlueprintBeanTest
Unable to start bundle: org.apache.felix.gogo.runtime [64]
org.osgi.framework.BundleException: Unable to start bundle
        at org.apache.felix.connect.PojoSRBundle.start(PojoSRBundle.java:163)
        at org.apache.felix.connect.PojoSR.startBundles(PojoSR.java:304)
        at org.apache.felix.connect.PojoSR.<init>(PojoSR.java:248)
        at org.apache.felix.connect.PojoSR.<init>(PojoSR.java:129)
        at 
org.apache.felix.connect.PojoServiceRegistryFactoryImpl.newPojoServiceRegistry(PojoServiceRegistryFactoryImpl.java:52)
        at 
org.apache.camel.test.blueprint.CamelBlueprintHelper.createBundleContext(CamelBlueprintHelper.java:173)
        at 
org.apache.camel.test.blueprint.CamelBlueprintHelper.createBundleContext(CamelBlueprintHelper.java:119)
        at 
org.apache.camel.test.blueprint.CamelBlueprintTestSupport.createBundleContext(CamelBlueprintTestSupport.java:127)
        at 
org.apache.camel.test.blueprint.CamelBlueprintTestSupport.setUp(CamelBlueprintTestSupport.java:237)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:483)
        at 
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
        at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
        at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
        at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
        at 
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
        at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:367)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:274)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
        at 
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:161)
        at 
org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
        at 
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
        at 
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
Caused by: java.lang.IllegalStateException: Thread Print Stream already set
        at 
org.apache.felix.gogo.runtime.threadio.ThreadIOImpl.start(ThreadIOImpl.java:49)
        at 
org.apache.felix.gogo.runtime.activator.Activator.start(Activator.java:76)
        at org.apache.felix.connect.PojoSRBundle.start(PojoSRBundle.java:153)
        ... 37 more
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 7.425 sec - in 
org.apache.camel.BlueprintBeanTest

Results :

Tests run: 3, Failures: 0, Errors: 0, Skipped: 0

[INFO]
[INFO] --- maven-bundle-plugin:3.2.0:manifest (bundle-manifest) @ 
camel-example-blueprint ---
[WARNING] Manifest 
org.apache.camel:camel-example-blueprint:bundle:2.18.0-SNAPSHOT : Unused 
Import-Package instructions: [org.apache.camel.*, org.springframework.ws.*, 
org.springframework.xml.*, org.springframework.*, org.apache.commons.logging.*, 
org.apache.cxf.*, org.apache.qpid.*, org.apache.abdera.*, 
org.apache.commons.httpclient.*, org.apache.velocity.*, org.apache.xmlbeans.*, 
org.eclipse.jetty.*, com.thoughtworks.xstream.*, org.antlr.stringtemplate.*, 
org.ccil.cowan.tagsoup.*, org.mortbay.cometd.*, org.slf4j.*, net.sf.flatpack.*, 
net.sf.saxon.*, freemarker.*, javax.persistence.*, org.apache.lucene.*, 
org.apache.solr.*]
[INFO]
[INFO] --- maven-bundle-plugin:3.2.0:bundle (default-bundle) @ 
camel-example-blueprint ---
[WARNING] Bundle 
org.apache.camel:camel-example-blueprint:bundle:2.18.0-SNAPSHOT : No 
translation found for macro: greeting
[WARNING] Bundle 
org.apache.camel:camel-example-blueprint:bundle:2.18.0-SNAPSHOT : No 
translation found for macro: body
[WARNING] Bundle 
org.apache.camel:camel-example-blueprint:bundle:2.18.0-SNAPSHOT : Unused 
Import-Package instructions: [org.springframework.ws.*, 
org.springframework.xml.*, org.springframework.*, org.apache.commons.logging.*, 
org.apache.cxf.*, org.apache.qpid.*, org.apache.abdera.*, 
org.apache.commons.httpclient.*, org.apache.velocity.*, org.apache.xmlbeans.*, 
org.eclipse.jetty.*, com.thoughtworks.xstream.*, org.antlr.stringtemplate.*, 
org.ccil.cowan.tagsoup.*, org.mortbay.cometd.*, org.slf4j.*, net.sf.flatpack.*, 
net.sf.saxon.*, freemarker.*, javax.persistence.*, org.apache.lucene.*, 
org.apache.solr.*]
[INFO]
[INFO] --- maven-site-plugin:3.5.1:attach-descriptor (attach-descriptor) @ 
camel-example-blueprint ---
[INFO]
[INFO] --- maven-failsafe-plugin:2.19.1:integration-test (default) @ 
camel-example-blueprint ---

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running org.apache.camel.itest.BlueprintBeanIT
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.392 sec <<< 
FAILURE! - in org.apache.camel.itest.BlueprintBeanIT
initializationError(org.apache.camel.itest.BlueprintBeanIT)  Time elapsed: 0.01 
sec  <<< ERROR!
org.ops4j.pax.exam.TestContainerException: 
java.lang.reflect.InvocationTargetException
        at 
org.apache.camel.itest.BlueprintBeanIT.configure(BlueprintBeanIT.java:60)

Running org.apache.camel.itest.BlueprintBeanPropertiesOverrideFromFileIT
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.029 sec <<< 
FAILURE! - in org.apache.camel.itest.BlueprintBeanPropertiesOverrideFromFileIT
initializationError(org.apache.camel.itest.BlueprintBeanPropertiesOverrideFromFileIT)
  Time elapsed: 0.001 sec  <<< ERROR!
org.ops4j.pax.exam.TestContainerException: 
java.lang.reflect.InvocationTargetException
        at 
org.apache.camel.itest.BlueprintBeanPropertiesOverrideFromFileIT.configure(BlueprintBeanPropertiesOverrideFromFileIT.java:76)

Running org.apache.camel.itest.BlueprintBeanPropertiesOverrideFromTestIT
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.015 sec <<< 
FAILURE! - in org.apache.camel.itest.BlueprintBeanPropertiesOverrideFromTestIT
initializationError(org.apache.camel.itest.BlueprintBeanPropertiesOverrideFromTestIT)
  Time elapsed: 0.001 sec  <<< ERROR!
org.ops4j.pax.exam.TestContainerException: 
java.lang.reflect.InvocationTargetException
        at 
org.apache.camel.itest.BlueprintBeanPropertiesOverrideFromTestIT.configure(BlueprintBeanPropertiesOverrideFromTestIT.java:90)


Results :

Tests in error:
  BlueprintBeanIT.initializationError » TestContainer 
java.lang.reflect.Invocati...
  BlueprintBeanPropertiesOverrideFromFileIT.initializationError » TestContainer 
...
  BlueprintBeanPropertiesOverrideFromTestIT.initializationError » TestContainer 
...

Tests run: 3, Failures: 0, Errors: 3, Skipped: 0

[INFO]
[INFO] --- ianal-maven-plugin:1.0-alpha-1:verify-legal-files (default) @ 
camel-example-blueprint ---
[INFO] Checking legal files in: camel-example-blueprint-2.18.0-SNAPSHOT.jar
[INFO]
[INFO] --- maven-failsafe-plugin:2.19.1:verify (default) @ 
camel-example-blueprint ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------


> Am 02.09.2016 um 17:12 schrieb Quinn Stevenson <qu...@pronoia-solutions.com>:
> 
> I’ve had a pull-request out there for a while 
> (https://github.com/apache/camel/pull/987 
> <https://github.com/apache/camel/pull/987>) - looking for some feedback on 
> the example project that attempts to show how to use camel-test-karaf.  I 
> could really use some input.  I think fleshing-out this example will help 
> refine the camel-test-karaf component itself.
> 
> 
>> On Aug 30, 2016, at 4:17 AM, Luca Burgazzoli <lburgazz...@gmail.com> wrote:
>> 
>> Hi Claus,
>> 
>> Yep, I'm going to close CAMEL-10274.
>> 
>> ---
>> Luca Burgazzoli
>> 
>> 
>> On Tue, Aug 30, 2016 at 11:25 AM, Claus Ibsen <claus.ib...@gmail.com> wrote:
>>> Hi Luca
>>> 
>>> I can see you found out about the problem and found a solution. So the
>>> examples should work again.
>>> 
>>> On Mon, Aug 29, 2016 at 12:39 PM, Luca Burgazzoli <lburgazz...@gmail.com> 
>>> wrote:
>>>> Hi Claus,
>>>> 
>>>> can you tell me something more about log4j2 vs jetty plugin ?
>>>> 
>>>> ---
>>>> Luca Burgazzoli
>>>> 
>>>> 
>>>> On Sun, Aug 28, 2016 at 11:28 AM, Claus Ibsen <claus.ib...@gmail.com> 
>>>> wrote:
>>>>> Hi
>>>>> 
>>>>> Hope everybody had good summer vacation. I had my vacation in parts
>>>>> and have next week as PTO.
>>>>> 
>>>>> We should get started to close down on the upcoming Camel 2.18 release.
>>>>> 
>>>>> 
>>>>> There is some outstanding work (in no particular order)
>>>>> 
>>>>> 1)
>>>>> Finish the spring boot stuff with the starter components.
>>>>> Nicola comes back from PTO and will work on this.
>>>>> 
>>>>> 2)
>>>>> rest-dsl to support calling REST services. I am working on this and
>>>>> have some outstanding work still around binding and other
>>>>> improvements.
>>>>> 
>>>>> 3)
>>>>> Tidy up the log4j v2 upgrade. Some of the examples do not start with
>>>>> the jetty plugin.
>>>>> 
>>>>> 4)
>>>>> Migrate the last wiki pages to adoc files. There is not so many pages
>>>>> left and you can find a report when running camel-catalog build that
>>>>> output what is missing.
>>>>> 
>>>>> This will help us with a base-line for maintaining the documentation
>>>>> going forward in the source code adoc files instead of wiki, and we
>>>>> can then generate a new website and documentation for the following
>>>>> release (2.19 or 3.0) etc. But this is a discussion we should IMHO
>>>>> take post 2.18.
>>>>> 
>>>>> 5)
>>>>> camel-test-karaf module. This module is in the works but could use
>>>>> some review and finishing so its easier to use for end users.
>>>>> 
>>>>> Notice the existing camel-test-blueprint is still favored for doing
>>>>> unit tests which you can run fast and easily debug. The new
>>>>> camel-test-karaf is for running integration tests in a running karaf
>>>>> instance.
>>>>> 
>>>>> 6)
>>>>> We should look at the JIRA tickets that are assigned to 2.18.0 and try
>>>>> to fix / implement them, or move them to 2.18.1 or 2.19.0 for next
>>>>> releases.
>>>>> 
>>>>> 7)
>>>>> Keep an eye on the CI server to make sure the tests are green.
>>>>> https://builds.apache.org/view/A-D/view/Camel/
>>>>> 
>>>>> 
>>>>> If all goes well then hopefully in 2-3 weeks we are ready to cut the 
>>>>> 2.18.0 RC.
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> --
>>>>> Claus Ibsen
>>>>> -----------------
>>>>> http://davsclaus.com @davsclaus
>>>>> Camel in Action 2: https://www.manning.com/ibsen2
>>> 
>>> 
>>> 
>>> --
>>> Claus Ibsen
>>> -----------------
>>> http://davsclaus.com @davsclaus
>>> Camel in Action 2: https://www.manning.com/ibsen2
> 

Reply via email to