Yes, that looks good too. -----Original Message----- From: Aaron Smuts [mailto:[EMAIL PROTECTED] Sent: Monday, 19 April, 2004 17:13 To: 'Turbine JCS Users List' Subject: RE: xml config prototype
I'll think just having it <name>value</name> would be better. That's especially easy to do in xstream. > -----Original Message----- > From: Estefano Eduardo [mailto:[EMAIL PROTECTED] > Sent: Monday, April 19, 2004 1:52 AM > To: Turbine JCS Users List > Subject: RE: xml config prototype > > What about instead of the set-property tags just make them attributes of > the parent tag. Or, if needed, name each <set-property> as the attribute > name? Or even better, have both work. > > Ex1: > > <cache-attributes > classname="org.apache.jcs.engine.CompositeCacheAttributes"/> > > Ex2: > > <cache-attributes> > <classname value="org.apache.jcs.engine.CompositeCacheAttributes"/> > <cache-attributes> > > > -----Original Message----- > From: Aaron Smuts [mailto:[EMAIL PROTECTED] > Sent: Sunday, 18 April, 2004 8:14 > To: 'Turbine JCS Users List' > Subject: xml config prototype > > > I'm working using Digester to configure JCS using xml. I've pasted a > very rough prototype of a jcs.xml configuration file below. I'm hoping > that someone will have some suggestions on how to improve it or > completely redo it. I tend to make ugly xml. Any ideas would be > appreciated. > > If we get a basic format, I'll just have the cachemanager call a > different configuration class if the file ends in .xml. This should > keep it backward compatible. > > This file does not include the remote server configuration yet. > > Aaron > > > ------------------------------------------------------------------------ > --- > <?xml version="1.0" encoding="ISO-8859-1"?> > > <!-- > This is the JCS configuration file. > > There are two sections to this file. > > 1. Regions -- This section identifies what regions will be > preconfigured. Any regions created at runtime will adopt the default > configuration. > > Default -- This attribute identifies a default configuration. Regions > that are not specified in this file will adopt the default settings. > The default configuration specifies what auxiliaries to use, the > default region settings (or cacheattributes), and the default element > settings (or element attributes). > One default is necessary, and only one is allowed. > > System -- This attribute identifies the region by which the system will > handle groups. > One groupid is necessary, and only one is allowed. > > > 2. Auxiliaries -- This section defines the auxiliaries available. If a > region definition or the default configuration references an > auxiliary, it must be included in this section. Auxiliaries not > referenced in the region or default configuration sections are > ignored. Memory managers can be plugged in and are often called > auxiliaries, but > they cannot be defined in this section. Memory managers must be defined > in the region or default configuration sections. > > --> > > <jcs> > > <regions> > > <!-- One region, but not more than one, must be marked default. --> > <region> > <name default="true">example</name> > <auxiliary-list>DC<auxiliary-list/> > <cache-attributes> > <set-property > name="classname" > value="org.apache.jcs.engine.CompositeCacheAttributes" /> > <set-property > name="MaxObjects" > value="10" /> > <set-property > name="MemoryCacheName" > value="org.apache.jcs.engine.memory.lru.LRUMemoryCache" /> > <set-property > name="UseMemoryShrinker" > value="false" /> > <set-property > name="ShrinkerIntervalSeconds" > value="30" /> > <set-property > name="MaxMemoryIdleTimeSeconds" > value="3600000000" /> > </cache-attributes> > <element-attributes> > <set-property > name="classname" value="org.apache.jcs.engine.ElementAttributes" > /> > <set-property > name="IsEternal" > value="true" /> > <set-property > name="MaxLifeSeconds" > value="30" /> > <set-property > name="IsSpool" > value="true" /> > <set-property > name="IsRemote" > value="true" /> > <set-property > name="IsLateral" > value="true" /> > </element-attributes> > </region> > > > <!-- One region, but not more than one, must be marked groupid. --> > <region> > <name groupid="true">system-group-id</name> > <auxiliary-list>DC<auxiliary-list/> > <cache-attributes> > <set-property > name="classname" > value="org.apache.jcs.engine.CompositeCacheAttributes" /> > <set-property > name="MaxObjects" > value="10" /> > <set-property > name="MemoryCacheName" > value="org.apache.jcs.engine.memory.lru.LRUMemoryCache" /> > <set-property > name="UseMemoryShrinker" > value="false" /> > <set-property > name="ShrinkerIntervalSeconds" > value="30" /> > <set-property > name="MaxMemoryIdleTimeSeconds" > value="3600000000" /> > </cache-attributes> > <element-attributes> > <set-property > name="classname" value="org.apache.jcs.engine.ElementAttributes" > /> > <set-property > name="IsEternal" > value="true" /> > <set-property > name="MaxLifeSeconds" > value="30" /> > <set-property > name="IsSpool" > value="true" /> > <set-property > name="IsRemote" > value="true" /> > <set-property > name="IsLateral" > value="true" /> > </element-attributes> > </region> > > > <!-- Otptional Regions --> > <region> > <name>testCache1</name> > <auxiliary-list>DC<auxiliary-list/> > <cache-attributes> > <set-property > name="classname" > value="org.apache.jcs.engine.CompositeCacheAttributes" /> > <set-property > name="MaxObjects" > value="10" /> > <set-property > name="MemoryCacheName" > value="org.apache.jcs.engine.memory.lru.LRUMemoryCache" /> > <set-property > name="UseMemoryShrinker" > value="false" /> > <set-property > name="ShrinkerIntervalSeconds" > value="30" /> > <set-property > name="MaxMemoryIdleTimeSeconds" > value="3600000000" /> > </cache-attributes> > <element-attributes> > <set-property > name="classname" value="org.apache.jcs.engine.ElementAttributes" > /> > <set-property > name="IsEternal" > value="true" /> > <set-property > name="MaxLifeSeconds" > value="30" /> > <set-property > name="IsSpool" > value="true" /> > <set-property > name="IsRemote" > value="true" /> > <set-property > name="IsLateral" > value="true" /> > </element-attributes> > </region> > > </regions> > > > > <!-- Auxiliary COnfiguration --> > > <auxiliaries> > > <!-- Remote RMI cache without failover --> > <auxiliary> > <name>RGroup</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.remote.RemoteCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.remote.RemoteCacheAttributes" > /> > <set-property > name="RemoteTypeName" > value="LOCAL" /> > <set-property > name="RemoteHost" > value="localhost" /> > <set-property > name="RemotePort" > value="1102" /> > <set-property > name="GetOnly" > value="true" /> > </auxiliary-attributes> > </auxiliary> > > > <!-- Remote RMI cache with failover --> > <auxiliary> > <name>RFailover</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.remote.RemoteCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.remote.RemoteCacheAttributes" > /> > <set-property > name="RemoteTypeName" > value="LOCAL" /> > <set-property > name="FailoverServers" > value="localhost:1102" /> > <set-property > name="GetOnly" > value="false" /> > </auxiliary-attributes> > </auxiliary> > > > > <!-- Primary Disk Cache --> > <auxiliary> > <name>DC</name> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheFactory" /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheAttributes" > /> > <set-property > name="DiskPath" > value="i:\\dev\\raf" /> > </auxiliary-attributes> > </auxiliary> > > > <!-- HSQL Disk Cache -- too slow --> > <auxiliary> > <name>HDC</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.disk.hsql.HSQLCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.disk.hsql.HSQLCacheAttributes" /> > <set-property > name="DiskPath" > value="i:\\dev\\hsql" /> > </auxiliary-attributes> > </auxiliary> > > > <!-- JISP Disk Cache -- save memory with disk key storage --> > <auxiliary> > <name>HDC</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.disk.jisp.JISPCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.disk.jisp.JISPCacheAttributes" /> > <set-property > name="DiskPath" > value="i:\\dev\\jisp" /> > <set-property > name="ClearOnStart" > value="false" /> > </auxiliary-attributes> > </auxiliary> > > > <!-- Unreliable Lateral --> > <auxiliary> > <name>LUDP</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.lateral.LateralCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.lateral.LateralCacheAttributes" /> > <set-property > name="TransmissionTypeName" > value="UDP" /> > <set-property > name="UdpMulticastAddr" > value="228.5.6.7" /> > <set-property > name="UdpMulticastPort" > value="6789" /> > </auxiliary-attributes> > </auxiliary> > > > <!-- JavaGroups Lateral --> > <auxiliary> > <name>LJG</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.lateral.LateralCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.lateral.LateralCacheAttributes" /> > <set-property > name="TransmissionTypeName" > value="JAVAGROUPS" /> > <set-property > name="UdpMulticastAddr" > value="228.5.6.7" /> > <set-property > name="UdpMulticastPort" > value="6789" /> > <set-property > name="PutOnlyMode" > value="false" /> > </auxiliary-attributes> > </auxiliary> > > > <!-- Reliable, fast TCP Lateral --> > <auxiliary> > <name>LTCP</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.lateral.LateralCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.lateral.LateralCacheAttributes" /> > <set-property > name="TransmissionTypeName" > value="TCP" /> > <set-property > name="TcpServers" > value="localhost:1111,localhost2:1112" /> > <set-property > name="TcpListenerPort" > value="1111" /> > <set-property > name="PutOnlyMode" > value="true" /> > </auxiliary-attributes> > </auxiliary> > > > <!-- XMLRPC Lateral --> > <auxiliary> > <name>LTCP</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.lateral.LateralCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.lateral.LateralCacheAttributes" /> > <set-property > name="TransmissionTypeName" > value="XMLRPC" /> > <set-property > name="HttpServers" > value="localhost:8182" /> > <set-property > name="HttpListenerPort" > value="8181" /> > <set-property > name="PutOnlyMode" > value="false" /> > </auxiliary-attributes> > </auxiliary> > > > <!-- HTTP Lateral --> > <auxiliary> > <name>LTCP</name> > <set-property > name="classname" > value="org.apache.jcs.auxiliary.lateral.LateralCacheFactory" > /> > <auxiliary-attributes> > <set-property > name="classname" > > value="org.apache.jcs.auxiliary.lateral.LateralCacheAttributes" /> > <set-property > name="TransmissionTypeName" > value="HTTP" /> > <set-property > name="HttpServers" > value="localhost:8080,localhost:7001,localhost:80" /> > <set-property > name="httpReceiveServlet" > value="/cache/LateralCacheReceiverServlet" /> > <set-property > name="httpDeleteServlet" > value="/cache/DeleteCacheServlet" /> > </auxiliary-attributes> > </auxiliary> > > > <auxiliaries/> > > </jcs> > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: > [EMAIL PROTECTED] > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
