[jboss-svn-commits] JBL Code SVN: r12317 - in labs/jbosslabs/trunk: stats-server and 5 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Jun 4 10:22:14 EDT 2007


Author: wrzep
Date: 2007-06-04 10:22:13 -0400 (Mon, 04 Jun 2007)
New Revision: 12317

Added:
   labs/jbosslabs/trunk/stats-server/
   labs/jbosslabs/trunk/stats-server/kosmos/
   labs/jbosslabs/trunk/stats-server/kosmos/build.properties.sample
   labs/jbosslabs/trunk/stats-server/kosmos/conf/
   labs/jbosslabs/trunk/stats-server/kosmos/conf/server/
   labs/jbosslabs/trunk/stats-server/kosmos/conf/server/classes/
   labs/jbosslabs/trunk/stats-server/kosmos/conf/server/classes/ehcache.xml
   labs/jbosslabs/trunk/stats-server/kosmos/conf/server/kosmos-services-servlet.xml
   labs/jbosslabs/trunk/stats-server/kosmos/conf/server/web.xml
   labs/jbosslabs/trunk/stats-server/kosmos/maven.xml
   labs/jbosslabs/trunk/stats-server/kosmos/to-copy/
   labs/jbosslabs/trunk/stats-server/kosmos/to-copy/kosmos-server.war
Log:
JBLAB-868



Property changes on: labs/jbosslabs/trunk/stats-server/kosmos
___________________________________________________________________
Name: svn:ignore
   + build.properties



Added: labs/jbosslabs/trunk/stats-server/kosmos/build.properties.sample
===================================================================
--- labs/jbosslabs/trunk/stats-server/kosmos/build.properties.sample	                        (rev 0)
+++ labs/jbosslabs/trunk/stats-server/kosmos/build.properties.sample	2007-06-04 14:22:13 UTC (rev 12317)
@@ -0,0 +1,6 @@
+# Path to JBoss AS
+local.server.dir=
+
+# Path to where Kosmos is to be deployed - you shouldn't
+# have to change that.
+local.deploy.dir=${local.server.dir}/server/default/deploy

Added: labs/jbosslabs/trunk/stats-server/kosmos/conf/server/classes/ehcache.xml
===================================================================
--- labs/jbosslabs/trunk/stats-server/kosmos/conf/server/classes/ehcache.xml	                        (rev 0)
+++ labs/jbosslabs/trunk/stats-server/kosmos/conf/server/classes/ehcache.xml	2007-06-04 14:22:13 UTC (rev 12317)
@@ -0,0 +1,10 @@
+<ehcache>
+  <diskStore path="java.io.tmpdir"/>
+
+  <!-- durations need to set longer than the "repeatInterval" property of the "serviceResultUpdateTrigger" bean -->
+  <defaultCache name="hu.midori.kosmos.server.defaultCache" maxElementsInMemory="1024" eternal="false"
+	  timeToIdleSeconds="180000" timeToLiveSeconds="18000" overflowToDisk="true" diskPersistent="true"/>
+
+  <cache name="hu.midori.kosmos.server.cache" maxElementsInMemory="1024" eternal="false"
+	  timeToIdleSeconds="180000" timeToLiveSeconds="180000" overflowToDisk="true" diskPersistent="true"/>
+</ehcache>

Added: labs/jbosslabs/trunk/stats-server/kosmos/conf/server/kosmos-services-servlet.xml
===================================================================
--- labs/jbosslabs/trunk/stats-server/kosmos/conf/server/kosmos-services-servlet.xml	                        (rev 0)
+++ labs/jbosslabs/trunk/stats-server/kosmos/conf/server/kosmos-services-servlet.xml	2007-06-04 14:22:13 UTC (rev 12317)
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
+
+<beans>
+  <!-- CC service -->
+  <bean id="ccService" class="hu.midori.kosmos.server.cc.CcServiceImpl">
+	<property name="store" ref="labsCachedDataStore"/>
+  </bean>
+
+  <bean id="ccServiceProxy" class="org.springframework.aop.framework.ProxyFactoryBean">
+	<property name="targetName" value="ccService"/>
+	<property name="interceptorNames">
+	  <list>
+		<value>serviceCachePointCutAdvisor</value>
+	  </list>
+	</property>
+  </bean>
+
+  <bean name="/cc-service" class="org.springframework.remoting.caucho.HessianServiceExporter">
+	<property name="service" ref="ccServiceProxy"/>
+	<property name="serviceInterface" value="hu.midori.kosmos.protocol.CcService"/>
+  </bean>
+
+  <!-- JIRA service -->
+  <bean id="jiraService" class="hu.midori.kosmos.server.jira.JiraWebCrawlingServiceImpl">
+	<property name="store" ref="labsCachedDataStore"/>
+  </bean>
+
+  <bean id="jiraServiceProxy" class="org.springframework.aop.framework.ProxyFactoryBean">
+	<property name="targetName" value="jiraService"/>
+	<property name="interceptorNames">
+	  <list>
+		<value>serviceCachePointCutAdvisor</value>
+	  </list>
+	</property>
+  </bean>
+
+  <bean name="/jira-service" class="org.springframework.remoting.caucho.HessianServiceExporter">
+	<property name="service" ref="jiraServiceProxy"/>
+	<property name="serviceInterface" value="hu.midori.kosmos.protocol.JiraService"/>
+  </bean>
+
+  <!-- SVN service -->
+  <bean id="svnService" class="hu.midori.kosmos.server.svn.SvnServiceImpl">
+	<property name="store" ref="labsCachedDataStore"/>
+  </bean>
+
+  <bean id="svnServiceProxy" class="org.springframework.aop.framework.ProxyFactoryBean">
+	<property name="targetName" value="svnService"/>
+	<property name="interceptorNames">
+	  <list>
+		<value>serviceCachePointCutAdvisor</value>
+	  </list>
+	</property>
+  </bean>
+
+  <bean name="/svn-service" class="org.springframework.remoting.caucho.HessianServiceExporter">
+	<property name="service" ref="svnServiceProxy"/>
+	<property name="serviceInterface" value="hu.midori.kosmos.protocol.SvnService"/>
+  </bean>
+
+  <!-- Service result POJO cache -->
+  <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
+	<property name="configLocation" value="classpath:ehcache.xml"/>
+  </bean>
+
+  <bean id="serviceResultCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
+	<property name="cacheManager" ref="cacheManager"/>
+	<property name="cacheName" value="hu.midori.kosmos.server.cache"/>
+  </bean>
+
+  <!-- Service result cache interceptor -->
+  <bean id="serviceCacheInterceptor" class="hu.midori.kosmos.server.MethodResultCacheInterceptor">
+	<property name="cache" ref="serviceResultCache" />
+  </bean>
+
+  <bean id="serviceCachePointCutAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
+	<property name="advice">
+	  <ref local="serviceCacheInterceptor"/>
+	</property>
+	<property name="patterns">
+	  <list>
+		<value>hu.midori.kosmos.protocol.CcService.getProjects</value>
+		<value>hu.midori.kosmos.protocol.JiraService.getProjects</value>
+		<value>hu.midori.kosmos.protocol.SfService.getFileReleases</value>
+		<value>hu.midori.kosmos.protocol.SvnService.getRepositories</value>
+	  </list>
+	</property>
+  </bean>
+
+  <!-- Service result update scheduler -->
+  <bean name="serviceResultUpdaterJob" class="org.springframework.scheduling.quartz.JobDetailBean">
+	<property name="jobClass" value="hu.midori.kosmos.server.ServiceResultUpdaterJob"/>
+	<property name="jobDataAsMap">
+	  <map>
+		<entry key="cache" value-ref="serviceResultCache"/>
+	  </map>
+	</property>
+  </bean>
+
+  <bean id="serviceResultUpdateTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
+	<property name="jobDetail" ref="serviceResultUpdaterJob"/>
+	<property name="cronExpression" value="0 0 0 * * ?"/> <!-- update at midnight -->
+  </bean>
+
+  <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
+	<property name="triggers">
+	  <list>
+		<ref bean="serviceResultUpdateTrigger"/>
+	  </list>
+	</property>
+  </bean>
+
+  <!-- Labs cached data store -->
+  <bean id="labsCachedDataStore" class="org.jboss.kosmos.LabsCachedDataStore">
+  </bean>
+
+</beans>

Added: labs/jbosslabs/trunk/stats-server/kosmos/conf/server/web.xml
===================================================================
--- labs/jbosslabs/trunk/stats-server/kosmos/conf/server/web.xml	                        (rev 0)
+++ labs/jbosslabs/trunk/stats-server/kosmos/conf/server/web.xml	2007-06-04 14:22:13 UTC (rev 12317)
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<!DOCTYPE web-app
+    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
+    "http://java.sun.com/dtd/web-app_2_3.dtd">
+    
+<web-app>  
+  <display-name>Kosmos services servlet</display-name>
+  <description>Server component of Kosmos</description>
+  
+  <context-param>
+    <param-name>webdav.url</param-name>
+    <param-value>https://labs-stats:jbossforgeadmin@cms.labs.jboss.com/trunk/forge/portal-content/kosmos/images</param-value>
+  </context-param>  
+  <context-param>
+    <param-name>webdav.user</param-name>
+    <param-value>labs-stats</param-value>
+  </context-param>  
+  <context-param>
+    <param-name>webdav.password</param-name>
+    <param-value>jbossforgeadmin</param-value>
+  </context-param>  
+  <context-param>
+    <param-name>webdav.clientUrl</param-name>
+    <param-value>/file-access/kosmos/images</param-value>
+  </context-param>  
+  
+  <servlet>
+    <servlet-name>kosmos-services</servlet-name>
+    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
+    <load-on-startup>1</load-on-startup>
+  </servlet>
+  <servlet-mapping>
+    <servlet-name>kosmos-services</servlet-name>
+    <url-pattern>/kosmos-services/*</url-pattern>
+  </servlet-mapping>
+</web-app>

Added: labs/jbosslabs/trunk/stats-server/kosmos/maven.xml
===================================================================
--- labs/jbosslabs/trunk/stats-server/kosmos/maven.xml	                        (rev 0)
+++ labs/jbosslabs/trunk/stats-server/kosmos/maven.xml	2007-06-04 14:22:13 UTC (rev 12317)
@@ -0,0 +1,43 @@
+<!-- 
+  JBoss, the OpenSource J2EE webOS
+  Distributable under LGPL license.
+  See terms of license at gnu.org. 
+ -->
+<project xmlns:j="jelly:core" xmlns:ant="jelly:ant" xmlns:u="jelly:util">
+    <goal name="all">
+    		<attainGoal name="clean"/>
+    		<attainGoal name="deploy"/>
+    </goal>
+    
+    <goal name="clean">
+ 		<ant:delete dir="${local.deploy.dir}/kosmos-server.war" />
+    </goal>
+
+	<goal name="deploy">
+		<ant:unzip src="to-copy/kosmos-server.war" dest="target/kosmos-server.war" overwrite="true" />
+		
+		<!-- Copying configuration files -->
+		<ant:copy todir="target/kosmos-server.war/WEB-INF" overwrite="true">
+		    <ant:fileset dir="conf/server">
+			<ant:filename name="**/*" />
+		    </ant:fileset>
+		</ant:copy>		
+
+		<!-- Delete log4j jars to avoid classloader issues -->
+		<ant:delete file="target/kosmos-server.war/WEB-INF/lib/log4j-1.2.8.jar" />
+		
+		<!-- Deploying new packages -->
+		<ant:copy todir="${local.deploy.dir}" overwrite="true">
+		    <ant:fileset dir="target">
+				<ant:filename name="kosmos-server*/**" />
+		    </ant:fileset>
+		</ant:copy>
+	</goal>
+
+<!-- 
+	<ant:copy todir="${local.deploy.dir}"
+              file="${maven.repo.local}/com.lowagie/jars/itext-1.4.jar"
+	      overwrite="true" />
+	       -->
+    
+</project>

Added: labs/jbosslabs/trunk/stats-server/kosmos/to-copy/kosmos-server.war
===================================================================
(Binary files differ)


Property changes on: labs/jbosslabs/trunk/stats-server/kosmos/to-copy/kosmos-server.war
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream




More information about the jboss-svn-commits mailing list