Community

Annotation based Action classes

reply from Keith Babo in JBoss ESB Development - View the full discussion

I think everyone agrees that this is a great thing to do.  A few pieces of feedback:

 

o It would be great to get a basic wiki page/article built around this functionality.  You have most of the content already between this thread and the implementation in your workspace.  It's just easier to get a sense of the scope of the feature when it's all in one place.  We will need this anyway to document the feature for users.

 

o  Looks like this is the current list of supported annotations.  Did I miss any?

  • @OnExceptionMethod
  • @OnSuccessMethod
  • @ProcessMethod
  • @ConfigProperty
  • @Destroy
  • @Initialize
  • @BodyParam
  • @PropertyParam

 

o Recommend dropping "Method" from the above annotion names.

 

o We could take this one step further and add an @Action annotation at the class level.  This would eliminate the need to extend AbstractActionPipelineProcessor or implement the Lifecycle and PipelineProcessor interfaces; you have already defined annotations for all the methods on these interfaces.  All we need to do is add a basic delegate implementation that would wrap the annotated action and dispatch to annotated methods as appropriate.

 

o I did not see @BodyParam and @PropertyParam in the fisheye changeset you published.  In fact, they are not in your workspace either AFAICT.  Do I have to pay extra for those? ;-)  I checked out the processing in BeanContainerAction and it looks like you support both a "name" property in the annotation as well as search based on the annotated parameter's type.  For examples, I would use the former syntax as it's much clearer where the body and property are coming from.

Reply to this message by going to Community

Start a new discussion in JBoss ESB Development at Community