Filewatcher File Search
FTP Search
  
Directory (beta)
  
Content Search (beta)
   
pkg://jakarta-turbine-jcs-1.0-0.20031216dev.3jpp.src.rpm:677601/jakarta-turbine-jcs-dev-20031216.tar.gz  info  downloads

jakarta-turbine-jcs-dev-20031216/0040775000246400000000000000000007767563422015720 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/0040775000246400000000000000000007767563422016507 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/aspect/0040775000246400000000000000000007767563417017772 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/aspect/org/0040775000246400000000000000000007767563417020561 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/aspect/org/apache/0040775000246400000000000000000007767563417022002 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/aspect/org/apache/jcs/0040775000246400000000000000000007767563417022561 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/aspect/org/apache/jcs/TraceJCS.aj0100664000246400000000000000736207454074770024470 0ustar  henningwheelpackage org.apache.jcs;

import java.io.PrintStream;
import org.apache.log4j.Category;

/**
 * This class provides support for printing trace messages into a
 * log4j category.
 * 
 * The messages are appended with the string representation of the objects
 * whose constructors and methods are being traced.
 *
 * @author <a href="mailto:jvanzyl@zenplex.com">Jason van Zyl</a>
 * @author <a href="mailto:james@jamestaylor.org">James Taylor</a>
 * @version $Id: TraceJCS.aj,v 1.1.1.1 2002/04/07 16:55:20 jvanzyl Exp $
 */
public aspect TraceJCS
{
    /*
     * Functional part
     */

    /**
     * There are 3 trace levels (values of TRACELEVEL):
     * 
     * 0 - No messages are printed
     * 1 - Trace messages are printed, but there is no indentation 
     *     according to the call stack
     * 2 - Trace messages are printed, and they are indented
     *     according to the call stack
     */
    public static int TRACELEVEL = 2;
    
    /**
     * Tracks the call depth for indented traces made according
     * to the structure of the stack.
     */
    protected static int callDepth = 0;
    
    /**
     * Log4j category used for tracing.
     */
    private static Category log = Category.getInstance( TraceJCS.class );
    
    /**
     * Tracing method used in before advice.
     */
    protected static void traceEntry(String str, Object o) 
    {
        if (TRACELEVEL == 0) 
        {
            return;
        }            
        
        if (TRACELEVEL == 2) 
        {
            callDepth++;
        }            
        printEntering(str + ": " + o.toString());
    }

    /**
     * Tracing method used in after advice.
     */
    protected static void traceExit(String str, Object o) 
    {
        if (TRACELEVEL == 0) 
        {
            return;
        }            
        
        printExiting(str + ": " + o.toString());
        
        if (TRACELEVEL == 2) 
        {
            callDepth--;
        }            
    }
    
    private static void printEntering(String str) 
    {
        log.debug(indent() + "--> " + str);
    }

    private static void printExiting(String str) 
    {
        log.debug(indent() + "<-- " + str);
    }

    private static String indent() 
    {
        StringBuffer sb = new StringBuffer();
        
        for (int i = 0; i < callDepth; i++)
        {
            sb.append("  ");
        }            
    
        return sb.toString(); 
    }

    /*
     * Crosscut part
     */

    /**
     * JCS Application classes
     */
    pointcut myClass(Object obj): this(obj) && 
        (within(org.apache.stratum.jcs..*)); 

    /**
     * The constructors in those classes.
     */
    pointcut myConstructor(Object obj): myClass(obj) && execution(new(..));
    
    /**
     * The methods of those classes.
     */
    pointcut myMethod(Object obj): myClass(obj) && 
        execution(* *(..)) && !execution(String toString());

    /**
     * Before advice that will execute before a constructor
     * is invoked.
     */
    before(Object obj): myConstructor(obj) 
    {
        traceEntry("" + thisJoinPointStaticPart.getSignature(), obj);
    }
    
    /**
     * After advice that will execute after a constructor
     * a constructor has been invoked.
     */
    after(Object obj): myConstructor(obj) 
    {
        traceExit("" + thisJoinPointStaticPart.getSignature(), obj);
    }
    
    /**
     * Before advice that will execute before a method
     * is invoked.
     */
    before(Object obj): myMethod(obj) 
    {
        traceEntry("" + thisJoinPointStaticPart.getSignature(), obj);
    }
    
    /**
     * After advice that will execute after a method
     * has been invoked.
     */
    after(Object obj): myMethod(obj) 
    {
        traceExit("" + thisJoinPointStaticPart.getSignature(), obj);
    }
}
jakarta-turbine-jcs-dev-20031216/src/aspect/GetTiming.aj0100664000246400000000000000313107454074770022160 0ustar  henningwheelimport org.aspectj.lang.*;

aspect GetTiming {

//   static final void println(String s){ System.out.println(s); }

//   pointcut allExecs(): !within(GetTiming) && cflow(this(com.realm.arch.proxy.PageProxyServlet)) && execution(* *(..));

  pointcut allExecs():

//       !within(GetTiming)
     !withincode(void org.apache.jcs.utils.log.Logger.*(..))
     && !withincode(void org.apache.jcs.utils.log.Logger.*(..))
   && (cflow(this(org.apache.jcs.engine.control.Cache))
//    || cflow(this(org.apache.jcs.engine.group.GroupCache))
    )
//    && !withincode(* *.getValueObj(..))
//
//    && execution(* *(..));

      && execution(* *(..));


   Object around(): allExecs() {
      long start = System.currentTimeMillis();
      String s = thisJoinPointStaticPart.getSignature().getName()
        + " in class: "
        + thisJoinPointStaticPart.getSignature().getDeclaringType().getName();
      	//+ printParameters(thisJoinPoint);
      Object result = proceed();
      long delta = System.currentTimeMillis() - start;
      if (delta >= 0) {
        System.out.println(delta+ " ms: "+s);
      }
      return result;
   }

/*
   static private void printParameters(JoinPoint jp) {
      System.out.println("Arguments: " );
      Object[] args = jp.getArgs();
      String[] names = ((CodeSignature)jp.getSignature()).getParameterNames();
      Class[] types = ((CodeSignature)jp.getSignature()).getParameterTypes();
      for (int i = 0; i < args.length; i++) {
	      System.out.println("  "  + i + ". " + names[i] +
	     " : " +            types[i].getName() +
	     " = " +            args[i]);
      }
   }
*/

}
jakarta-turbine-jcs-dev-20031216/src/aspect/JCSTrace.aj0100664000246400000000000000166707454074770021703 0ustar  henningwheel

aspect JCSTrace {
    /**
     * Application classes.
     */
     // turned it off
    pointcut myClass(): !within(org.apache.stratum.*) ;
    /**
     * The constructors in those classes.
     */
    pointcut myConstructor(): myClass() && execution(new(..));
    /**
     * The methods of those classes.
     */
    pointcut myMethod(): myClass() && execution(* *(..));

    /**
     * Prints trace messages before and after executing constructors.
     */
    before (): myConstructor() {
        Trace.traceEntry("" + thisJoinPointStaticPart.getSignature());
    }
    after(): myConstructor() {
        Trace.traceExit("" + thisJoinPointStaticPart.getSignature());
    }

    /**
     * Prints trace messages before and after executing methods.
     */
    before (): myMethod() {
        Trace.traceEntry("" + thisJoinPoint.getSignature());
    }
    after(): myMethod() {
        Trace.traceExit("" + thisJoinPoint.getSignature());
    }

}

jakarta-turbine-jcs-dev-20031216/src/aspect/ShowSlow.aj0100664000246400000000000000313307454074770022060 0ustar  henningwheelimport org.aspectj.lang.*;

aspect ShowSlow {

//   static final void println(String s){ System.out.println(s); }

//   pointcut allExecs(): !within(GetTiming) && cflow(this(com.realm.arch.proxy.PageProxyServlet)) && execution(* *(..));

  pointcut allExecs():

//       !within(GetTiming)
     !withincode(void org.apache.jcs.utils.log.Logger.*(..))
     && !withincode(void org.apache.jcs.utils.log.Logger.*(..))
//  && (cflow(this(org.apache.jcs.engine.control.Cache))
//    || cflow(this(org.apache.jcs.engine.group.GroupCache))
//    )
//    && !withincode(* *.getValueObj(..))
//
//    && execution(* *(..));

      && execution(* *(..));


   Object around(): allExecs() {
      long start = System.currentTimeMillis();
      String s = thisJoinPointStaticPart.getSignature().getName()
        + " in class: "
        + thisJoinPointStaticPart.getSignature().getDeclaringType().getName();
      	//+ printParameters(thisJoinPoint);
      Object result = proceed();
      long delta = System.currentTimeMillis() - start;
      if (delta > 10) {
        System.out.println(delta+ " ms: "+s);
      }
      return result;
   }

/*
   static private void printParameters(JoinPoint jp) {
      System.out.println("Arguments: " );
      Object[] args = jp.getArgs();
      String[] names = ((CodeSignature)jp.getSignature()).getParameterNames();
      Class[] types = ((CodeSignature)jp.getSignature()).getParameterTypes();
      for (int i = 0; i < args.length; i++) {
	      System.out.println("  "  + i + ". " + names[i] +
	     " : " +            types[i].getName() +
	     " = " +            args[i]);
      }
   }
*/

}
jakarta-turbine-jcs-dev-20031216/src/aspect/Trace.aj0100664000246400000000000000447607454074770021344 0ustar  henningwheel/*

Copyright (c) Xerox Corporation 1998-2001.  All rights reserved.

Use and copying of this software and preparation of derivative works based
upon this software are permitted.  Any distribution of this software or
derivative works must comply with all applicable United States export control
laws.

This software is made available AS IS, and Xerox Corporation makes no warranty
about the software, its performance or its conformity to any specification.

|<---            this code is formatted to fit into 80 columns             --->|
|<---            this code is formatted to fit into 80 columns             --->|
|<---            this code is formatted to fit into 80 columns             --->|

*/


import java.io.PrintStream;

/**
 *
 * This class provides some basic functionality for printing trace messages
 * into a stream.
 *
 */
public class Trace {
    /**
     * There are 3 trace levels (values of TRACELEVEL):
     * 0 - No messages are printed
     * 1 - Trace messages are printed, but there is no indentation
     *     according to the call stack
     * 2 - Trace messages are printed, and they are indented
     *     according to the call stack
     */
    public static int TRACELEVEL = 0;
    protected static PrintStream stream = null;
    protected static int callDepth = 0;

    /**
     * Initialization.
     */
    public static void initStream(PrintStream s) {
        stream = s;
    }

    /**
     * Prints an "entering" message. It is intended to be called in the
     * beginning of the blocks to be traced.
     */
    public static void traceEntry(String str) {
        if (TRACELEVEL == 0) return;
        if (TRACELEVEL == 2) callDepth++;
        printEntering(str);
    }

    /**
     * Prints an "exiting" message. It is intended to be called in the
     * end of the blocks to be traced.
     */
    public static void traceExit(String str) {
        if (TRACELEVEL == 0) return;
        printExiting(str);
        if (TRACELEVEL == 2) callDepth--;
    }

    private static void printEntering(String str) {
        printIndent();
        stream.println("--> " + str);
    }

    private static void printExiting(String str) {
        printIndent();
        stream.println("<-- " + str);
    }

    private static void printIndent() {
        for (int i = 0; i < callDepth; i++)
            stream.print("  ");
    }
}
jakarta-turbine-jcs-dev-20031216/src/conf/0040775000246400000000000000000007767563417017440 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/conf/JCSAdminServlet.velocity.properties0100664000246400000000000000045707561767173026350 0ustar  henningwheelruntime.log.logsystem.class = org.apache.velocity.runtime.log.AvalonLogSystem
runtime.log.logsystem.log4j.category = org.apache.plexus.velocity.DefaultVelocityComponentTest

resource.loader = classpath
classpath.resource.loader.class = org.apache.velocity.runtime.resource.loader.ClasspathResourceLoaderjakarta-turbine-jcs-dev-20031216/src/conf/LocalStrings.properties0100664000246400000000000000272007454074770024150 0ustar  henningwheel# Default localized resources for example servlets
# This locale is en_US

helloworld.title=Hello World!

requestinfo.title=Request Information Example
requestinfo.label.method=Method:
requestinfo.label.requesturi=Request URI:
requestinfo.label.protocol=Protocol:
requestinfo.label.pathinfo=Path Info:
requestinfo.label.remoteaddr=Remote Address:

requestheader.title=Request Header Example

requestparams.title=Request Parameters Example
requestparams.params-in-req=Parameters in this request:
requestparams.no-params=No Parameters, Please enter some
requestparams.firstname=First Name:
requestparams.lastname=Last Name:

cookies.title=Cookies Example
cookies.cookies=Your browser is sending the following cookies:
cookies.no-cookies=Your browser isn't sending any cookies
cookies.make-cookie=Create a cookie to send to your browser
cookies.name=Name:
cookies.value=Value:
cookies.set=You just sent the following cookie to your browser:

sessions.title=Sessions Example
sessions.id=Session ID:
sessions.created=Created:
sessions.lastaccessed=Last Accessed:
sessions.data=The following data is in your session:
sessions.adddata=Add data to your session
sessions.dataname=Name of Session Attribute:
sessions.datavalue=Value of Session Attribute:
sessions.requestedid=Requested Session ID:
sessions.requestedidvalid=Requested Session ID is valid:
sessions.fromcookie=Requested Session ID is from a cookie:
sessions.fromurl=Requested Session ID is from a URL:
sessions.isnew=Session is new:
jakarta-turbine-jcs-dev-20031216/src/conf/cache.ccf0100664000246400000000000002240507470534470021144 0ustar  henningwheel##############################################################
################## DEFAULT CACHE REGION  #####################
# sets the default aux value for any non configured caches
jcs.default=DC,RFailover
jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.default.cacheattributes.MaxObjects=1000
jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.default.cacheattributes.UseMemoryShrinker=true
jcs.default.cacheattributes.MaxMemoryIdleTimeSeconds=3600
jcs.default.cacheattributes.ShrinkerIntervalSeconds=60
jcs.default.cacheattributes.ShrinkerIntervalSeconds=60
jcs.default.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.default.elementattributes.IsEternal=false
jcs.default.elementattributes.MaxLifeSeconds=7
jcs.default.elementattributes.IdleTime=1800
jcs.default.elementattributes.IsSpool=true
jcs.default.elementattributes.IsRemote=true
jcs.default.elementattributes.IsLateral=true

# SYSTEM CACHE
# should be defined for the storage of group attribute list
jcs.system.groupIdCache=DC,RFailover
jcs.system.groupIdCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.system.groupIdCache.cacheattributes.MaxObjects=10000
jcs.system.groupIdCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.system.groupIdCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.system.groupIdCache.elementattributes.IsEternal=true
jcs.system.groupIdCache.elementattributes.MaxLifeSeconds=3600
jcs.system.groupIdCache.elementattributes.IdleTime=1800
jcs.system.groupIdCache.elementattributes.IsSpool=true
jcs.system.groupIdCache.elementattributes.IsRemote=true
jcs.system.groupIdCache.elementattributes.IsLateral=true
 

##############################################################
################## CACHE REGIONS AVAILABLE ###################
# Regions preconfirgured for caching
jcs.region.testCache1=DC,RFailover
jcs.region.testCache1.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.testCache1.cacheattributes.MaxObjects=10000
jcs.region.testCache1.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.testCache1.cacheattributes.UseMemoryShrinker=true
jcs.region.testCache1.cacheattributes.MaxMemoryIdleTimeSeconds=3600
jcs.region.testCache1.cacheattributes.ShrinkerIntervalSeconds=3
jcs.region.testCache1.elementattributes.IsEternal=false
jcs.region.testCache1.elementattributes.MaxLifeSeconds=10

jcs.region.testCache2=DC,LTCP
jcs.region.testCache2.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.testCache2.cacheattributes.MaxObjects=1000
jcs.region.testCache2.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.region.testCache2.cacheattributes.UseMemoryShrinker=true
jcs.region.testCache2.cacheattributes.MaxMemoryIdleTimeSeconds=10
jcs.region.testCache2.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.testCache2.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.testCache2.elementattributes.IsEternal=false
jcs.region.testCache2.elementattributes.MaxLifeSeconds=60
jcs.region.testCache2.elementattributes.IsSpool=true
jcs.region.testCache2.elementattributes.IsRemote=true
jcs.region.testCache2.elementattributes.IsLateral=true

jcs.region.testCache3=DC
jcs.region.testCache3.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.testCache3.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.shrinking.ShrinkingMemoryCache
jcs.region.testCache3.cacheattributes.UseMemoryShrinker=true
jcs.region.testCache3.cacheattributes.MaxMemoryIdleTimeSeconds=3600
jcs.region.testCache3.cacheattributes.ShrinkerIntervalSeconds=60

jcs.region.testCache4=DC,LJG
jcs.region.testCache4.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.testCache4.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.shrinking.ShrinkingMemoryCache
jcs.region.testCache4.cacheattributes.UseMemoryShrinker=true
jcs.region.testCache4.cacheattributes.MaxMemoryIdleTimeSeconds=3600
jcs.region.testCache4.cacheattributes.ShrinkerIntervalSeconds=60
jcs.region.testCache4.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.region.testCache4.elementattributes.IsEternal=false
jcs.region.testCache4.elementattributes.MaxLifeSeconds=60
jcs.region.testCache4.elementattributes.IsSpool=true
jcs.region.testCache4.elementattributes.IsRemote=true
jcs.region.testCache4.elementattributes.IsLateral=true



# prefered config
jcs.region.test2=DC,RFailover
jcs.region.test2.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.test2.cacheattributes.MaxObjects=1000
jcs.region.test2.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache


##############################################################
################## AUXILIARY CACHES AVAILABLE ################

# Remote RMI cache without failover
jcs.auxiliary.RGroup=org.apache.jcs.auxiliary.remote.RemoteCacheFactory
jcs.auxiliary.RGroup.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheAttributes
jcs.auxiliary.RGroup.attributes.RemoteTypeName=LOCAL
jcs.auxiliary.RGroup.attributes.RemoteHost=localhost
jcs.auxiliary.RGroup.attributes.RemotePort=1102
jcs.auxiliary.RGroup.attributes.GetOnly=true

# Remote RMI Cache set up to failover
jcs.auxiliary.RFailover=org.apache.jcs.auxiliary.remote.RemoteCacheFactory
jcs.auxiliary.RFailover.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheAttributes
jcs.auxiliary.RFailover.attributes.RemoteTypeName=LOCAL
jcs.auxiliary.RFailover.attributes.FailoverServers=localhost:1102
jcs.auxiliary.RFailover.attributes.GetOnly=false

# Primary Disk Cache-- faster than the rest because of memory key storage
jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
jcs.auxiliary.DC.attributes.DiskPath=g:\dev\raf

# HSQL Disk Cache -- too slow as is
jcs.auxiliary.HDC=org.apache.jcs.auxiliary.disk.hsql.HSQLCacheFactory
jcs.auxiliary.HDC.attributes=org.apache.jcs.auxiliary.disk.hsql.HSQLCacheAttributes
jcs.auxiliary.HDC.attributes.DiskPath=@project_home_f@hsql

# JISP Disk Cache -- save memory with disk key storage
jcs.auxiliary.JDC=org.apache.jcs.auxiliary.disk.jisp.JISPCacheFactory
jcs.auxiliary.JDC.attributes=org.apache.jcs.auxiliary.disk.jisp.JISPCacheAttributes
jcs.auxiliary.JDC.attributes.DiskPath=@project_home_f@raf
jcs.auxiliary.JDC.attributes.ClearOnStart=false

# need to make put or invalidate an option
# just a remove lock to add
jcs.auxiliary.RC=org.apache.jcs.auxiliary.remote.RemoteCacheFactory
jcs.auxiliary.RC.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheAttributes
jcs.auxiliary.RC.attributes.RemoteHost=localhost
jcs.auxiliary.RC.attributes.RemotePort=1102
#jcs.auxiliary.RC.attributes.LocalPort=1103
jcs.auxiliary.RC.attributes.RemoveUponRemotePut=false
#jcs.auxiliary.RC.attributes.RemoteServiceName=RemoteCache

# unreliable
jcs.auxiliary.LUDP=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LUDP.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LUDP.attributes.TransmissionTypeName=UDP
jcs.auxiliary.LUDP.attributes.UdpMulticastAddr=228.5.6.7
jcs.auxiliary.LUDP.attributes.UdpMulticastPort=6789

jcs.auxiliary.LJG=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LJG.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LJG.attributes.TransmissionTypeName=JAVAGROUPS
jcs.auxiliary.LJG.attributes.UdpMulticastAddr=228.5.6.7
jcs.auxiliary.LJG.attributes.UdpMulticastPort=6789
jcs.auxiliary.LJG.attributes.PutOnlyMode=false


# almost complete
jcs.auxiliary.LTCP=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LTCP.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LTCP.attributes.TransmissionTypeName=TCP
jcs.auxiliary.LTCP.attributes.TcpServers=localhost:1111
jcs.auxiliary.LTCP.attributes.TcpListenerPort=1110
jcs.auxiliary.LTCP.attributes.PutOnlyMode=false

jcs.auxiliary.LTCP2=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LTCP2.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LTCP2.attributes.TransmissionTypeName=TCP
jcs.auxiliary.LTCP2.attributes.TcpServers=localhost:1111,localhost2:1112
jcs.auxiliary.LTCP2.attributes.TcpListenerPort=1111
jcs.auxiliary.LTCP2.attributes.PutOnlyMode=true

jcs.auxiliary.XMLRPC=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.XMLRPC.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.XMLRPC.attributes.TransmissionTypeName=XMLRPC
jcs.auxiliary.XMLRPC.attributes.HttpServers=localhost:8182
jcs.auxiliary.XMLRPC.attributes.HttpListenerPort=8181
jcs.auxiliary.XMLRPC.attributes.PutOnlyMode=false


# example of how to configure the http version of the lateral cache
# not converteed to new cache
jcs.auxiliary.LCHTTP=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LCHTTP.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LCHTTP.attributes.TransmissionType=HTTP
jcs.auxiliary.LCHTTP.attributes.httpServers=localhost:8080,localhost:7001,localhost:80
jcs.auxiliary.LCHTTP.attributes.httpReceiveServlet=/cache/LateralCacheReceiverServlet
jcs.auxiliary.LCHTTP.attributes.httpDeleteServlet=/cache/DeleteCacheServlet

jakarta-turbine-jcs-dev-20031216/src/conf/cache.policy0100664000246400000000000000110307752576452021711 0ustar  henningwheelgrant {
    permission java.security.AllPermission;
};


grant codeBase "file:g:/dev/jakarta-turbine-jcs/target/classes/*" {
    permission java.security.AllPermission;
};

grant codeBase "file:g:/dev/jakarta-turbine-jcs/src/conf/*" {
    permission java.security.AllPermission;
};

grant codeBase "file:g:/dev/jakarta-turbine-jcs/src/conf/scripts/*" {
    permission java.security.AllPermission;
};

grant codeBase "file:g:/dev/jakarta-turbine-jcs/*" {
    permission java.security.AllPermission;
};

grant codeBase "file:/G:/*" {
    permission java.security.AllPermission;
};
jakarta-turbine-jcs-dev-20031216/src/conf/cache2.ccf0100664000246400000000000001103407454074770021226 0ustar  henningwheel##############################################################
################## DEFAULT CACHE REGION  #####################
# sets the default aux value for any non configured caches
jcs.default=DC,RC
jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.default.cacheattributes.MaxObjects=1000
jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache

# should be defined for the storage of group attribute list
jcs.system.groupIdCache=DC,RC
jcs.system.groupIdCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.system.groupIdCache.cacheattributes.MaxObjects=1000
jcs.system.groupIdCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
 

##############################################################
################## CACHE REGIONS AVAILABLE ###################
jcs.region.testCache1=DC,RC
jcs.region.testCache1.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.testCache1.cacheattributes.MaxObjects=1000
jcs.region.testCache1.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache

jcs.region.testCache2=DC,LTCP
jcs.region.testCache2.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.testCache2.cacheattributes.MaxObjects=1000
jcs.region.testCache2.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache

# prefered config
jcs.region.test2=DC
jcs.region.test2.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.test2.cacheattributes.MaxObjects=1000


##############################################################
################## AUXILIARY CACHES AVAILABLE ################
jcs.auxiliary.HC=org.apache.jcs.auxiliary.disk.hsql.HSQLCacheFactory
jcs.auxiliary.HC.attributes=org.apache.jcs.auxiliary.disk.hsql.HSQLCacheAttributes
jcs.auxiliary.HC.attributes.DiskPath=@project_home@/hsql

# standard disk cache
jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
jcs.auxiliary.DC.attributes.DiskPath=@project_home@/raf

# connects to the server started by "startRemoteCacheServer 2"
jcs.auxiliary.RC=org.apache.jcs.auxiliary.remote.RemoteCacheFactory
jcs.auxiliary.RC.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheAttributes
jcs.auxiliary.RC.attributes.RemoteHost=localhost
jcs.auxiliary.RC.attributes.RemotePort=1103
jcs.auxiliary.RFailover.attributes.FailoverServers=localhost:1103,localhost:1102
jcs.auxiliary.RC.attributes.RemoveUponRemotePut=true

# unreliable
jcs.auxiliary.LUDP=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LUDP.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LUDP.attributes.TransmissionTypeName=UDP
jcs.auxiliary.LUDP.attributes.UdpMulticastAddr=228.5.6.7
jcs.auxiliary.LUDP.attributes.UdpMulticastPort=6789

# almost complete
jcs.auxiliary.LTCP=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LTCP.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LTCP.attributes.TransmissionTypeName=TCP
jcs.auxiliary.LTCP.attributes.TcpServers=localhost:1110
jcs.auxiliary.LTCP.attributes.TcpListenerPort=1111
jcs.auxiliary.LTCP.attributes.PutOnlyMode=false

jcs.auxiliary.XMLRPC=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.XMLRPC.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.XMLRPC.attributes.TransmissionTypeName=XMLRPC
jcs.auxiliary.XMLRPC.attributes.HttpServers=localhost:8181
jcs.auxiliary.XMLRPC.attributes.HttpListenerPort=8182
jcs.auxiliary.XMLRPC.attributes.PutOnlyMode=false


jcs.auxiliary.LTCP2=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LTCP2.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LTCP2.attributes.TransmissionTypeName=TCP
jcs.auxiliary.LTCP2.attributes.TcpServers=localhost:1111,localhost2:1112
jcs.auxiliary.LTCP2.attributes.TcpListenerPort=1111

# example of how to configure the http version of the lateral cache
# not converteed to new cache
jcs.auxiliary.LCHTTP=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LCHTTP.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LCHTTP.attributes.TransmissionType=HTTP
jcs.auxiliary.LCHTTP.attributes.httpServers=localhost:8080,localhost:7001,localhost:80
jcs.auxiliary.LCHTTP.attributes.httpReceiveServlet=/cache/LateralCacheReceiverServlet
jcs.auxiliary.LCHTTP.attributes.httpDeleteServlet=/cache/DeleteCacheServlet

jakarta-turbine-jcs-dev-20031216/src/conf/jcsutils.properties0100664000246400000000000000005107454074770023377 0ustar  henningwheeladmin.userid=admin
admin.password=system
jakarta-turbine-jcs-dev-20031216/src/conf/log4j.properties0100664000246400000000000000275707454074770022575 0ustar  henningwheellog4j.rootCategory=ERROR,WF

# A1 -- console
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout  
# Print the date in ISO 8601 format
log4j.appender.A1.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
  
# RF --file appender
log4j.appender.RF=org.apache.log4j.RollingFileAppender
log4j.appender.RF.File=@project_home_f@logs/primary.log
log4j.appender.RF.layout=org.apache.log4j.PatternLayout  
log4j.appender.RF.layout.ConversionPattern=%d [%t] %-5p %c - %m%n

# WF -- special file for warnings
log4j.appender.WF=org.apache.log4j.RollingFileAppender
log4j.appender.WF.File=@project_home_f@logs/warnings.log
log4j.appender.WF.layout=org.apache.log4j.PatternLayout  
log4j.appender.WF.layout.ConversionPattern=%d [%t] %-5p %c - %m%n


#################################################################################
# Print only messages of priority WARN or above in the package com.foo.
#log4j.category.org.apache.stratum=WARN,WF


#log4j.category.org.apache.jcs=ERROR,A1,WF
log4j.category.org.apache.jcs.acess=WARN,WF
log4j.category.org.apache.jcs.engine.control=WARN,WF
log4j.category.org.apache.jcs.engine.memory.shrinking=ERROR,A1
log4j.category.org.apache.jcs.config=WARN,A1
log4j.category.org.apache.jcs.auxiliary.disk=WARN,WF
log4j.category.org.apache.jcs.auxiliary.lateral.javagroups=WARN,WF
log4j.category.org.apache.jcs.auxiliary.lateral.xmlrpc=DEBUG,WF
log4j.category.org.apache.jcs.auxiliary.remote=WARN,WF
log4j.category.org.apache.jcs.utils=WARN,WF

jakarta-turbine-jcs-dev-20031216/src/conf/logger.properties0100664000246400000000000000411407454074770023022 0ustar  henningwheel# The LoggerManager creates loggers for entries in this file.
# This initializes certain logs at the set debugging levels( 0 - 4 )
# A management tool will force reinitialization and a reread of this file at
# runtime.  However the primary way to alter runtime loggin levels will be to
# modify the level of the logger object through the tool.
# An entry must have a .level entry to be initialized
# .systemout is N by default, Y will turn it on
# .maxfilesize -- number of bytes before archiving log
# .numtocheck -- number of entries before checking to see if it is too big
# The logroot value is used by default.  This can be overridden with
# a specific entry

logroot=@project_home@/logs

# the sleepinterval value is how often the writing thread wakes up in ms.
# Recommend set to 1000 for development servers (so it would write with 1 sec. delay
# and 10000 for production servers (so it would write every 10 seconds.)

#Min is 5 secs ie 5000
sleepInterval=1000

# The string buffer size before messages are flushed to disk.
# Minimum is zero, which flushes every log message to disk asap.
buffer_capacity=0

access_cacheaccess.level=2
access_cacheaccess.systemout=y
access_cacheaccess.maxfilesize=100000
access_cacheaccess.numtocheck=300

control_cache.level=2
control_cache.systemout=y
control_cache.maxfilesize=100000
control_cache.numtocheck=300

engine_groupcache.level=2
engine_groupcache.systemout=y
engine_groupcache.maxfilesize=100000
engine_groupcache.numtocheck=300

control_cachemanager.level=2
control_cachemanager.systemout=y
control_cachemanager.maxfilesize=100000
control_cachemanager.numtocheck=300

memory_lateralcacheunicaster.level=0
memory_lateralcacheunicaster.systemout=n
memory_lateralcacheunicaster.maxfilesize=100000
memory_lateralcacheunicaster.numtocheck=300

remote_remotecachemanager.level=2
remote_remotecachemanager.systemout=y
remote_remotecachemanager.maxfilesize=100000
remote_remotecachemanager.numtocheck=300

group_remotegroupcacheserver.level=2
group_remotegroupcacheserver.systemout=y
group_remotegroupcacheserver.maxfilesize=100000
group_remotegroupcacheserver.numtocheck=300
jakarta-turbine-jcs-dev-20031216/src/conf/myjetty.xml0100664000246400000000000000715007454074770021657 0ustar  henningwheel<?xml version="1.0"  encoding="ISO-8859-1"?> 
<!DOCTYPE Configure PUBLIC
 "-//Mort Bay Consulting//DTD Configure 1.0//EN"
 "http://jetty.mortbay.com/configure_1_0.dtd">

<!--
This is a Jetty HTTP server configuration file.  This configuration
uses the generic com.mortbay.Util.XmlConfiguration class to call
the normal com.mortbay.HTTP.HttpServer configuration API from
within an XML script.

The format of this file is described in the configure.dtd file.

The API that can be called by this file is described in the
Javadoc for Jetty.

The following concepts must be understood when configuring
a server:

Listener: is a network interface object that
accepts HTTP requests for the server. SocketListeners accept
normal requests, while JsseListeners accept SSL requests.
The threading model of the server is controlled by the
listener parameters.

WebApplication: is a bundled collection of resources,
servlets and configuration that can provide a unified
WWW application.  It is part of the 2.2 servlet standard.
The contents of the application are configured by the
web.xml deployment descriptor within the application.
The configuration of the application within Jetty requires
on the context of the application to be set.

Context: is a grouping of server resources that share
the same URL path prefix, class path and resource base.
A Web application is an example of a specific context.
Generic contexts may have arbitrary request handlers
added to them.  All contexts have a path specification
(frequently the default "/") and an option virtual
host alias.

Handler:  Handlers are the objects that actually
service the HTTP requests. Examples of Handlers include
ServletHandler, ResourceHandler and NotFoundHandler.  
Handlers are contained within Contexts, which provide
conveniance methods for the common handlers so 
that servlet and file serving may be configured for
a context without explicit creation of a Handler.


This file configures:
 + A listener at port 8080 on all known interfaces
 + The default web applicaton at /default/* context
 + Dynamic servlet context at /servlet/*
 + A context at / with serving files from ./docroot and
   the dump servlet at /dump.

-->

<Configure class="com.mortbay.HTTP.HttpServer">
  <Call name="addListener">
    <Arg>
      <New class="com.mortbay.HTTP.SocketListener">
        <Set name="Port">9090</Set>
        <Set name="MinThreads">5</Set>
        <Set name="MaxThreads">255</Set>
        <Set name="MaxIdleTimeMs">60000</Set>
        <Set name="MaxReadTimeMs">60000</Set>
      </New>
    </Arg>
  </Call>

  <Call name="addWebApplication">
    <Arg>/jcs/*</Arg>
    <Arg><SystemProperty name="jetty.home" default="../../"/>webapps/jcs/</Arg>
    <Arg></Arg>
  </Call>

  <Call name="addContext">
    <Arg>/</Arg>
    <Set name="ClassPath"><SystemProperty name="jetty.home" default="."/>/servlets/</Set>
    <Set name="DynamicServletPathSpec">/servlet/*</Set>
    <Set name="ResourceBase"><SystemProperty name="jetty.home" default="."/>/docroot/</Set>
    <Set name="ServingResources">TRUE</Set>
    <Call name="addServlet">
      <Arg>Dump</Arg>
      <Arg>/dump/*,/handler/Dump,/handler/Dump/*</Arg>
      <Arg>com.mortbay.Servlet.Dump</Arg>
    </Call>
    <Call name="addServlet">
      <Arg>JSP</Arg>
      <Arg>*.jsp,*.jsP,*.jSp,*.jSP,*.Jsp,*.JsP,*.JSp,*.JSP</Arg>
      <Arg>org.apache.jasper.servlet.JspServlet</Arg>
    </Call>
  </Call>

  <Set name="LogSink">
    <New class="com.mortbay.Util.WriterLogSink">
      <Arg><SystemProperty name="jetty.log" default="../../logs"/>/yyyy_mm_dd.request.log</Arg>
      <Set name="RetainDays">90</Set>
      <Set name="Append">true</Set>
    </New>
  </Set>

</Configure>

jakarta-turbine-jcs-dev-20031216/src/conf/myjetty2.xml0100664000246400000000000000715007454074770021741 0ustar  henningwheel<?xml version="1.0"  encoding="ISO-8859-1"?> 
<!DOCTYPE Configure PUBLIC
 "-//Mort Bay Consulting//DTD Configure 1.0//EN"
 "http://jetty.mortbay.com/configure_1_0.dtd">

<!--
This is a Jetty HTTP server configuration file.  This configuration
uses the generic com.mortbay.Util.XmlConfiguration class to call
the normal com.mortbay.HTTP.HttpServer configuration API from
within an XML script.

The format of this file is described in the configure.dtd file.

The API that can be called by this file is described in the
Javadoc for Jetty.

The following concepts must be understood when configuring
a server:

Listener: is a network interface object that
accepts HTTP requests for the server. SocketListeners accept
normal requests, while JsseListeners accept SSL requests.
The threading model of the server is controlled by the
listener parameters.

WebApplication: is a bundled collection of resources,
servlets and configuration that can provide a unified
WWW application.  It is part of the 2.2 servlet standard.
The contents of the application are configured by the
web.xml deployment descriptor within the application.
The configuration of the application within Jetty requires
on the context of the application to be set.

Context: is a grouping of server resources that share
the same URL path prefix, class path and resource base.
A Web application is an example of a specific context.
Generic contexts may have arbitrary request handlers
added to them.  All contexts have a path specification
(frequently the default "/") and an option virtual
host alias.

Handler:  Handlers are the objects that actually
service the HTTP requests. Examples of Handlers include
ServletHandler, ResourceHandler and NotFoundHandler.  
Handlers are contained within Contexts, which provide
conveniance methods for the common handlers so 
that servlet and file serving may be configured for
a context without explicit creation of a Handler.


This file configures:
 + A listener at port 8080 on all known interfaces
 + The default web applicaton at /default/* context
 + Dynamic servlet context at /servlet/*
 + A context at / with serving files from ./docroot and
   the dump servlet at /dump.

-->

<Configure class="com.mortbay.HTTP.HttpServer">
  <Call name="addListener">
    <Arg>
      <New class="com.mortbay.HTTP.SocketListener">
        <Set name="Port">9091</Set>
        <Set name="MinThreads">5</Set>
        <Set name="MaxThreads">255</Set>
        <Set name="MaxIdleTimeMs">60000</Set>
        <Set name="MaxReadTimeMs">60000</Set>
      </New>
    </Arg>
  </Call>

  <Call name="addWebApplication">
    <Arg>/jcs/*</Arg>
    <Arg><SystemProperty name="jetty.home" default="../../"/>webapps/jcs/</Arg>
    <Arg></Arg>
  </Call>

  <Call name="addContext">
    <Arg>/</Arg>
    <Set name="ClassPath"><SystemProperty name="jetty.home" default="."/>/servlets/</Set>
    <Set name="DynamicServletPathSpec">/servlet/*</Set>
    <Set name="ResourceBase"><SystemProperty name="jetty.home" default="."/>/docroot/</Set>
    <Set name="ServingResources">TRUE</Set>
    <Call name="addServlet">
      <Arg>Dump</Arg>
      <Arg>/dump/*,/handler/Dump,/handler/Dump/*</Arg>
      <Arg>com.mortbay.Servlet.Dump</Arg>
    </Call>
    <Call name="addServlet">
      <Arg>JSP</Arg>
      <Arg>*.jsp,*.jsP,*.jSp,*.jSP,*.Jsp,*.JsP,*.JSp,*.JSP</Arg>
      <Arg>org.apache.jasper.servlet.JspServlet</Arg>
    </Call>
  </Call>

  <Set name="LogSink">
    <New class="com.mortbay.Util.WriterLogSink">
      <Arg><SystemProperty name="jetty.log" default="../../logs"/>/yyyy_mm_dd.request.log</Arg>
      <Set name="RetainDays">90</Set>
      <Set name="Append">true</Set>
    </New>
  </Set>

</Configure>

jakarta-turbine-jcs-dev-20031216/src/conf/remote.cache.ccf0100664000246400000000000001120007752576452022436 0ustar  henningwheel##############################################################
# Registry used to register and provide the IRmiCacheService service.
registry.host=localhost
registry.port=1102
# call back port to local caches.
remote.cache.service.port=1102
# tomcat config
remote.tomcat.on=false
remote.tomcat.xml=@project_home_f@bin/conf/remote.tomcat.xml
# cluster setting
remote.cluster.LocalClusterConsistency=true
#not allowed -- remote.cluster.AllowClusterGet=false


##############################################################
################## DEFAULT CACHE REGION  #####################
# sets the default aux value for any non configured caches
jcs.default=DC
jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.default.cacheattributes.MaxObjects=1000
jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.default.cacheattributes.UseMemoryShrinker=true
jcs.default.cacheattributes.MaxMemoryIdleTimeSeconds=3600
jcs.default.cacheattributes.ShrinkerIntervalSeconds=60
jcs.default.cacheattributes.ShrinkerIntervalSeconds=60
jcs.default.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.default.elementattributes.IsEternal=false
jcs.default.elementattributes.MaxLifeSeconds=7
jcs.default.elementattributes.IdleTime=1800
jcs.default.elementattributes.IsSpool=true
jcs.default.elementattributes.IsRemote=true
jcs.default.elementattributes.IsLateral=true

# SYSTEM CACHE
# should be defined for the storage of group attribute list
jcs.system.groupIdCache=DC
jcs.system.groupIdCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.system.groupIdCache.cacheattributes.MaxObjects=10000
jcs.system.groupIdCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.system.groupIdCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.system.groupIdCache.elementattributes.IsEternal=true
jcs.system.groupIdCache.elementattributes.MaxLifeSeconds=3600
jcs.system.groupIdCache.elementattributes.IdleTime=1800
jcs.system.groupIdCache.elementattributes.IsSpool=true
jcs.system.groupIdCache.elementattributes.IsRemote=true
jcs.system.groupIdCache.elementattributes.IsLateral=true
 

##############################################################
################## CACHE REGIONS AVAILABLE ###################
jcs.region.testCache1=DC,RCluster1
jcs.region.testCache1.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.testCache1.cacheattributes.MaxObjects=1000


##############################################################
################## AUXILIARY CACHES AVAILABLE ################
# server to update for clustering -- remote.cache.ccf 2
jcs.auxiliary.RCluster1=org.apache.jcs.auxiliary.remote.RemoteCacheFactory
jcs.auxiliary.RCluster1.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheAttributes
jcs.auxiliary.RCluster1.attributes.RemoteTypeName=CLUSTER
jcs.auxiliary.RCluster1.attributes.RemoveUponRemotePut=false
#jcs.auxiliary.RCluster1.attributes.ClusterServers=localhost:1103
jcs.auxiliary.RCluster1.attributes.GetOnly=false
#jcs.auxiliary.RCluster1.attributes.LocalClusterConsistency=true

# server to update for clustering
jcs.auxiliary.RCluster2=org.apache.jcs.auxiliary.remote.RemoteCacheFactory
jcs.auxiliary.RCluster2.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheAttributes
jcs.auxiliary.RCluster2.attributes.RemoteTypeName=CLUSTER
jcs.auxiliary.RCluster2.attributes.RemoveUponRemotePut=false
jcs.auxiliary.RCluster2.attributes.ClusterServers=localhost:1104
jcs.auxiliary.RCluster2.attributes.GetOnly=false
#jcs.auxiliary.RCluster2.attributes.LocalClusterConsistency=true

jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
jcs.auxiliary.DC.attributes.DiskPath=@project_home@/raf/remote

 
jcs.auxiliary.LC=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LC.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LC.attributes.TransmissionTypeName=UDP
jcs.auxiliary.LC.attributes.UdpMulticastAddr=228.5.6.7
jcs.auxiliary.LC.attributes.UdpMulticastPort=6789

# example of how to configure the http version of the lateral cache
jcs.auxiliary.LCHTTP=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LCHTTP.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LCHTTP.attributes.TransmissionType=HTTP
jcs.auxiliary.LCHTTP.attributes.httpServers=localhost:8080,localhost:7001,localhost:80
jcs.auxiliary.LCHTTP.attributes.httpReceiveServlet=/cache/LateralCacheReceiverServlet
jcs.auxiliary.LCHTTP.attributes.httpDeleteServlet=/cache/DeleteCacheServlet

jakarta-turbine-jcs-dev-20031216/src/conf/remote.cache2.ccf0100664000246400000000000001132407752503766022525 0ustar  henningwheel##############################################################
# Registry used to register and provide the IRmiCacheService service.
registry.host=localhost
registry.port=1103
# call back port to local caches.
remote.cache.service.port=1103
# tomcat config
remote.tomcat.on=false
remote.tomcat.xml=@project_home_f@bin/conf/remote.tomcat.xml
# cluster setting
remote.cluster.LocalClusterConsistency=true
#not allowed remote.cluster.AllowClusterGet=false


##############################################################
################## DEFAULT CACHE REGION  #####################
# sets the default aux value for any non configured caches
# sets the default aux value for any non configured caches
jcs.default=DC,RCluster1
jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.default.cacheattributes.MaxObjects=1000
jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.default.cacheattributes.UseMemoryShrinker=true
jcs.default.cacheattributes.MaxMemoryIdleTimeSeconds=3600
jcs.default.cacheattributes.ShrinkerIntervalSeconds=60
jcs.default.cacheattributes.ShrinkerIntervalSeconds=60
jcs.default.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.default.elementattributes.IsEternal=false
jcs.default.elementattributes.MaxLifeSeconds=7
jcs.default.elementattributes.IdleTime=1800
jcs.default.elementattributes.IsSpool=true
jcs.default.elementattributes.IsRemote=true
jcs.default.elementattributes.IsLateral=true

# SYSTEM CACHE
# should be defined for the storage of group attribute list
jcs.system.groupIdCache=DC,RCluster1
jcs.system.groupIdCache.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.system.groupIdCache.cacheattributes.MaxObjects=10000
jcs.system.groupIdCache.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory.lru.LRUMemoryCache
jcs.system.groupIdCache.elementattributes=org.apache.jcs.engine.ElementAttributes
jcs.system.groupIdCache.elementattributes.IsEternal=true
jcs.system.groupIdCache.elementattributes.MaxLifeSeconds=3600
jcs.system.groupIdCache.elementattributes.IdleTime=1800
jcs.system.groupIdCache.elementattributes.IsSpool=true
jcs.system.groupIdCache.elementattributes.IsRemote=true
jcs.system.groupIdCache.elementattributes.IsLateral=true

 

##############################################################
################## CACHE REGIONS AVAILABLE ###################
jcs.region.testCache1=DC,RCluster1,RCluster2
jcs.region.testCache1.cacheattributes=org.apache.jcs.engine.CompositeCacheAttributes
jcs.region.testCache1.cacheattributes.MaxObjects=1000


##############################################################
################## AUXILIARY CACHES AVAILABLE ################
# server to update for clustering -- remote.cache.ccf 1
jcs.auxiliary.RCluster1=org.apache.jcs.auxiliary.remote.RemoteCacheFactory
jcs.auxiliary.RCluster1.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheAttributes
jcs.auxiliary.RCluster1.attributes.RemoteTypeName=CLUSTER
jcs.auxiliary.RCluster1.attributes.RemoveUponRemotePut=false
jcs.auxiliary.RCluster1.attributes.ClusterServers=localhost:1102
jcs.auxiliary.RCluster1.attributes.GetOnly=false
jcs.auxiliary.RCluster1.attributes.LocalClusterConsistency=true

# server to update for clustering
jcs.auxiliary.RCluster2=org.apache.jcs.auxiliary.remote.RemoteCacheFactory
jcs.auxiliary.RCluster2.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheAttributes
jcs.auxiliary.RCluster2.attributes.RemoteTypeName=CLUSTER
jcs.auxiliary.RCluster2.attributes.RemoveUponRemotePut=false
jcs.auxiliary.RCluster2.attributes.ClusterServers=localhost:1104
jcs.auxiliary.RCluster2.attributes.GetOnly=false
jcs.auxiliary.RCluster2.attributes.LocalClusterConsistency=true

jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory
jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes
jcs.auxiliary.DC.attributes.DiskPath=@project_home@/raf/remote

 
jcs.auxiliary.LC=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LC.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LC.attributes.TransmissionTypeName=UDP
jcs.auxiliary.LC.attributes.UdpMulticastAddr=228.5.6.7
jcs.auxiliary.LC.attributes.UdpMulticastPort=6789

# example of how to configure the http version of the lateral cache
jcs.auxiliary.LCHTTP=org.apache.jcs.auxiliary.lateral.LateralCacheFactory
jcs.auxiliary.LCHTTP.attributes=org.apache.jcs.auxiliary.lateral.LateralCacheAttributes
jcs.auxiliary.LCHTTP.attributes.TransmissionType=HTTP
jcs.auxiliary.LCHTTP.attributes.httpServers=localhost:8080,localhost:7001,localhost:80
jcs.auxiliary.LCHTTP.attributes.httpReceiveServlet=/cache/LateralCacheReceiverServlet
jcs.auxiliary.LCHTTP.attributes.httpDeleteServlet=/cache/DeleteCacheServlet

jakarta-turbine-jcs-dev-20031216/src/conf/remote.tomcat.xml0100664000246400000000000003032007454074771022727 0ustar  henningwheel<?xml version="1.0" encoding="ISO-8859-1"?>

<Server>
    <!-- Debug low-level events in XmlMapper startup 
    <xmlmapper:debug level="0" />
    -->
    
    <!-- 

    Logging:

         Logging in Tomcat is quite flexible; we can either have a log
         file per module (example: ContextManager) or we can have one
         for Servlets and one for Jasper, or we can just have one
         tomcat.log for both Servlet and Jasper.  Right now there are
         three standard log streams, "tc_log", "servlet_log", and
         "JASPER_LOG".  

	 Path: 

	 The file to which to output this log, relative to
	 TOMCAT_HOME.  If you omit a "path" value, then stderr or
	 stdout will be used.

	 Verbosity: 

	 Threshold for which types of messages are displayed in the
	 log.  Levels are inclusive; that is, "WARNING" level displays
	 any log message marked as warning, error, or fatal.  Default
	 level is WARNING.

	 verbosityLevel values can be: 
	    FATAL
	    ERROR
	    WARNING 
            INFORMATION
            DEBUG

	 Timestamps:

	 By default, logs print a timestamp in the form "yyyy-MM-dd
	 hh:mm:ss" in front of each message.  To disable timestamps
	 completely, set 'timestamp="no"'. To use the raw
	 msec-since-epoch, which is more efficient, set
	 'timestampFormat="msec"'.  If you want a custom format, you
	 can use 'timestampFormat="hh:mm:ss"' following the syntax of
	 java.text.SimpleDateFormat (see Javadoc API).  For a
	 production environment, we recommend turning timestamps off,
	 or setting the format to "msec".

	 Custom Output:

	 "Custom" means "normal looking".  "Non-custom" means
	 "surrounded with funny xml tags".  In preparation for
	 possibly disposing of "custom" altogether, now the default is
	 'custom="yes"' (i.e. no tags)

	 Per-component Debugging:

	 Some components accept a "debug" attribute.  This further
	 enhances log output.  If you set the "debug" level for a
	 component, it may output extra debugging information.
    -->

    <!-- if you don't want messages on screen, add the attribute
            path="logs/tomcat.log" 
	 to the Logger element below
    -->
    <Logger name="tc_log" 
            verbosityLevel = "INFORMATION" 
    />

    <Logger name="servlet_log" 
            path="logs/servlet.log"
    />

    <Logger name="JASPER_LOG" 
	    path="logs/jasper.log"
            verbosityLevel = "INFORMATION" />

    <!-- You can add a "home" attribute to represent the "base" for 
         all relative paths. If none is set, the TOMCAT_HOME property
         will be used, and if not set "." will be used.
         webapps/, work/ and logs/ will be relative to this ( unless 
         set explicitely to absolute paths ).

         You can also specify a "randomClass" attribute, which determines 
         a subclass of java.util.Random will be used for generating session IDs.
         By default this is "java.security.SecureRandom". 
         Specifying "java.util.Random" will speed up Tomcat startup, 
         but it will cause sessions to be less secure.

         You can specify the "showDebugInfo" attribute to control whether
         debugging information is displayed in Tomcat's default responses.
         This debugging information includes:
             1. Stack traces for exceptions
             2. Request URI's that cause status codes >= 400
         The default is "true", so you must specify "false" to prevent
         the debug information from appearing.  Since the debugging
         information reveals internal details about what Tomcat is serving,
         set showDebugInfo="false" if you wish increased security.
      -->
    <ContextManager debug="0" workDir="work" showDebugInfo="true" >

      <!-- ==================== Interceptors ==================== -->

        <!-- 
         ContextInterceptor className="org.apache.tomcat.context.LogEvents" 
         -->
        
        <ContextInterceptor className="org.apache.tomcat.context.AutoSetup" />

        <ContextInterceptor 
            className="org.apache.tomcat.context.WebXmlReader" />

        <!-- Uncomment out if you have JDK1.2 and want to use policy 
        <ContextInterceptor 
            className="org.apache.tomcat.context.PolicyInterceptor" />
        -->

        <ContextInterceptor 
            className="org.apache.tomcat.context.LoaderInterceptor" />
        <ContextInterceptor 
            className="org.apache.tomcat.context.DefaultCMSetter" />
        <ContextInterceptor 
            className="org.apache.tomcat.context.WorkDirInterceptor" />

	<!--  Uncomment if you are using JDK1.2 or higher.  
              Insures proper thread context class loader is in effect for servlet execution
	<ContextInterceptor 
            className="org.apache.tomcat.request.Jdk12Interceptor" />
	-->

	<!-- Request processing -->
        <!-- Session interceptor will extract the session id from cookies and 
             deal with URL rewriting ( by fixing the URL ).  If you wish to
             suppress the use of cookies for session identifiers, change the
             "noCookies" attribute to "true"
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.SessionInterceptor"
            noCookies="false" />

        <!-- Find the container ( context and prefix/extension map ) 
             for a request.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.SimpleMapper1" 
            debug="0" />

        <!-- Non-standard invoker, for backward compat. ( /servlet/* )
             You can modify the prefix that is matched by adjusting the
             "prefix" parameter below.  Be sure your modified pattern
             starts and ends with a slash.

             NOTE:  This prefix applies to *all* web applications that
             are running in this instance of Tomcat.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.InvokerInterceptor" 
            debug="0" prefix="/servlet/" />

        <!-- "default" handler - static files and dirs.  Set the
             "suppress" property to "true" to suppress directory listings
             when no welcome file is present.

             NOTE:  This setting applies to *all* web applications that
             are running in this instance of Tomcat.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.StaticInterceptor" 
            debug="0" suppress="false" />

        <!-- Plug a session manager. You can plug in more advanced session
             modules.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.session.StandardSessionInterceptor" />

        <!-- Check if the request requires an authenticated role.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.AccessInterceptor" 
            debug="0" />

        <!-- Check permissions using the simple xml file. You can 
             plug more advanced authentication modules.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.SimpleRealm" 
            debug="0" />

       <!-- UnComment the following and comment out the
            above to get a JDBC realm.
            Other options for driverName: 
              driverName="oracle.jdbc.driver.OracleDriver"
              connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
              connectionName="scott"
              connectionPassword="tiger"

              driverName="org.gjt.mm.mysql.Driver"
              connectionURL="jdbc:mysql://localhost/authority"
              connectionName="test"
              connectionPassword="test"

            "connectionName" and "connectionPassword" are optional.
        -->
        <!--
        <RequestInterceptor 
            className="org.apache.tomcat.request.JDBCRealm" 
            debug="99" 
	    driverName="sun.jdbc.odbc.JdbcOdbcDriver" 
	    connectionURL="jdbc:odbc:TOMCAT" 
	    userTable="users" 
            userNameCol="user_name" 
            userCredCol="user_pass" 
	    userRoleTable="user_roles" 
            roleNameCol="role_name" />
        -->

        <!-- Loaded last since JSP's that load-on-startup use request handling -->
        <ContextInterceptor 
            className="org.apache.tomcat.context.LoadOnStartupInterceptor" />

      <!-- ==================== Connectors ==================== -->

        <!-- Normal HTTP -->
        <Connector className="org.apache.tomcat.service.PoolTcpConnector">
            <Parameter name="handler" 
                value="org.apache.tomcat.service.http.HttpConnectionHandler"/>
            <Parameter name="port" 
                value="9090"/>
        </Connector>

        <!--
            Uncomment this for SSL support. 
            You _need_ to set up a server certificate if you want this
            to work, and you need JSSE.
            1. Add JSSE jars to CLASSPATH 
            2. Edit java.home/jre/lib/security/java.security
               Add:
               security.provider.2=com.sun.net.ssl.internal.ssl.Provider
            3. Do: keytool -genkey -alias tomcat -keyalg RSA
               RSA is essential to work with Netscape and IIS.
               Use "changeit" as password. ( or add keypass attribute )
               You don't need to sign the certificate.
 
            You can set parameter keystore and keypass if you want 
            to change the default ( user.home/.keystore with changeit )
         -->
        <!--
        <Connector className="org.apache.tomcat.service.PoolTcpConnector">
            <Parameter name="handler" 
                value="org.apache.tomcat.service.http.HttpConnectionHandler"/>
            <Parameter name="port" 
                value="8443"/>
            <Parameter name="socketFactory" 
                value="org.apache.tomcat.net.SSLSocketFactory" />
        </Connector>
        -->

        <!-- Apache AJP12 support. This is also used to shut down tomcat.
          -->
        <Connector className="org.apache.tomcat.service.PoolTcpConnector">
            <Parameter name="handler" 
       value="org.apache.tomcat.service.connector.Ajp12ConnectionHandler"/>
            <Parameter name="port" value="8007"/>
        </Connector>

        <!-- ==================== Special webapps ==================== -->
        <!-- You don't need this if you place your app in webapps/
             and use defaults. 
             For security you'll also need to edit tomcat.policy

             Defaults are: debug=0, reloadable=true, trusted=false
             (trusted allows you to access tomcat internal objects 
             with FacadeManager ), crossContext=true (allows you to
             access other contexts via ServletContext.getContext())
 
             If security manager is enabled, you'll have read perms.
             in the webapps dir and read/write in the workdir.
         -->

        <!--
        <Context path="/examples" 
                 docBase="webapps/examples" 
                 crossContext="false"
                 debug="0" 
                 reloadable="true" > 
        </Context>
        -->

        <Context path="../../" 
                 docBase="webapps/jcs" 
                 crossContext="false"
                 debug="0" 
                 reloadable="true" > 
        </Context>


        <!-- Admin context will use tomcat.core to add/remove/get info about
             the webapplications and tomcat internals. 
             By default it is not trusted - i.e. it is not allowed access to 
             tomcat internals, only informations that are available to all 
             servlets are visible.

             If you change this to true, make sure you set a password.
          -->
      <!--
        <Context path="/admin" 
                 docBase="webapps/admin" 
                 crossContext="true"
                 debug="0" 
                 reloadable="true" 
                 trusted="false" > 
        </Context>
      -->

        <!-- Virtual host example - 
             In "127.0.0.1" virtual host we'll reverse "/" and 
             "/examples"
             (XXX need a better example )
             (use  "http://127.0.0.1/examples" )
        <Host name="127.0.0.1" >
           <Context path="" 
                    docBase="webapps/examples" />
           <Context path="/examples" 
                    docBase="webapps/ROOT" />
        </Host>
         -->

    </ContextManager>
</Server>
jakarta-turbine-jcs-dev-20031216/src/conf/tomcat.xml0100664000246400000000000003032007454074771021435 0ustar  henningwheel<?xml version="1.0" encoding="ISO-8859-1"?>

<Server>
    <!-- Debug low-level events in XmlMapper startup 
    <xmlmapper:debug level="0" />
    -->
    
    <!-- 

    Logging:

         Logging in Tomcat is quite flexible; we can either have a log
         file per module (example: ContextManager) or we can have one
         for Servlets and one for Jasper, or we can just have one
         tomcat.log for both Servlet and Jasper.  Right now there are
         three standard log streams, "tc_log", "servlet_log", and
         "JASPER_LOG".  

	 Path: 

	 The file to which to output this log, relative to
	 TOMCAT_HOME.  If you omit a "path" value, then stderr or
	 stdout will be used.

	 Verbosity: 

	 Threshold for which types of messages are displayed in the
	 log.  Levels are inclusive; that is, "WARNING" level displays
	 any log message marked as warning, error, or fatal.  Default
	 level is WARNING.

	 verbosityLevel values can be: 
	    FATAL
	    ERROR
	    WARNING 
            INFORMATION
            DEBUG

	 Timestamps:

	 By default, logs print a timestamp in the form "yyyy-MM-dd
	 hh:mm:ss" in front of each message.  To disable timestamps
	 completely, set 'timestamp="no"'. To use the raw
	 msec-since-epoch, which is more efficient, set
	 'timestampFormat="msec"'.  If you want a custom format, you
	 can use 'timestampFormat="hh:mm:ss"' following the syntax of
	 java.text.SimpleDateFormat (see Javadoc API).  For a
	 production environment, we recommend turning timestamps off,
	 or setting the format to "msec".

	 Custom Output:

	 "Custom" means "normal looking".  "Non-custom" means
	 "surrounded with funny xml tags".  In preparation for
	 possibly disposing of "custom" altogether, now the default is
	 'custom="yes"' (i.e. no tags)

	 Per-component Debugging:

	 Some components accept a "debug" attribute.  This further
	 enhances log output.  If you set the "debug" level for a
	 component, it may output extra debugging information.
    -->

    <!-- if you don't want messages on screen, add the attribute
            path="logs/tomcat.log" 
	 to the Logger element below
    -->
    <Logger name="tc_log" 
            verbosityLevel = "INFORMATION" 
    />

    <Logger name="servlet_log" 
            path="logs/servlet.log"
    />

    <Logger name="JASPER_LOG" 
	    path="logs/jasper.log"
            verbosityLevel = "INFORMATION" />

    <!-- You can add a "home" attribute to represent the "base" for 
         all relative paths. If none is set, the TOMCAT_HOME property
         will be used, and if not set "." will be used.
         webapps/, work/ and logs/ will be relative to this ( unless 
         set explicitely to absolute paths ).

         You can also specify a "randomClass" attribute, which determines 
         a subclass of java.util.Random will be used for generating session IDs.
         By default this is "java.security.SecureRandom". 
         Specifying "java.util.Random" will speed up Tomcat startup, 
         but it will cause sessions to be less secure.

         You can specify the "showDebugInfo" attribute to control whether
         debugging information is displayed in Tomcat's default responses.
         This debugging information includes:
             1. Stack traces for exceptions
             2. Request URI's that cause status codes >= 400
         The default is "true", so you must specify "false" to prevent
         the debug information from appearing.  Since the debugging
         information reveals internal details about what Tomcat is serving,
         set showDebugInfo="false" if you wish increased security.
      -->
    <ContextManager debug="0" workDir="work" showDebugInfo="true" >

      <!-- ==================== Interceptors ==================== -->

        <!-- 
         ContextInterceptor className="org.apache.tomcat.context.LogEvents" 
         -->
        
        <ContextInterceptor className="org.apache.tomcat.context.AutoSetup" />

        <ContextInterceptor 
            className="org.apache.tomcat.context.WebXmlReader" />

        <!-- Uncomment out if you have JDK1.2 and want to use policy 
        <ContextInterceptor 
            className="org.apache.tomcat.context.PolicyInterceptor" />
        -->

        <ContextInterceptor 
            className="org.apache.tomcat.context.LoaderInterceptor" />
        <ContextInterceptor 
            className="org.apache.tomcat.context.DefaultCMSetter" />
        <ContextInterceptor 
            className="org.apache.tomcat.context.WorkDirInterceptor" />

	<!--  Uncomment if you are using JDK1.2 or higher.  
              Insures proper thread context class loader is in effect for servlet execution
	<ContextInterceptor 
            className="org.apache.tomcat.request.Jdk12Interceptor" />
	-->

	<!-- Request processing -->
        <!-- Session interceptor will extract the session id from cookies and 
             deal with URL rewriting ( by fixing the URL ).  If you wish to
             suppress the use of cookies for session identifiers, change the
             "noCookies" attribute to "true"
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.SessionInterceptor"
            noCookies="false" />

        <!-- Find the container ( context and prefix/extension map ) 
             for a request.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.SimpleMapper1" 
            debug="0" />

        <!-- Non-standard invoker, for backward compat. ( /servlet/* )
             You can modify the prefix that is matched by adjusting the
             "prefix" parameter below.  Be sure your modified pattern
             starts and ends with a slash.

             NOTE:  This prefix applies to *all* web applications that
             are running in this instance of Tomcat.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.InvokerInterceptor" 
            debug="0" prefix="/servlet/" />

        <!-- "default" handler - static files and dirs.  Set the
             "suppress" property to "true" to suppress directory listings
             when no welcome file is present.

             NOTE:  This setting applies to *all* web applications that
             are running in this instance of Tomcat.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.StaticInterceptor" 
            debug="0" suppress="false" />

        <!-- Plug a session manager. You can plug in more advanced session
             modules.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.session.StandardSessionInterceptor" />

        <!-- Check if the request requires an authenticated role.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.AccessInterceptor" 
            debug="0" />

        <!-- Check permissions using the simple xml file. You can 
             plug more advanced authentication modules.
          -->
        <RequestInterceptor 
            className="org.apache.tomcat.request.SimpleRealm" 
            debug="0" />

       <!-- UnComment the following and comment out the
            above to get a JDBC realm.
            Other options for driverName: 
              driverName="oracle.jdbc.driver.OracleDriver"
              connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL"
              connectionName="scott"
              connectionPassword="tiger"

              driverName="org.gjt.mm.mysql.Driver"
              connectionURL="jdbc:mysql://localhost/authority"
              connectionName="test"
              connectionPassword="test"

            "connectionName" and "connectionPassword" are optional.
        -->
        <!--
        <RequestInterceptor 
            className="org.apache.tomcat.request.JDBCRealm" 
            debug="99" 
	    driverName="sun.jdbc.odbc.JdbcOdbcDriver" 
	    connectionURL="jdbc:odbc:TOMCAT" 
	    userTable="users" 
            userNameCol="user_name" 
            userCredCol="user_pass" 
	    userRoleTable="user_roles" 
            roleNameCol="role_name" />
        -->

        <!-- Loaded last since JSP's that load-on-startup use request handling -->
        <ContextInterceptor 
            className="org.apache.tomcat.context.LoadOnStartupInterceptor" />

      <!-- ==================== Connectors ==================== -->

        <!-- Normal HTTP -->
        <Connector className="org.apache.tomcat.service.PoolTcpConnector">
            <Parameter name="handler" 
                value="org.apache.tomcat.service.http.HttpConnectionHandler"/>
            <Parameter name="port" 
                value="9090"/>
        </Connector>

        <!--
            Uncomment this for SSL support. 
            You _need_ to set up a server certificate if you want this
            to work, and you need JSSE.
            1. Add JSSE jars to CLASSPATH 
            2. Edit java.home/jre/lib/security/java.security
               Add:
               security.provider.2=com.sun.net.ssl.internal.ssl.Provider
            3. Do: keytool -genkey -alias tomcat -keyalg RSA
               RSA is essential to work with Netscape and IIS.
               Use "changeit" as password. ( or add keypass attribute )
               You don't need to sign the certificate.
 
            You can set parameter keystore and keypass if you want 
            to change the default ( user.home/.keystore with changeit )
         -->
        <!--
        <Connector className="org.apache.tomcat.service.PoolTcpConnector">
            <Parameter name="handler" 
                value="org.apache.tomcat.service.http.HttpConnectionHandler"/>
            <Parameter name="port" 
                value="8443"/>
            <Parameter name="socketFactory" 
                value="org.apache.tomcat.net.SSLSocketFactory" />
        </Connector>
        -->

        <!-- Apache AJP12 support. This is also used to shut down tomcat.
          -->
        <Connector className="org.apache.tomcat.service.PoolTcpConnector">
            <Parameter name="handler" 
       value="org.apache.tomcat.service.connector.Ajp12ConnectionHandler"/>
            <Parameter name="port" value="8007"/>
        </Connector>

        <!-- ==================== Special webapps ==================== -->
        <!-- You don't need this if you place your app in webapps/
             and use defaults. 
             For security you'll also need to edit tomcat.policy

             Defaults are: debug=0, reloadable=true, trusted=false
             (trusted allows you to access tomcat internal objects 
             with FacadeManager ), crossContext=true (allows you to
             access other contexts via ServletContext.getContext())
 
             If security manager is enabled, you'll have read perms.
             in the webapps dir and read/write in the workdir.
         -->

        <!--
        <Context path="/examples" 
                 docBase="webapps/examples" 
                 crossContext="false"
                 debug="0" 
                 reloadable="true" > 
        </Context>
        -->

        <Context path="../../" 
                 docBase="webapps/jcs" 
                 crossContext="false"
                 debug="0" 
                 reloadable="true" > 
        </Context>


        <!-- Admin context will use tomcat.core to add/remove/get info about
             the webapplications and tomcat internals. 
             By default it is not trusted - i.e. it is not allowed access to 
             tomcat internals, only informations that are available to all 
             servlets are visible.

             If you change this to true, make sure you set a password.
          -->
      <!--
        <Context path="/admin" 
                 docBase="webapps/admin" 
                 crossContext="true"
                 debug="0" 
                 reloadable="true" 
                 trusted="false" > 
        </Context>
      -->

        <!-- Virtual host example - 
             In "127.0.0.1" virtual host we'll reverse "/" and 
             "/examples"
             (XXX need a better example )
             (use  "http://127.0.0.1/examples" )
        <Host name="127.0.0.1" >
           <Context path="" 
                    docBase="webapps/examples" />
           <Context path="/examples" 
                    docBase="webapps/ROOT" />
        </Host>
         -->

    </ContextManager>
</Server>
jakarta-turbine-jcs-dev-20031216/src/experimental/0040775000246400000000000000000007767563417021210 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/0040775000246400000000000000000007767563417021777 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/0040775000246400000000000000000007767563417023220 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/0040775000246400000000000000000007767563417023777 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/0040775000246400000000000000000007767563417026006 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/0040775000246400000000000000000007767563420027424 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/0040775000246400000000000000000007767563417030411 5ustar  henningwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/broadcast/0040775000246400000000000000000007767563417032353 5ustar  henningwheel././@LongLink0000000000000000000000000000017700000000000011713 Lustar  rootwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/broadcast/LateralCacheMulticaster.javajakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/broadcast/L0100664000246400000000000000317407471206577032464 0ustar  henningwheelpackage org.apache.jcs.auxiliary.lateral.http.broadcast;

import java.util.ArrayList;
import java.util.Iterator;

import org.apache.jcs.auxiliary.lateral.http.broadcast.LateralCacheUnicaster;

import org.apache.jcs.engine.behavior.ICacheElement;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import org.apache.jcs.utils.threads.ThreadPoolManager;

/*
 * Used to multi-cast a key/val pair to the named cache on multiple servers.
 */
/**
 * Description of the Class
 *
 * @author asmuts
 * @created January 15, 2002
 */
public class LateralCacheMulticaster
{
    private final static Log log =
        LogFactory.getLog( LateralCacheMulticaster.class );

    private final static String servlet = "/cache/cache/LateralCacheServletReceiver";
    private final ICacheElement ice;
    private final ArrayList servers;

    /**
     * Constructor for the LateralCacheMulticaster object
     *
     * @param ice
     * @param servers
     */
    public LateralCacheMulticaster( ICacheElement ice, ArrayList servers )
    {
        this.servers = servers;
        this.ice = ice;

        if ( log.isDebugEnabled() )
        {
            log.debug( "In DistCacheMulticaster" );
        }
    }
    // end constructor

    /** Multi-casts the cache changes to the distributed servers. */
    public void multicast()
    {

        ThreadPoolManager tpm = ThreadPoolManager.getInstance();
        Iterator it = servers.iterator();
        while ( it.hasNext() )
        {
            tpm.runIt( new LateralCacheUnicaster( ice, ( String ) it.next() + servlet ) );
        }
        return;
    }
    // end run

}
// end class


././@LongLink0000000000000000000000000000017200000000000011706 Lustar  rootwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/broadcast/LateralCacheThread.javajakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/broadcast/L0100664000246400000000000001226307471206577032463 0ustar  henningwheelpackage org.apache.jcs.auxiliary.lateral.http.broadcast;

import java.io.InputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.Serializable;

import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

import org.apache.jcs.engine.CacheElement;

import org.apache.jcs.engine.behavior.ICacheElement;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

/**
 * @author Aaron Smuts
 * @created January 15, 2002
 * @version 1.0
 */
public class LateralCacheThread extends Thread
{
    private final static Log log =
        LogFactory.getLog( LateralCacheThread.class );

    private final static String servlet = "/rcash/ramraf/DistCacheServlet";

    /** Description of the Field */
    protected String hashtableName;

    /** Description of the Field */
    protected String key;

    /** Description of the Field */
    protected Serializable val;

    /** Description of the Field */
    protected boolean running = true;

    /** Description of the Field */
    protected String[] servers;

    /**
     * Constructor for the LateralCacheThread object
     *
     * @param hashtableName
     * @param key
     * @param val
     * @param servers
     */
    public LateralCacheThread( String hashtableName, String key, Serializable val, String[] servers )
    {
        this.hashtableName = hashtableName;
        this.key = key;
        this.val = val;
        this.servers = servers;
    }


    /** Main processing method for the LateralCacheThread object */
    public void run()
    {
        try
        {
            long start = System.currentTimeMillis();
            //if ( running ) {
            ICacheElement cb = new CacheElement( hashtableName, key, val );
            log.debug( "key = " + key );
            String result = sendCache( cb );
            sleep( 100 );
            running = false;
            long end = System.currentTimeMillis();
            log.info( "transfer took " + String.valueOf( end - start ) + " millis" );

            return;
            //}
        }
        catch ( InterruptedException e )
        {
            running = false;
            return;
        }

    }
    // end run

    /** Description of the Method */
    public String sendCache( ICacheElement cb )
    {
        String response = "";
        try
        {
            for ( int i = 0; i < servers.length; i++ )
            {
                if ( log.isDebugEnabled() )
                {
                    log.debug( "servers[i] + servlet = " + servers[i] + servlet );
                }
                // create our URL
                URL tmpURL = new URL( servers[i] + servlet );
                URL url = new URL( tmpURL.toExternalForm() );
                if ( log.isDebugEnabled() )
                {
                    log.debug( "tmpURL = " + tmpURL );
                }

                // Open our URLConnection

                log.debug( "Opening Connection." );

                URLConnection con = url.openConnection();

                if ( log.isDebugEnabled() )
                {
                    log.debug( "con = " + con );
                }

                writeObj( con, cb );
                response = read( con );

                if ( log.isDebugEnabled() )
                {
                    log.debug( "response = " + response );
                }
            }
            // end for
        }
        catch ( MalformedURLException mue )
        {
            log.error( mue );
        }
        catch ( Exception e )
        {
            log.error( e );
        }
        // end catch

        // suggest gc
        cb = null;
        running = false;
        return response;
    }
    // end send cache

    // Write the Answer to the Connection
    /** Description of the Method */
    public void writeObj( URLConnection connection, ICacheElement cb )
    {
        try
        {
            connection.setUseCaches( false );
            connection.setRequestProperty( "CONTENT_TYPE", "application/octet-stream" );
            connection.setDoOutput( true );
            connection.setDoInput( true );
            ObjectOutputStream os = new ObjectOutputStream( connection.getOutputStream() );
            log.debug( "os = " + os );

            // Write the ICacheItem to the ObjectOutputStream
            log.debug( "Writing  ICacheItem." );

            os.writeObject( cb );
            os.flush();

            log.debug( "closing output stream" );

            os.close();
        }
        catch ( IOException e )
        {
            log.error( e );
        }
        // end catch
    }


    /** Description of the Method */
    public String read( URLConnection connection )
    {
        String result = "";
        try
        {
            ObjectInputStream is = new ObjectInputStream( connection.getInputStream() );
            result = ( String ) is.readObject();
            is.close();

            log.debug( "got result = " + result );
        }
        catch ( IOException e )
        {
            log.error( e );
        }
        catch ( ClassNotFoundException ce )
        {
            log.error( ce );
        }
        return result;
    }
}
././@LongLink0000000000000000000000000000017500000000000011711 Lustar  rootwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/broadcast/LateralCacheUnicaster.javajakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/broadcast/L0100664000246400000000000001170007471206577032456 0ustar  henningwheelpackage org.apache.jcs.auxiliary.lateral.http.broadcast;

import java.io.InputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.OutputStream;

import java.net.ConnectException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

import org.apache.jcs.engine.behavior.ICacheElement;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import org.apache.jcs.utils.threads.IThreadPoolRunnable;

/**
 * Used to uni-cast a ICacheItem to the named cache on the target server.
 *
 * @author asmuts
 * @created January 15, 2002
 */
public class LateralCacheUnicaster
     implements IThreadPoolRunnable
{
    private final static Log log =
        LogFactory.getLog( LateralCacheUnicaster.class );

    private final ICacheElement item;
    private final String urlStr;

    private URLConnection conn;

    /**
     * Constructs with the given ICacheItem and the url of the target server.
     *
     * @param item
     * @param urlStr
     */
    public LateralCacheUnicaster( ICacheElement item, String urlStr )
    {
        this.item = item;
        this.urlStr = urlStr;

        log.debug( "In LateralCacheUnicaster2, " + Thread.currentThread().getName() );
    }


    /**
     * Called when this object is first loaded in the thread pool. Important:
     * all workers in a pool must be of the same type, otherwise the mechanism
     * becomes more complex.
     *
     * @return The initData value
     */
    public Object[] getInitData()
    {
        return null;
    }


    /**
     * Sends a ICacheItem to the target server. This method will be executed in
     * one of the pool's threads. The thread will be returned to the pool.
     */
    // Todo: error recovery and retry.
    public void runIt( Object thData[] )
    {
        long start = System.currentTimeMillis();

        try
        {
            log.debug( "url = " + urlStr );

            // create our URL
            URL tmpURL = new URL( urlStr );
            URL url = new URL( tmpURL.toExternalForm() );

            log.debug( "tmpURL = " + tmpURL );

            // Open our URLConnection

            log.debug( "Opening Connection." );

            conn = url.openConnection();

            if ( log.isDebugEnabled() )
            {
                log.debug( "conn = " + conn );
            }

            String response = sendCacheItem();

            if ( log.isDebugEnabled() )
            {
                log.debug( "response = " + response );
            }

            conn = null;
        }
        catch ( MalformedURLException mue )
        {
            log.warn( "mue - Unicaster couldn't connect to bad url " + urlStr );
        }
        catch ( ConnectException ce )
        {
            log.warn( "ce - Unicaster couldn't connect to " + urlStr );
        }
        catch ( IOException ioe )
        {
            log.warn( "ioe - Unicaster couldn't connect to " + urlStr );
        }

        if ( log.isDebugEnabled() )
        {
            log.debug( "transfer took " + String.valueOf( System.currentTimeMillis() - start ) + " millis\n" );
        }

        return;
    }

    /**
     * Sends the ICacheItem to the current URLConnection.
     *
     * @return the response from the current URLConnection.
     */
    private String sendCacheItem()
    {
        try
        {
            conn.setUseCaches( false );
            conn.setRequestProperty( "CONTENT_TYPE", "application/octet-stream" );
            conn.setDoOutput( true );
            conn.setDoInput( true );
            ObjectOutputStream os = new ObjectOutputStream( conn.getOutputStream() );
            try
            {
                log.debug( "os = " + os );

                // Write the ICacheItem to the ObjectOutputStream

                log.debug( "Writing ICacheItem." );

                os.writeObject( item );
            }
            finally
            {
                os.close();
            }
            return getResponse();
        }
        catch ( IOException e )
        {
            log.warn( "ie - couldn't send item " + urlStr );
        }

        return "";
    }

    /**
     * Gets the response attribute of the LateralCacheUnicaster object
     *
     * @return The response value
     */
    private String getResponse()
        throws IOException
    {
        String result = "";
        try
        {
            ObjectInputStream is = new ObjectInputStream( conn.getInputStream() );
            try
            {
                result = ( String ) is.readObject();
            }
            finally
            {
                is.close();
            }
            if ( log.isDebugEnabled() )
            {
                log.debug( "got result = " + result );
            }
        }
        catch ( ClassNotFoundException ce )
        {
            log.error( ce );
        }
        catch ( Exception e )
        {
            log.error( e );
        }
        return result;
    }
}
jakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/remove/0040775000246400000000000000000007767563417031706 5ustar  henningwheel././@LongLink0000000000000000000000000000020200000000000011700 Lustar  rootwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/remove/DeleteLateralCacheMulticaster.javajakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/remove/Dele0100664000246400000000000000356707471206577032503 0ustar  henningwheelpackage org.apache.jcs.auxiliary.lateral.http.remove;

import java.util.ArrayList;
import java.util.Iterator;

import org.apache.jcs.auxiliary.lateral.http.remove.DeleteLateralCacheUnicaster;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import org.apache.jcs.utils.threads.ThreadPoolManager;

/*
 * Used to multi-cast a key/val pair to the named cache on multiple servers.
 */
/**
 * Description of the Class
 *
 * @author asmuts
 * @created January 15, 2002
 */
public class DeleteLateralCacheMulticaster
{
    private final static Log log =
        LogFactory.getLog( DeleteLateralCacheMulticaster.class );

    // must get servletName from the props file
    private final String servlet;

    private final String hashtableName;
    private final String key;

    private final ArrayList servers;

    /**
     * Constructor for the DeleteLateralCacheMulticaster object
     *
     * @param hashtableName
     * @param key
     * @param servers
     * @param servlet
     */
    public DeleteLateralCacheMulticaster( String hashtableName, String key, ArrayList servers, String servlet )
    {
        this.hashtableName = hashtableName;
        this.key = key;
        this.servers = servers;
        this.servlet = servlet;

        if ( log.isDebugEnabled() )
        {
            log.debug( "In DistCacheMulticaster" );
        }
    }
    // end constructor

    /** Multi-casts the deltes to the distributed servers. */
    public void multicast()
    {

        ThreadPoolManager tpm = ThreadPoolManager.getInstance();
        Iterator it = servers.iterator();
        //p( "iterating through servers" );
        while ( it.hasNext() )
        {
            String url = ( String ) it.next() + servlet;
            //p( "url = " + url );
            tpm.runIt( new DeleteLateralCacheUnicaster( hashtableName, key, url ) );
        }
        return;
    }
}

././@LongLink0000000000000000000000000000020000000000000011676 Lustar  rootwheeljakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/remove/DeleteLateralCacheUnicaster.javajakarta-turbine-jcs-dev-20031216/src/experimental/org/apache/jcs/auxiliary/lateral/http/remove/Dele0100664000246400000000000000670407471206577032477 0ustar  henningwheelpackage org.apache.jcs.auxiliary.lateral.http.remove;

import java.io.InputStream;
import java.io.OutputStream;

import java.net.URL;
import java.net.URLConnection;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import org.apache.jcs.utils.threads.IThreadPoolRunnable;

/**
 * Used to uni-cast a ICacheItem to the named cache on the target server.
 *
 * @author asmuts
 * @created January 15, 2002
 */
public class DeleteLateralCacheUnicaster implements IThreadPoolRunnable
{
    private final static Log log =
        LogFactory.getLog( DeleteLateralCacheUnicaster.class );

    private final String hashtableName;
    private final String key;

    private String urlStr;

    private URLConnection conn;

    /**
     * Constructs with the given ICacheItem and the url of the target server.
     *
     * @param hashtableName
     * @param key
     * @param urlStr
     */
    public DeleteLateralCacheUnicaster( String hashtableName, String key, String urlStr )
    {

        this.hashtableName = hashtableName;
        this.key = key;

        this.urlStr = urlStr;

        log.debug( "In DeleteLateralCacheUnicaster, " + Thread.currentThread().getName() );
    }


    /**
     * Called when this object is first loaded in the thread pool. Important:
     * all workers in a pool must be of the same type, otherwise the mechanism
     * becomes more complex.
     *
     * @return The initData value
     */
    public Object[] getInitData()
    {
        return null;
    }


    /**
     * Sends a ICacheItem to the target server. This method will be executed in
     * one of the pool's threads. The thread will be returned to the pool.
     */
    // Todo: error recovery and retry.
    public void runIt( Object thData[] )
    {
        long start = Sys