Skip to content

Instantly share code, notes, and snippets.

View bibryam's full-sized avatar
🏠
Working from home

Bilgin Ibryam bibryam

🏠
Working from home
View GitHub Profile
@bibryam
bibryam / InfinispanJTA
Created July 27, 2013 09:28
Infinispan JTA
public BasicCacheContainer basicCacheContainer() throws Throwable {
GlobalConfiguration glob = new GlobalConfigurationBuilder().nonClusteredDefault().build();
Configuration loc = new ConfigurationBuilder()
.transaction().transactionMode(TransactionMode.TRANSACTIONAL)
.transactionManagerLookup(new TransactionManagerLookup() {
@Override
public TransactionManager getTransactionManager() throws Exception {
return jtaTransactionManager.getTransactionManager();
}
@bibryam
bibryam / XADataSource
Created July 27, 2013 09:25
XADataSource
public AtomikosDataSourceBean atomikosDataSourceBean() throws Exception {
EmbeddedXADataSource ds = new EmbeddedXADataSource();
ds.setCreateDatabase("create");
ds.setDatabaseName("target/testdb");
ds.setUser("");
ds.setPassword("");
AtomikosDataSourceBean xaDataSource = new AtomikosDataSourceBean();
xaDataSource.setXaDataSource(ds);
xaDataSource.setUniqueResourceName("xaDerby");
@bibryam
bibryam / JtaTransactionManager
Created July 27, 2013 09:18
JtaTransactionManager with atomikos
<bean id="userTransaction" class="com.atomikos.icatch.jta.UserTransactionImp"/>
<bean id="userTransactionManager" class="com.atomikos.icatch.jta.UserTransactionManager"/>
<bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager">
<constructor-arg ref="userTransaction"/>
<constructor-arg ref="userTransactionManager"/>
</bean>
@bibryam
bibryam / CamelInfinispanConsumer
Created July 27, 2013 09:07
Camel Infinispan Consumer
<route>
<from uri="infinispan://localhost?cacheContainer=#cacheContainer&amp;caseName=orders&amp;eventTypes=CACHE_ENTRY_CREATED"/>
<filter>
<simple>${out.header.CamelInfinispanIsPre} == true</simple>
<to uri="log:com.mycompany.order?showHeaders=true"/>
</filter>
</route>
@bibryam
bibryam / CamelInfinispanProducer
Created July 27, 2013 09:06
Camel Infinispan Producer
<route>
<from uri="direct:orderCache"/>
<setHeader headerName="CamelInfinispanKey">
<simple>${in.header.orderId}</simple>
</setHeader>
<setHeader headerName="CamelInfinispanValue">
<simple>${in.header.orderTotal}</simple>
</setHeader>
<setHeader headerName="CamelInfinispanOperation">
<simple>CamelInfinispanOperationPut</simple>
@bibryam
bibryam / CamelInfispanTransactional
Created July 27, 2013 09:00
Camel Infispan Transactional Example
<route>
<from uri="restlet:/persons?restletMethod=POST"/>
<transacted/>
<!-- PERSIST TO DB -->
<to uri="sql:insert into person(firstName, lastName) values(:#firstName,:#lastName)?dataSource=#dataSource"/>
<!-- DAMN EXCEPTION THROWER-->
<filter>
<simple>${in.header.lastName} == "damn"</simple>
<?xml version="1.0" encoding="UTF-8"?>
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<route startupOrder="1">
<from uri="redis://localhost:6379?command=SUBSCRIBE&amp;channels=testChannel"/>
<to uri="mock:result"/>
</route>
<route startupOrder="2">
<from uri="direct:start"/>
<setHeader headerName="CamelRedis.Command">
<bean id="idempotentRepository" class="org.apache.camel.component.redis.processor.idempotent.RedisIdempotentRepository">
<constructor-arg value="test-repo"/>
</bean>
<route>
<from uri="direct:start"/>
<idempotentConsumer messageIdRepositoryRef="idempotentRepository">
<simple>${in.body.id}</simple>
<to uri="mock:result"/>
<?xml version="1.0" encoding="UTF-8"?>
<route>
<from uri="direct:start"/>
<setHeader headerName="CamelRedis.Command">
<constant>SET</constant>
</setHeader>
<setHeader headerName="CamelRedis.Key">
<constant>keyOne</constant>
</setHeader>
<setHeader headerName="CamelRedis.Value">
@bibryam
bibryam / camel-jmx-polling
Created November 12, 2012 14:22
Camel JMX Polling route
<route>
<from uri="timer://jmxMonitoringTimer?fixedRate=true&amp;period=10000"/>
<process ref="jmxMetricReader" />
<camel:to uri="aws-cw://www.livephotostream.com/context?accessKey=XXX&amp;secretKey=XXX"/>
</route>