Kann eine Camel Bean mit zusätzlichen Daten versorgt oder injiziert werden?Java

Java-Forum
Guest
 Kann eine Camel Bean mit zusätzlichen Daten versorgt oder injiziert werden?

Post by Guest »

Laut Camels Dokument verfügt die Bean-Komponente über einen Abfrageparameter parameters. Wenn ich die Parameterbindung richtig verstehe, funktioniert das nur mit Bean-Handler-Methoden, oder?
Jetzt mit einer Klasse:

Code: Select all

class MyBean implements Consumer {

String id;

MyBean( final String id ) {
this.id = id;
}

MyBean setId( final String id ) {
this.id = id;
return this;
}

@Override
@Handler
public void accept(Object o) {
// ...
}
Ist es möglich, so etwas zu tun:
  • Attribute mit einem assoziativen Array oder einer Karte festzulegen:

Code: Select all

String[] attributes = { "id", "My bean's id.", "attr2", "value2", ... };
.bean( MyBean.class, attributes )
.bean( MyBean.class, Map.of( "id", "My bean's id.", "attr2", "value2", ... ) )
  • oder über (positionelle) Konstruktorparameter:

Code: Select all

.bean( MyBean.class, { "MyBean()", "My bean's id." } )
  • oder durch Aufrufen von Methoden:

Code: Select all

.bean( MyBean.class, { "setId(\"My bean's id.\")" } )
  • oder mit URIs:

Code: Select all

.to( "bean:MyBean?id=\"My bean's id.\"&ctorArgs=\"My bean's id.\"&method=setId(\"My bean's id.\")" )

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post