[ 
https://issues.apache.org/jira/browse/CAMEL-5483?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13444156#comment-13444156
 ] 

Babak Vahdat commented on CAMEL-5483:
-------------------------------------

Hi [~bibryam],

Just received your question though a JIRA mail notification... I'm definitely 
the wrong guy to answer about this in detail as I'm a OSGi newbie (no OSGi-food 
@ breakfast :-)) but let me try and maybe [~njiang] will correct/complement 
what I say. If the dependencies of a new Camel component are already OSGi 
complaint then there's no need to ask/order a bundle for it, as an example 
consider concurrentlinkedhashmap dependency of camel-core itself which is 
already OSGi ready (look at it's MANIFEST.MF). Otherwise we should ask for a 
SMX bundle through a JIRA ticket, as an example I did it once: SMX4-1153

And concerning features.xml you asked about... Good question! I just checked 
how many Camel features are out there which is currently only 121:

{code}
~/dev/workspace/camel/platforms/karaf/features/src/main/resources>grep 
"<feature name='camel-" features.xml | wc
     121     604   11477
{code}

But we've got more than 130 components! So what about the rest? [~njiang] am I 
wrong here to expect more karaf features?

                
> Component for neo4j
> -------------------
>
>                 Key: CAMEL-5483
>                 URL: https://issues.apache.org/jira/browse/CAMEL-5483
>             Project: Camel
>          Issue Type: Improvement
>            Reporter: stephen samuel
>            Assignee: Willem Jiang
>            Priority: Minor
>             Fix For: 2.11.0
>
>         Attachments: camel-neo4j.patch, remove-int-tests.patch
>
>
> I have created a component for neo4j. It is a producer only and it allows you 
> to create / remove nodes and relationships.
> ------ read me ----------
> camel-neo4j
> ========
> The camel-neo4j component allows you to treat Neo4j as a camel producer 
> endpoint. This means you can use this component in to() calls but not from() 
> calls. This component is backed by the Spring Data Neo4j Library.
> * As a producer, can create or remove nodes, and create or remove 
> relationships.
> * Can support as many endpoints as required, eg for multiple databases across 
> multiple instances.
> * Headers set for node id (for created nodes), relationship id (for created 
> relationships)
> How to Use
> ==========
> You can use neo4j as an endpoint with the following URI.
> `neo4j:http://hostname[:port]/database`
> Then you need to set a header on each message, one of the following enum types
> `     CREATE_NODE,
>       REMOVE_NODE,
>       CREATE_RELATIONSHIP,
>       REMOVE_RELATIONSHIP`
> Eg,
> `exchange.getIn().setHeader(Neo4jEndpoint.HEADER_OPERATION, 
> Neo4jOperation.CREATE_NODE);`
> The body of the message is used to determine the node or relationship to 
> manipulate. The following body types are supported:
> For CREATE_NODE:
> * null body - create default node
> * Map body - create node with the properties set from the map
> For REMOVE_NODE:
> * Long or Integer - remove node using the body as the id
> * neo4j Node instance - remove the node specified by that instance
>  For CREATE_RELATIONSHIP:
> * SpringDataRelationship - create relationship specified by any @NodeEntity 
> annoted Spring entities.
> * BasicRelationship - create relationship specified by the neo4j node types
> For REMOVE_RELATIONSHIP:
> * Long or Integer - remove relationship using the body as the id
> * SpringDataRelationship - remove relationship specified by the @NodeEntity 
> annoted Spring entities.
> * BasicRelationship - remove relationship specified by the neo4j node types
> Tests
> =====
> camel-neo4j has a complete set of unit tests. In addition there are some 
> integration tests that require you to run a local instance of neo4j. By 
> default the tests will look at localhost:7474 on 
> http://localhost:7474/db/data/
> - Initial contribution by Stephen Samuel.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to