デフォルトでは、SEDA コンポーネントは常に LinkedBlockingQueue をインスタンス化しますが、別の実装を使用できます。独自の BlockingQueue 実装を参照できます。この場合、サイズオプションは使用されません。
<bean id="arrayQueue" class="java.util.ArrayBlockingQueue">
<constructor-arg index="0" value="10" ><!-- size -->
<constructor-arg index="1" value="true" ><!-- fairness -->
</bean>
<!-- ... and later -->
<from>seda:array?queue=#arrayQueue</from>
<bean id="arrayQueue" class="java.util.ArrayBlockingQueue">
<constructor-arg index="0" value="10" ><!-- size -->
<constructor-arg index="1" value="true" ><!-- fairness -->
</bean>
<!-- ... and later -->
<from>seda:array?queue=#arrayQueue</from>
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
または、BlockingQueueFactory 実装を参照できます。LinkedBlockingQueueFactory、ArrayBlockingQueueFactory、および PriorityBlockingQueueFactory の 3 つの実装が提供されています。
<bean id="priorityQueueFactory" class="org.apache.camel.component.seda.PriorityBlockingQueueFactory">
<property name="comparator">
<bean class="org.apache.camel.demo.MyExchangeComparator" />
</property>
</bean>
<!-- ... and later -->
<from>seda:priority?queueFactory=#priorityQueueFactory&size=100</from>
<bean id="priorityQueueFactory" class="org.apache.camel.component.seda.PriorityBlockingQueueFactory">
<property name="comparator">
<bean class="org.apache.camel.demo.MyExchangeComparator" />
</property>
</bean>
<!-- ... and later -->
<from>seda:priority?queueFactory=#priorityQueueFactory&size=100</from>
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow