You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by ak...@apache.org on 2004/03/22 11:43:55 UTC
svn commit: rev 9681 - in incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl: . conf src/java/org/apache/eve src/test src/test/org src/test/org/apache src/test/org/apache/eve
Author: akarasulu
Date: Mon Mar 22 02:43:55 2004
New Revision: 9681
Added:
incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/test/
incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/test/org/
incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/test/org/apache/
incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/test/org/apache/eve/
incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/test/org/apache/eve/MerlinFrontendTest.java
Modified:
incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/conf/block.xml
incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/project.xml
incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/java/org/apache/eve/MerlinFrontend.java
Log:
added test case and deps in project.xml and block.xml and filled it all in
Modified: incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/conf/block.xml
==============================================================================
--- incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/conf/block.xml (original)
+++ incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/conf/block.xml Mon Mar 22 02:43:55 2004
@@ -29,43 +29,72 @@
id="avalon-framework:avalon-framework-impl" version="4.1.5"/>
<resource
- id="directory:eve-frontend-common-api" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-common-api" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-spi" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-spi" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-event-spi" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-event-spi" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-event-pojo-impl" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-event-pojo-impl" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-event-merlin-impl" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-event-merlin-impl" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-buffer-spi" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-buffer-spi" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-buffer-pojo-impl" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-buffer-pojo-impl" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-buffer-merlin-impl" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-buffer-merlin-impl" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-listener-spi" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-listener-spi" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-listener-pojo-impl" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-listener-pojo-impl" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-listener-merlin-impl" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-listener-merlin-impl" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-input-spi" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-input-spi" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-input-pojo-impl" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-input-pojo-impl" version="SNAPSHOT"/>
<resource
- id="directory:eve-frontend-input-merlin-impl" version="SNAPSHOT"/>
+ id="incubator-directory:eve-frontend-input-merlin-impl" version="SNAPSHOT"/>
+
+ <resource
+ id="incubator-directory:eve-frontend-output-spi" version="SNAPSHOT"/>
+ <resource
+ id="incubator-directory:eve-frontend-output-pojo-impl" version="SNAPSHOT"/>
+ <resource
+ id="incubator-directory:eve-frontend-output-merlin-impl" version="SNAPSHOT"/>
+
+ <resource
+ id="incubator-directory:eve-frontend-encoder-spi" version="SNAPSHOT"/>
+ <resource
+ id="incubator-directory:eve-frontend-encoder-pojo-impl" version="SNAPSHOT"/>
+ <resource
+ id="incubator-directory:eve-frontend-encoder-merlin-impl" version="SNAPSHOT"/>
+
+ <resource
+ id="incubator-directory:eve-frontend-decoder-spi" version="SNAPSHOT"/>
+ <resource
+ id="incubator-directory:eve-frontend-decoder-pojo-impl" version="SNAPSHOT"/>
+ <resource
+ id="incubator-directory:eve-frontend-decoder-merlin-impl" version="SNAPSHOT"/>
+
+ <resource
+ id="incubator-directory:eve-frontend-processor-spi" version="SNAPSHOT"/>
+ <resource
+ id="incubator-directory:eve-frontend-processor-pojo-impl" version="SNAPSHOT"/>
+ <resource
+ id="incubator-directory:eve-frontend-processor-merlin-impl" version="SNAPSHOT"/>
</repository>
</classpath>
</classloader>
<component name="thread-manager"
class="org.apache.avalon.cornerstone.blocks.threads.DefaultThreadManager">
+
<configuration>
<thread-group>
<name>default</name>
@@ -75,7 +104,44 @@
<min-threads>2</min-threads>
<min-spare-threads>1</min-spare-threads>
</thread-group>
+
+ <thread-group>
+ <name>decoder-manager</name>
+ <priority>5</priority>
+ <is-daemon>false</is-daemon>
+ <max-threads>5</max-threads>
+ <min-threads>2</min-threads>
+ <min-spare-threads>1</min-spare-threads>
+ </thread-group>
+
+ <thread-group>
+ <name>request-processor</name>
+ <priority>5</priority>
+ <is-daemon>false</is-daemon>
+ <max-threads>5</max-threads>
+ <min-threads>2</min-threads>
+ <min-spare-threads>1</min-spare-threads>
+ </thread-group>
+
+ <thread-group>
+ <name>encoder-manager</name>
+ <priority>5</priority>
+ <is-daemon>false</is-daemon>
+ <max-threads>5</max-threads>
+ <min-threads>2</min-threads>
+ <min-spare-threads>1</min-spare-threads>
+ </thread-group>
+
+ <thread-group>
+ <name>output-manager</name>
+ <priority>5</priority>
+ <is-daemon>false</is-daemon>
+ <max-threads>5</max-threads>
+ <min-threads>2</min-threads>
+ <min-spare-threads>1</min-spare-threads>
+ </thread-group>
</configuration>
+
</component>
<component
@@ -93,6 +159,22 @@
<component
name="input-manager"
class="org.apache.eve.input.MerlinInputManager"/>
+
+ <component
+ name="output-manager"
+ class="org.apache.eve.output.impl.MerlinOutputManager"/>
+
+ <component
+ name="encoder-manager"
+ class="org.apache.eve.encoder.impl.MerlinEncoderManager"/>
+
+ <component
+ name="decoder-manager"
+ class="org.apache.eve.decoder.impl.MerlinDecoderManager"/>
+
+ <component
+ name="request-processor"
+ class="org.apache.eve.processor.impl.MerlinRequestProcessor"/>
<component
name="frontend"
Modified: incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/project.xml
==============================================================================
--- incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/project.xml (original)
+++ incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/project.xml Mon Mar 22 02:43:55 2004
@@ -23,6 +23,33 @@
<!-- cornerstone dependencies -->
<dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>3.8.1</version>
+ <url>http://junit.org</url>
+ </dependency>
+
+ <!-- Avalon Dependencies -->
+
+ <dependency>
+ <groupId>merlin</groupId>
+ <artifactId>merlin-unit</artifactId>
+ <version>3.2.10</version>
+ </dependency>
+
+ <!-- for some reason this is needed for merlin-unit tests -->
+ <!-- but it is not needed when when using command line merlin -->
+ <!-- within the block.xml's classloader directive -->
+
+ <dependency>
+ <groupId>logkit</groupId>
+ <artifactId>logkit</artifactId>
+ <version>1.2.2</version>
+ </dependency>
+
+ <!-- cornerstone dependencies -->
+
+ <dependency>
<groupId>cornerstone-threads</groupId>
<artifactId>cornerstone-threads-api</artifactId>
<version>SNAPSHOT</version>
@@ -87,10 +114,55 @@
<url>http://jakarta.apache.org/commons/collections</url>
</dependency>
+ <dependency>
+ <id>commons-lang</id>
+ <version>2.0</version>
+ <url>http://jakarta.apache.org/commons/lang</url>
+ </dependency>
+
+ <dependency>
+ <id>commons-logging</id>
+ <version>1.0.3</version>
+ <url>http://jakarta.apache.org/commons/logging</url>
+ </dependency>
+
+ <dependency>
+ <id>commons-codec</id>
+ <version>1.2</version>
+ <url>http://jakarta.apache.org/commons/codec</url>
+ </dependency>
+
+ <dependency>
+ <id>commons-primitives</id>
+ <version>1.1-dev</version>
+ <url>http://jakarta.apache.org/commons/primitives</url>
+ </dependency>
+
<!-- directory dependencies -->
<dependency>
<groupId>incubator-directory</groupId>
+ <artifactId>ldap-common</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>ldap-snacc-provider</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>codec-stateful</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
<artifactId>eve-frontend-common-api</artifactId>
<version>SNAPSHOT</version>
<url>http://directory.apache.org</url>
@@ -188,10 +260,87 @@
</dependency>
<dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- <url>http://junit.org</url>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-output-spi</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-output-pojo-impl</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-output-merlin-impl</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-encoder-spi</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-encoder-pojo-impl</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-encoder-merlin-impl</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-decoder-spi</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-decoder-pojo-impl</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-decoder-merlin-impl</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-processor-spi</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-processor-pojo-impl</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
+ </dependency>
+
+ <dependency>
+ <groupId>incubator-directory</groupId>
+ <artifactId>eve-frontend-processor-merlin-impl</artifactId>
+ <version>SNAPSHOT</version>
+ <url>http://directory.apache.org</url>
</dependency>
</dependencies>
</project>
Modified: incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/java/org/apache/eve/MerlinFrontend.java
==============================================================================
--- incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/java/org/apache/eve/MerlinFrontend.java (original)
+++ incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/java/org/apache/eve/MerlinFrontend.java Mon Mar 22 02:43:55 2004
@@ -17,15 +17,20 @@
package org.apache.eve ;
-import org.apache.avalon.cornerstone.services.threads.ThreadManager ;
import org.apache.avalon.framework.service.Serviceable ;
import org.apache.avalon.framework.service.ServiceManager ;
import org.apache.avalon.framework.service.ServiceException ;
+import org.apache.avalon.cornerstone.services.threads.ThreadManager ;
+
import org.apache.eve.event.EventRouter ;
import org.apache.eve.buffer.BufferPool ;
import org.apache.eve.input.InputManager ;
+import org.apache.eve.output.OutputManager ;
+import org.apache.eve.decoder.DecoderManager ;
+import org.apache.eve.encoder.EncoderManager ;
import org.apache.eve.listener.ListenerManager ;
+import org.apache.eve.processor.RequestProcessor ;
/**
@@ -46,10 +51,14 @@
Serviceable
{
BufferPool m_bufferPool = null ;
- ThreadManager m_threadManager = null ;
EventRouter m_eventRouter = null ;
- ListenerManager m_listenerManager = null ;
InputManager m_inputManager = null ;
+ OutputManager m_outputManager = null ;
+ ThreadManager m_threadManager = null ;
+ EncoderManager m_encoderManager = null ;
+ DecoderManager m_decoderManager = null ;
+ ListenerManager m_listenerManager = null ;
+ RequestProcessor m_requestProcessor = null ;
// ------------------------------------------------------------------------
@@ -68,6 +77,14 @@
* key="listener-manager" version="1.0"
* @avalon.dependency type="org.apache.eve.input.InputManager"
* key="input-manager" version="1.0"
+ * @avalon.dependency type="org.apache.eve.output.OutputManager"
+ * key="output-manager" version="1.0"
+ * @avalon.dependency type="org.apache.eve.decoder.DecoderManager"
+ * key="decoder-manager" version="1.0"
+ * @avalon.dependency type="org.apache.eve.encoder.EncoderManager"
+ * key="encoder-manager" version="1.0"
+ * @avalon.dependency type="org.apache.eve.processor.RequestProcessor"
+ * key="request-processor" version="1.0"
*
* @see org.apache.avalon.framework.service.Serviceable#service(
* org.apache.avalon.framework.service.ServiceManager)
@@ -88,5 +105,17 @@
m_inputManager = ( InputManager ) a_manager
.lookup( "input-manager" ) ;
+
+ m_outputManager = ( OutputManager ) a_manager
+ .lookup( "output-manager" ) ;
+
+ m_decoderManager = ( DecoderManager ) a_manager
+ .lookup( "decoder-manager" ) ;
+
+ m_encoderManager = ( EncoderManager ) a_manager
+ .lookup( "encoder-manager" ) ;
+
+ m_requestProcessor = ( RequestProcessor ) a_manager
+ .lookup( "request-processor" ) ;
}
}
Added: incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/test/org/apache/eve/MerlinFrontendTest.java
==============================================================================
--- (empty file)
+++ incubator/directory/eve/trunk/eve/frontend/frontend/merlin-impl/src/test/org/apache/eve/MerlinFrontendTest.java Mon Mar 22 02:43:55 2004
@@ -0,0 +1,119 @@
+/*
+ * Copyright 2004 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+package org.apache.eve ;
+
+
+import org.apache.avalon.cornerstone.services.threads.ThreadManager;
+import org.apache.avalon.merlin.unit.AbstractMerlinTestCase ;
+import org.apache.eve.buffer.BufferPool;
+import org.apache.eve.decoder.DecoderManager;
+import org.apache.eve.encoder.EncoderManager;
+import org.apache.eve.event.EventRouter;
+import org.apache.eve.input.InputManager;
+import org.apache.eve.listener.ListenerManager;
+import org.apache.eve.output.OutputManager;
+import org.apache.eve.processor.RequestProcessor;
+
+
+/**
+ * Tests the Merlin based frontend.
+ *
+ * @author <a href="mailto:directory-dev@incubator.apache.org">
+ * Apache Directory Project</a>
+ * @version $Rev$
+ */
+public class MerlinFrontendTest extends AbstractMerlinTestCase
+{
+ private BufferPool bufferPool = null ;
+ private EventRouter eventRouter = null ;
+ private InputManager inputManager = null ;
+ private OutputManager outputManager = null ;
+ private ThreadManager threadManager = null ;
+ private EncoderManager encoderManager = null ;
+ private DecoderManager decoderManager = null ;
+ private ListenerManager listenerManager = null ;
+ private RequestProcessor requestProcessor = null ;
+
+ /**
+ * Creates a frontendt test case.
+ *
+ * @param name
+ */
+ public MerlinFrontendTest( String name )
+ {
+ super( name ) ;
+ }
+
+
+ /*
+ * @see AbstractMerlinTestCase#setUp()
+ */
+ public void setUp() throws Exception
+ {
+ super.setUp() ;
+
+ bufferPool = ( BufferPool )
+ resolve( "/eve/buffer-pool" ) ;
+
+ eventRouter = ( EventRouter )
+ resolve( "/eve/event-router" ) ;
+
+ inputManager = ( InputManager )
+ resolve( "/eve/input-manager" ) ;
+
+ outputManager = ( OutputManager )
+ resolve( "/eve/output-manager" ) ;
+
+ threadManager = ( ThreadManager )
+ resolve( "/eve/thread-manager" ) ;
+
+ encoderManager = ( EncoderManager )
+ resolve( "/eve/encoder-manager" ) ;
+
+ decoderManager = ( DecoderManager )
+ resolve( "/eve/decoder-manager" ) ;
+
+ listenerManager = ( ListenerManager )
+ resolve( "/eve/listener-manager" ) ;
+
+ requestProcessor = ( RequestProcessor )
+ resolve( "/eve/request-processor" ) ;
+ }
+
+
+ /*
+ * @see AbstractMerlinTestCase#tearDown()
+ */
+ public void tearDown()
+ {
+ super.tearDown() ;
+ }
+
+
+ public void testPlacebo()
+ {
+ assertNotNull( this.bufferPool ) ;
+ assertNotNull( this.decoderManager ) ;
+ assertNotNull( this.encoderManager ) ;
+ assertNotNull( this.eventRouter ) ;
+ assertNotNull( this.inputManager ) ;
+ assertNotNull( this.listenerManager ) ;
+ assertNotNull( this.outputManager ) ;
+ assertNotNull( this.requestProcessor ) ;
+ assertNotNull( this.threadManager ) ;
+ }
+}