Petals SE Camel

Add metadata properties to the Camel Exchange about the incoming Petals Exchange

Details

  • Type: Improvement Request Improvement Request
  • Status: Resolved Resolved
  • Priority: Minor Minor
  • Resolution: Fixed
  • Affects Version/s: 0.5.1, 1.0.0
  • Fix Version/s: 0.5.2, 1.0.1
  • Component/s: None
  • Security Level: Public
  • Description:
    Hide

    When a Petals Exchange arrives into a Camel route, the newly created Camel Exchange could have extra properties usable by the route implementor to know more about the original incoming exchange.

    Following the usual way of doing that in Camel components, we should add the following properties to Camel exchanges:

    • "PetalsOriginalInterface": the interface (as a QName) returned by getInterface() on the Petals Exchange
    • "PetalsOriginalService": the service (as a QName) returned by getService() on the Petals Exchange
    • "PetalsOriginalEndpoint": the endpoint (as a ServiceEndpoint) returned by getEndpoint() on the Petals Exchange
    • "PetalsOriginalOperation": the operation (as a QName) returned by getOperation() on the Petals Exchange
    • "PetalsOriginalPattern": the MEP (as an URI) returned by getPattern() on the Petals Exchange

    We should also add all the existing properties of the Petals Exchange (message properties are already copied), prefixed by "PetalsOriginalProperty." (see also PETALSSECAMEL-22).

    Like with other Camel component, a constant should be declared in PetalsCamelComponent for each of these headers and prefix.

    Show
    When a Petals Exchange arrives into a Camel route, the newly created Camel Exchange could have extra properties usable by the route implementor to know more about the original incoming exchange. Following the usual way of doing that in Camel components, we should add the following properties to Camel exchanges:
    • "PetalsOriginalInterface": the interface (as a QName) returned by getInterface() on the Petals Exchange
    • "PetalsOriginalService": the service (as a QName) returned by getService() on the Petals Exchange
    • "PetalsOriginalEndpoint": the endpoint (as a ServiceEndpoint) returned by getEndpoint() on the Petals Exchange
    • "PetalsOriginalOperation": the operation (as a QName) returned by getOperation() on the Petals Exchange
    • "PetalsOriginalPattern": the MEP (as an URI) returned by getPattern() on the Petals Exchange
    We should also add all the existing properties of the Petals Exchange (message properties are already copied), prefixed by "PetalsOriginalProperty." (see also PETALSSECAMEL-22). Like with other Camel component, a constant should be declared in PetalsCamelComponent for each of these headers and prefix.
  • Environment:
    -

Activity

Hide
Christophe DENEUX added a comment - Wed, 3 Feb 2016 - 10:04:17 +0100 - edited

IMO, the property names should be prefixed with 'org.ow2.petals':

  • org.ow2.petals.PetalsOriginalInterface,
  • org.ow2.petals.PetalsOriginalService,
  • org.ow2.petals.PetalsOriginalEndpoint,
  • ...
Show
Christophe DENEUX added a comment - Wed, 3 Feb 2016 - 10:04:17 +0100 - edited IMO, the property names should be prefixed with 'org.ow2.petals':
  • org.ow2.petals.PetalsOriginalInterface,
  • org.ow2.petals.PetalsOriginalService,
  • org.ow2.petals.PetalsOriginalEndpoint,
  • ...
Hide
Victor NOËL added a comment - Wed, 3 Feb 2016 - 10:20:29 +0100

I agree but that is not the way things are done in Camel, they use the type of naming I chose.

Show
Victor NOËL added a comment - Wed, 3 Feb 2016 - 10:20:29 +0100 I agree but that is not the way things are done in Camel, they use the type of naming I chose.
Hide
Victor NOËL added a comment - Fri, 26 Feb 2016 - 10:05:42 +0100

changed "header" to "property"

Show
Victor NOËL added a comment - Fri, 26 Feb 2016 - 10:05:42 +0100 changed "header" to "property"

People

Dates

  • Created:
    Wed, 3 Feb 2016 - 09:32:15 +0100
    Updated:
    Fri, 4 Mar 2016 - 14:39:31 +0100
    Resolved:
    Wed, 3 Feb 2016 - 10:57:13 +0100