Producers, consumers, and channels specify required qualities of service using SCA policy.  

Transactional Receive

A JMS consumer can be configured to receive an event in the context of a transaction using the @ManagedTransaction or requires attribute in a composite.

Synchronous

By default, channels propagate events asynchronously. In some cases, it is useful to maintain event ordering by requiring that a channel dispatch events synchronously. In Fabric3, local channels can be configured to dispatch synchronously by setting the requires attribute:

<composite xmlns:f3="urn:fabric3.org" ...>

   <channel name="SomeChannel" requires="f3:synchronous"/>

</composite>

Durable

NonPersistent