usergrid-core.0.0.12.source-code.usergrid-core-context.xml Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of usergrid-core Show documentation
Show all versions of usergrid-core Show documentation
Core services for Usergrid system.
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p" xmlns:hz="http://www.hazelcast.com/schema/config" xmlns:aop="http://www.springframework.org/schema/aop" xsi:schemaLocation=" http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd"> <context:component-scan base-package="org.usergrid.persistence" /> <context:annotation-config /> <bean id="propertyPlaceholderConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="properties" ref="properties" /> <property name="systemPropertiesModeName"> <value>SYSTEM_PROPERTIES_MODE_OVERRIDE</value> </property> </bean> <!-- The Time Resolution used for the cluster --> <bean id="microsecondsTimeResolution" class="me.prettyprint.cassandra.service.clock.MicrosecondsClockResolution" /> <bean id="traceTagManager" class="org.usergrid.persistence.cassandra.util.TraceTagManager"/> <bean id="traceTagReporter" class="org.usergrid.persistence.cassandra.util.Slf4jTraceTagReporter"/> <bean id="taggedOpTimer" class="org.usergrid.persistence.cassandra.util.TaggedOpTimer"> <constructor-arg ref="traceTagManager"/> </bean> <bean id="cassandraHostConfigurator" class="me.prettyprint.cassandra.service.CassandraHostConfigurator"> <constructor-arg value="${cassandra.url}" /> <property name="clockResolution" ref="microsecondsTimeResolution" /> <property name="opTimer" ref="taggedOpTimer"/> </bean> <bean id="cassandraCluster" class="me.prettyprint.cassandra.service.ThriftCluster"> <constructor-arg value="${cassandra.cluster}" /> <constructor-arg ref="cassandraHostConfigurator" /> </bean> <!-- bean name="lockManager" class="org.usergrid.locking.zookeeper.ZooKeeperLockManagerImpl" /> --> <bean name="lockManager" class="org.usergrid.locking.zookeeper.NoOpLockManagerImpl" /> <bean id="cassandraService" class="org.usergrid.persistence.cassandra.CassandraService" init-method="init"> <constructor-arg ref="properties" /> <constructor-arg ref="cassandraCluster" /> <constructor-arg ref="cassandraHostConfigurator" /> <constructor-arg ref="lockManager" /> <property name="consistencyLevelPolicy" ref="consistencyLevelPolicy"/> </bean> <bean name="consistencyLevelPolicy" class="me.prettyprint.cassandra.model.ConfigurableConsistencyLevel"> <property name="defaultReadConsistencyLevel" value="${cassandra.readcl}"/> <property name="defaultWriteConsistencyLevel" value="${cassandra.writecl}"/> </bean> <bean id="entityManagerFactory" class="org.usergrid.persistence.cassandra.EntityManagerFactoryImpl"> <constructor-arg ref="cassandraService" /> <constructor-arg ref="counterUtils"/> <constructor-arg value="${usergrid.counter.skipAggregate}"/> </bean> <bean id="queueManagerFactory" class="org.usergrid.mq.cassandra.QueueManagerFactoryImpl"> <constructor-arg ref="cassandraService" /> <constructor-arg ref="counterUtils"/> </bean> <bean id="simpleBatcher" class="com.usergrid.count.SimpleBatcher"> <constructor-arg value="1"/> <property name="batchSubmitter" ref="batchSubmitter"/> <property name="batchSize" value="${usergrid.counter.batch.size}"/> </bean> <bean id="batchSubmitter" class="com.usergrid.count.CassandraSubmitter"> <constructor-arg ref="cassandraCounterStore"/> </bean> <bean id="cassandraCounterStore" class="com.usergrid.count.CassandraCounterStore"> <constructor-arg> <bean id="keyspace" factory-bean="cassandraService" factory-method="getUsergridApplicationKeyspace"/> </constructor-arg> </bean> <bean id="counterUtils" class="org.usergrid.persistence.cassandra.CounterUtils"> <property name="batcher" ref="simpleBatcher"/> <property name="counterType" value="n"/> </bean> <bean id="usergridSystemMonitor" class="org.usergrid.system.UsergridSystemMonitor"> <constructor-arg value="${usergrid.version.build}"/> <constructor-arg ref="cassandraCluster"/> </bean> <bean id="indexBucketLocator" class="org.usergrid.persistence.cassandra.SimpleIndexBucketLocatorImpl"> <constructor-arg value="${usergrid.index.defaultbucketsize}"/> </bean> <bean id="mailUtils" class="org.usergrid.utils.MailUtils" /> <bean id="entityManager" class="org.usergrid.persistence.cassandra.EntityManagerImpl" scope="prototype"/> <bean id="relationManager" class="org.usergrid.persistence.cassandra.RelationManagerImpl" scope="prototype"/> <bean id="traceTagAspect" class="org.usergrid.persistence.cassandra.util.TraceTagAspect"/> <aop:config> <aop:aspect id="traceParticipant" ref="traceTagAspect"> <!-- pointcut on the prescense of the TraceParticipant annotation only --> <aop:pointcut id="emTraceParticipant" expression="execution(* org.usergrid.persistence.cassandra.EntityManagerImpl.*(..)) and @annotation(org.usergrid.persistence.cassandra.util.TraceParticipant)"/> <aop:around pointcut-ref="emTraceParticipant" method="applyTrace"/> </aop:aspect> </aop:config> </beans>