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 2005/12/29 16:37:20 UTC
svn commit: r359824 - in /directory/releases/mina-0.9.0/src/site/xdoc: ./
images/
Author: akarasulu
Date: Thu Dec 29 07:35:29 2005
New Revision: 359824
URL: http://svn.apache.org/viewcvs?rev=359824&view=rev
Log:
commiting svn:externals for site docs
Added:
directory/releases/mina-0.9.0/src/site/xdoc/
directory/releases/mina-0.9.0/src/site/xdoc/demo.htm (with props)
directory/releases/mina-0.9.0/src/site/xdoc/demo.swf (with props)
directory/releases/mina-0.9.0/src/site/xdoc/faq.fml
directory/releases/mina-0.9.0/src/site/xdoc/features.xml
directory/releases/mina-0.9.0/src/site/xdoc/getting_started.xml
directory/releases/mina-0.9.0/src/site/xdoc/history.xml
directory/releases/mina-0.9.0/src/site/xdoc/images/
directory/releases/mina-0.9.0/src/site/xdoc/images/apache-directory-logo.png (with props)
directory/releases/mina-0.9.0/src/site/xdoc/index.xml
directory/releases/mina-0.9.0/src/site/xdoc/mina.pdf (with props)
directory/releases/mina-0.9.0/src/site/xdoc/mina.ppt (with props)
directory/releases/mina-0.9.0/src/site/xdoc/navigation.xml
directory/releases/mina-0.9.0/src/site/xdoc/roadmap.xml
directory/releases/mina-0.9.0/src/site/xdoc/testimonials.xml
Added: directory/releases/mina-0.9.0/src/site/xdoc/demo.htm
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/demo.htm?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/demo.htm (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/demo.htm Thu Dec 29 07:35:29 2005
@@ -0,0 +1,11 @@
+<HTML>
+<BODY><center><OBJECT CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="800" HEIGHT="600" CODEBASE="http://active.macromedia.com/flash5/cabs/swflash.cab#version=5,0,0,0">
+<PARAM NAME=movie VALUE="demo.swf">
+<PARAM NAME=play VALUE=true>
+<PARAM NAME=loop VALUE=false>
+<PARAM NAME=quality VALUE=low>
+<EMBED SRC="demo.swf" WIDTH=800 HEIGHT=600 quality=low loop=false TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">
+</EMBED>
+</OBJECT>
+</center>
+</BODY></HTML>
Propchange: directory/releases/mina-0.9.0/src/site/xdoc/demo.htm
------------------------------------------------------------------------------
svn:executable = *
Added: directory/releases/mina-0.9.0/src/site/xdoc/demo.swf
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/demo.swf?rev=359824&view=auto
==============================================================================
Binary file - no diff available.
Propchange: directory/releases/mina-0.9.0/src/site/xdoc/demo.swf
------------------------------------------------------------------------------
svn:executable = *
Propchange: directory/releases/mina-0.9.0/src/site/xdoc/demo.swf
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/releases/mina-0.9.0/src/site/xdoc/faq.fml
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/faq.fml?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/faq.fml (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/faq.fml Thu Dec 29 07:35:29 2005
@@ -0,0 +1,400 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+/*
+ * Copyright 2001-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.
+ */
+ -->
+
+<faqs title="Frequently Asked Questions">
+
+ <part id="general">
+ <title>General</title>
+
+ <faq id="definition">
+ <question>What does MINA mean?</question>
+ <answer>
+ <p>
+ MINA is:
+ <ul>
+ <li>an acronym for 'Multipurporse Infrastructure for Network
+ Applications'</li>
+ <li>A girl's name</li>
+ <li>'South' in Japanese</li>
+ <li>'Mine' (as in mineshaft) in Spanish and Portuguese</li>
+ </ul>
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="versions">
+ <question>Which version of MINA should I use?</question>
+ <answer>
+ <p>
+ MINA uses Linux-like version numbers. There are currently two
+ streams in MINA; 0.7 and 0.9:
+ <ul>
+ <li>0.7 is the first public release of MINA.</li>
+ <li>0.8 is the official stable release of 0.7.</li>
+ <li>0.9 has richer features and cleaner API than 0.8.</li>
+ <li>1.0 is the official stable release of 0.9</li>
+ </ul>
+ </p>
+ <p>
+ Here are the general rules for choosing an appropriate release:
+ <ul>
+ <li>Prefer the latest release with even version numbers to with
+ odd ones.</li>
+ <li>Try the latest release with odd version numbers if there are
+ missing features in the stable release.</li>
+ </ul>
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="requirements">
+ <question>What is required to build/run MINA?</question>
+ <answer>
+ <p>
+ JDK 1.5 or above is required to build MINA. But MINA runs perfect
+ with JDK 1.4 only if you don't use SSLFilter which uses Java 5
+ SSLEngine. This means JDK 1.5 or above is required for you to
+ use SSL with MINA.
+ </p>
+ <p>
+ MINA depends on <a href="http://www.slf4j.org">SLF4J (Simple Logging
+ Facade for Java)</a>, a logging framework from the author of
+ <a href="http://logging.apache.org/log4j/docs/index.html">Log4J</a>.
+ SLF4J is very similar to
+ <a href="http://jakarta.apache.org/commons/logging/">Commons-Logging</a>,
+ but it doesn't cause any class loader issues at all. SLF4J provides
+ bindings for Log4J, JDK 1.4 logging API, and NLog4J. Please put an
+ appropriate SLF4J JAR file which corresponds to your favorite logging
+ framework to the classpath as SLF4J documentation explains.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="support">
+ <question>How can I get help?</question>
+ <answer>
+ <p>
+ The primary source to get help is the documentation. Please
+ take a look at <a href="getting_started.html">Getting Started</a>
+ section.
+ </p>
+ <p>
+ You can also contact us via <a href="mail-lists.html">the mailing
+ list</a> or <a href="http://gleamynode.net/dev/forum/list.php?1">the
+ support forum</a> to ask questions on MINA or to contribute to it.
+ Please do not send messages to the authors directly.
+ </p>
+ <p>
+ If you've found some problem in MINA, please report the bug using
+ <a href="http://issues.apache.org/jira/browse/DIRMINA">our bug
+ reporting system</a>. A step-by-step instruction to reproduce the bug
+ or JUnit test case code is appreciated.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="contribution">
+ <question>How / What can I contribute?</question>
+ <answer>
+ <p>
+ You can contribute anything related with MINA; examples, useful
+ codecs for existing protocols, tutorials, feature improvements,
+ bug fixes, benchmarks, and whatever. Please contact us via
+ <a href="mail-lists.html">the mailing list</a> or
+ <a href="http://gleamynode.net/dev/forum/list.php?1">the support
+ forum</a>.
+ </p>
+ </answer>
+ </faq>
+ </part>
+
+ <part id="features">
+ <title>Can MINA ...?</title>
+
+ <faq id="client-api">
+ <question>
+ Can I use MINA to create client applications?
+ </question>
+ <answer>
+ <p>
+ Yes. You can create both client and server applications with MINA.
+ Please take a look at <tt>IoConnector</tt> and
+ <tt>ProtocolConnector</tt>.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="text-protocols">
+ <question>
+ Can MINA handle text protocols such as HTTP?
+ </question>
+ <answer>
+ <p>
+ Yes. Please take a look at <a target="classFrame" href="xref-examples/org/apache/mina/examples/reverser/package-summary.html">Reverser</a> and <a target="classFrame" href="xref-examples/org/apache/mina/examples/httpserver/package-summary.html">HTTP server</a> example.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="binary-protocols">
+ <question>
+ Can MINA handle complex binary protocols such as LDAP?
+ </question>
+ <answer>
+ <p>
+ Yes. Please take a look at <a target="classFrame" href="xref-examples/org/apache/mina/examples/sumup/package-summary.html">SumUp</a> example.
+ There is also <a href="http://directory.apache.org/subprojects/asn1/">Apache ASN.1</a> project which provides ASN.1 codec for MINA.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="keep-alive">
+ <question>
+ Can I implement protocols that keeps connection alive with MINA?
+ </question>
+ <answer>
+ <p>
+ Yes. MINA doesn't close any connections unless you called
+ <tt>Session.close()</tt> or connection is closed by the remote peer.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="tls-and-sasl">
+ <question>
+ Does MINA support TLS and SASL out-of-the-box?
+ </question>
+ <answer>
+ <p>
+ Not yet. We're going to provide an easy way to implement TLS
+ and SASL in version 0.9.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="handler-synchronization">
+ <question>
+ Do I need to make my IoHandler thread-safe?
+ </question>
+ <answer>
+ <p>
+ It depends on your implementation. If you access the resource
+ which is shared across multiple sessions, you have to make it
+ thread-safe. If the resource is not shared at all and accessed
+ by only one session (e.g. storing context information as a session
+ attribute), then you don't need to make it thread-safe. It is
+ because all events generated by MINA are transmitted to your
+ handler in order, and the newer event is not processed if the
+ event handler method for the older event for the same session didn't
+ return yet because MINA uses leader-followers thread pool by default.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="other-transport-types">
+ <question>
+ What transport types can MINA support except TCP/IP and UDP/IP?
+ </question>
+ <answer>
+ <p>
+ Virtually all kind of transport types. MINA API is designed to be
+ transport-independent. You can implement any transport type support
+ only if you can conform to MINA API. Support for Pre-1.4 I/O (aka BIO),
+ reliable multicast, Java Communications API, and file I/O is planned.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="multicast">
+ <question>
+ Does MINA support multicast?
+ </question>
+ <answer>
+ <p>
+ Not yet. Java NIO doesn't support multicast yet. Multicast for NIO
+ will be available in Java 6, Mustang. We are seriously considering
+ to implement multicasts using pre-1.4 Java API.
+ </p>
+ </answer>
+ </faq>
+ </part>
+
+ <part id="howto">
+ <title>How do I ...?</title>
+
+ <faq id="per-session-data">
+ <question>
+ How can I store session-specific information?
+ </question>
+ <answer>
+ <p>
+ Sessions are capable of custom attributes that users can add or
+ remove at any time. These custom attributes are not shared between
+ sessions; it is designed to store session specific information.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="demuxing-messages">
+ <question>
+ How can I separate an event handler into multiple handlers when I
+ implement complex business logic?
+ </question>
+ <answer>
+ <p>
+ Please refer to DemuxingIoHandler (or DemuxingProtocolHandler).
+ <a target="classFrame" href="xref-examples/org/apache/mina/examples/sumup/package-summary.html">SumUp</a> example
+ demonstrates the usage.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="reconnect-to-server">
+ <question>
+ How can I reconnect to server after my client session is closed.
+ </question>
+ <answer>
+ <p>
+ Here is an example code:
+<source>
+public void sessionClosed( ProtocolSession session ) throws Exception
+{
+ // Wait for five seconds before reconnecting; you'll have to perform
+ // reconnection in other thread if you're using MINA 0.7 or 0.8.
+ // (You don't need to do if you're using MINA 0.9 or above.)
+ Thread.sleep( 5000 );
+
+ // Reconnect.
+ connector.connect( session.getRemoteAddress(), this );
+}
+</source>
+ </p>
+ <p>
+ Possibly it would be better to extract this code to a method like
+ 'reconnect()' so that it can reusable in more than one place.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="when-use-filter">
+ <question>
+ When should I implement my protocol handler using filters?
+ </question>
+ <answer>
+ <p>
+ Filters (both <tt>IoFilter</tt> and <tt>ProtocolFilter</tt>) are
+ usually considered reusable just like we think Servlet filters.
+ Please implement commonly used business logic such as authorization
+ and logging as a filter. In case you implement just complex
+ multi-layer protocols like Kerberos, you could consider
+ <a href="http://jakarta.apache.org/commons/chain/">Apache Jakarta
+ Commons Chain</a> as an alternative.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="message-timeout">
+ <question>
+ How can I detect when the remote peer doesn't send a response message
+ for my request message?
+ </question>
+ <answer>
+ You can't use <tt>sessionIdle</tt> event simply here. You'll have to
+ use <tt>java.util.Timer</tt> and <tt>java.util.TimerTask</tt> (or
+ <a href="http://www.opensymphony.com/quartz/">OpenSymphony Quartz</a>
+ as an alternative). Schedule a timeout task to be executed on timeout
+ situation for each request message, and cancel it when you receive the
+ corresponding response message.
+ </answer>
+ </faq>
+
+ <faq id="adding-filters-per-session">
+ <question>
+ How can I add filters to a specific session or port?
+ </question>
+ <answer>
+ There is <tt>IoSession.getFilterChain()</tt> and
+ <tt>ProtocolSession.getFilterChain()</tt> that returns
+ <tt>IoFilterChain</tt> and <tt>ProtocolFilterChain</tt> respectively.
+ You can add any session-specific filters using the returned chain.
+ But you cannot add port-specific filters right now. You'll have to
+ create more than one <tt>IoAcceptor</tt> or <tt>ProtocolAcceptor</tt>
+ because each acceptors have one filter chain you can adjust.
+ </answer>
+ </faq>
+
+ <faq id="logging-framework">
+ <question>
+ How can I let MINA log messages using my favorite logging framework (i.e. Log4J)?
+ </question>
+ <answer>
+ MINA depends on <a href="http://www.slf4j.org">SLF4J (Simple Logging
+ Facade for Java)</a>, a logging framework from the author of
+ <a href="http://logging.apache.org/log4j/docs/index.html">Log4J</a>.
+ SLF4J is very similar to
+ <a href="http://jakarta.apache.org/commons/logging/">Commons-Logging</a>,
+ but it doesn't cause any class loader issues at all. SLF4J provides
+ bindings for Log4J, JDK 1.4 logging API, and NLog4J. Please put an
+ appropriate SLF4J JAR file which corresponds to your favorite logging
+ framework to the classpath as SLF4J documentation explains.
+ </answer>
+ </faq>
+ </part>
+
+ <part id="troubleshooting">
+ <title>Troubleshooting</title>
+
+ <faq id="connection-reset">
+ <question>
+ I get response timeout and connection reset under heavy load.
+ </question>
+ <answer>
+ <p>
+ JVM might have ran out of direct memory. Please try increasing
+ maximum direct memory size using <tt>-XX:MaxDirectMemorySize</tt>
+ option (e.g. <tt>-XX:MaxDirectMemorySize=128M</tt>)
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="no-data-written">
+ <question>
+ No data is writtin out to the session even if the buffer is not empty.
+ </question>
+ <answer>
+ <p>
+ Please check if you called <tt>ByteBuffer.flip()</tt> to flip
+ the buffer before writing the buffer out? It is a common mistake
+ NIO beginners make.
+ </p>
+ </answer>
+ </faq>
+
+ <faq id="ssl-client-hangs">
+ <question>
+ I created an SSL client with MINA, but it doesn't initiate any handshake
+ after the session is open.
+ </question>
+ <answer>
+ Please make sure you called <tt>SSLFilter.setUseClientMode(true)</tt>
+ before you initiate a connection. Server developers will also have to
+ disconnect users who doesn't initiate SSL handshake.
+ </answer>
+ </faq>
+ </part>
+</faqs>
Added: directory/releases/mina-0.9.0/src/site/xdoc/features.xml
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/features.xml?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/features.xml (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/features.xml Thu Dec 29 07:35:29 2005
@@ -0,0 +1,44 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <properties>
+ <author email="trustin@apache.org">Trustin Lee</author>
+ <title>Features</title>
+ </properties>
+
+ <body>
+ <section name="Features">
+ <p>
+ MINA is a simple yet full-featured network application framework
+ which provides:
+ <ul>
+ <li>Unified API for various transport types:
+ <ul>
+ <li>TCP/IP</li>
+ <li>UDP/IP</li>
+ <li>In-VM pipe communication</li>
+ <li>You can implement your own!</li>
+ </ul></li>
+ <li>Low-level and high-level API:
+ <ul>
+ <li>Low-level: uses ByteBuffers</li>
+ <li>High-level: uses user-defined message objects and codecs</li>
+ </ul></li>
+ <li>Stream-based I/O support via <code>StreamIoHandler</code></li>
+ <li>Filter interface as an extension point; similar to <a href="http://java.sun.com/products/servlet/Filters.html">Servlet filters</a>
+ <ul>
+ <li>SSL support via <code>SSLFilter</code> thanks to Java 5 <code>SSLEngine</code></li>
+ <li>Thread pools are implemented as filters so that users can customize thread model.</li>
+ </ul></li>
+ <li>Unit testability using <a href="http://www.mockobjects.com/">mock objects</a>,</li>
+ <li>JMX managability, (coming soon)</li>
+ <li>Traffic throttling, (coming soon)</li>
+ <li>Overload shielding, (coming soon)</li>
+ <li>Integration with well known containers such as Spring
+ and OSGi, (coming soon)</li>
+ <li>Smooth migration from Netty, a popular NIO framework.
+ (See <a href="http://gleamynode.net/dev/tl-netty2-example-sumup/docs/">Netty Tutorial</a>)</li>
+ </ul>
+ </p>
+ </section>
+ </body>
+</document>
Added: directory/releases/mina-0.9.0/src/site/xdoc/getting_started.xml
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/getting_started.xml?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/getting_started.xml (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/getting_started.xml Thu Dec 29 07:35:29 2005
@@ -0,0 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <properties>
+ <author email="trustin@apache.org">Trustin Lee</author>
+ <title>Getting Started</title>
+ </properties>
+
+ <body>
+ <section name="Getting Started">
+ <p>
+ Must-reads:
+ <ul>
+ <li>Introduction to MINA (from ApacheCon US 2005)
+ <ul>
+ <li><a href="mina.ppt" target="_blank">PPT version with animations</a></li>
+ <li><a href="mina.pdf" target="_blank">PDF version without animations</a></li>
+ <li><a href="demo.htm" target="_blank">Demo movie</a></li>
+ </ul>
+ </li>
+ <li><a href="http://wiki.apache.org/directory/MinaTutorial" target="_blank">MINA Tutorial</a></li>
+ </ul>
+ </p>
+
+ <subsection name="Examples">
+ <p>
+ You'll learn faster with
+ <a target="_blank" href="xref-examples/index.html">examples</a>
+ referring to
+ <a target="_blank" href="apidocs/index.html">JavaDocs</a>.
+ <table>
+ <tr>
+ <th>Name</th>
+ <th>Feature it demonstrates</th>
+ <th>Side</th>
+ </tr>
+ <tr>
+ <td><a target="classFrame" href="xref-examples/org/apache/mina/examples/reverser/package-summary.html">Reverser</a></td>
+ <td>High-level protocol layer</td>
+ <td>Server</td>
+ </tr>
+ <tr>
+ <td><a target="classFrame" href="xref-examples/org/apache/mina/examples/sumup/package-summary.html">SumUp server</a></td>
+ <td>High-level protocol layer and DemuxingProtocolCodec</td>
+ <td>Both</td>
+ </tr>
+ <tr>
+ <td><a target="classFrame" href="xref-examples/org/apache/mina/examples/echoserver/package-summary.html">Echo server</a></td>
+ <td>Low-level I/O layer and SSL support</td>
+ <td>Server</td>
+ </tr>
+ <tr>
+ <td><a target="classFrame" href="xref-examples/org/apache/mina/examples/netcat/package-summary.html">NetCat</a></td>
+ <td>Low-level I/O layer</td>
+ <td>Client</td>
+ </tr>
+ <tr>
+ <td><a target="classFrame" href="xref-examples/org/apache/mina/examples/httpserver/package-summary.html">HTTP server</a></td>
+ <td>Stream-based synchronous I/O support.</td>
+ <td>Server</td>
+ </tr>
+ <tr>
+ <td><a target="classFrame" href="xref-examples/org/apache/mina/examples/tennis/package-summary.html">Tennis</a></td>
+ <td>In-VM pipe communication support in protocol layer.</td>
+ <td>Both</td>
+ </tr>
+ </table>
+ </p>
+ </subsection>
+
+ <subsection name="Source code">
+ <p>
+ Source code:
+<source>
+$ svn co https://svn.apache.org/repos/asf/directory/network/trunk mina
+$ cd mina
+$ maven jar # Build JAR
+$ maven site # Generate documentation
+$ maven eclipse # Generate Eclipse project file if you want
+</source>
+ </p>
+ </subsection>
+ </section>
+ </body>
+</document>
Added: directory/releases/mina-0.9.0/src/site/xdoc/history.xml
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/history.xml?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/history.xml (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/history.xml Thu Dec 29 07:35:29 2005
@@ -0,0 +1,51 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <properties>
+ <author email="trustin@apache.org">Trustin Lee</author>
+ <title>History</title>
+ </properties>
+
+ <body>
+ <section name="History">
+ <p>
+ by Trustin Lee (trustin at apache dot org)
+ </p>
+ <p>
+ In June 2004, I released a network application framework,
+ '<a href="http://gleamynode.net/dev/tl-netty2/docs/" target="_blank">Netty2</a>'.
+ It was the first network application framework that provides event-based
+ architecture in Java community. It attracted network application
+ programmers because of its simplicity and ease of use. As Netty2
+ community grows up, its problems also arose. Netty2 didnât work fine
+ with text protocols and had severe architectural flaw that prevents users
+ from using it for applications with many concurrent clients.
+ </p>
+ <p>
+ Quite large amount of information was collected about what users like
+ about Netty2 and what improvements they want from it for 6 months. It
+ was clear they like its ease of use and unit-testability. They wanted
+ support for UDP/IP and text protocols. I had to invent cleaner, more
+ flexible, and more extensible API so that it is easy to learn yet
+ full-featured.
+ </p>
+ <p>
+ In September 2004, I joined the Apache Directory team to improve
+ another network application framework, Apache SEDA. It was based
+ on generic event model with predefined stages. I liked its main idea,
+ but its core was too abstract to call it a network application
+ framework. I saw many highly abstract but dead frameworks claiming
+ they can do whatever users want, and it was one of them. So I urged
+ to create a new network application framework âMINAâ which is based on
+ my idea on Netty2-NG.
+ </p>
+ <p>
+ Although there was some competition between next generations of
+ Apache SEDA, MINA has finally won and it is now the only network
+ application framework our team uses. We have implemented several
+ complex protocols such as LDAP, Kerberos, DNS and NTP, and realized
+ that implementing protocols can be a lot of fun instead of tedious
+ coding.
+ </p>
+ </section>
+ </body>
+</document>
Added: directory/releases/mina-0.9.0/src/site/xdoc/images/apache-directory-logo.png
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/images/apache-directory-logo.png?rev=359824&view=auto
==============================================================================
Binary file - no diff available.
Propchange: directory/releases/mina-0.9.0/src/site/xdoc/images/apache-directory-logo.png
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/releases/mina-0.9.0/src/site/xdoc/index.xml
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/index.xml?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/index.xml (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/index.xml Thu Dec 29 07:35:29 2005
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <properties>
+ <author email="trustin@apache.org">Trustin Lee</author>
+ <title>Overview</title>
+ </properties>
+
+ <body>
+ <section name="Overview">
+ <p>
+ MINA (Multipurpose Infrastructure for Network Applications) is a
+ network application framework which helps users develop high
+ performance and high scalability network applications easily.
+
+ <ul>
+ <li><a href="features.html">Feature List</a></li>
+ <li><a href="testimonials.html">Testimonials</a></li>
+ <li><a href="getting_started.html">Getting Started</a></li>
+ <li><a href="http://svn.apache.org/repository/directory-network/">Downloads</a></li>
+ <li><a href="apidocs/index.html">JavaDocs</a></li>
+ <li><a href="faq.html">F.A.Q</a></li>
+ </ul>
+ </p>
+ </section>
+ </body>
+</document>
Added: directory/releases/mina-0.9.0/src/site/xdoc/mina.pdf
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/mina.pdf?rev=359824&view=auto
==============================================================================
Binary file - no diff available.
Propchange: directory/releases/mina-0.9.0/src/site/xdoc/mina.pdf
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/releases/mina-0.9.0/src/site/xdoc/mina.ppt
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/mina.ppt?rev=359824&view=auto
==============================================================================
Binary file - no diff available.
Propchange: directory/releases/mina-0.9.0/src/site/xdoc/mina.ppt
------------------------------------------------------------------------------
svn:executable = *
Propchange: directory/releases/mina-0.9.0/src/site/xdoc/mina.ppt
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: directory/releases/mina-0.9.0/src/site/xdoc/navigation.xml
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/navigation.xml?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/navigation.xml (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/navigation.xml Thu Dec 29 07:35:29 2005
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+
+ <title>MINA</title>
+
+ <body>
+ <links>
+ <item name="Directory" href="http://directory.apache.org/" />
+ <item name="ApacheDS" href="http://directory.apache.org/subprojects/apacheds/"/>
+ <item name="LDAP" href="http://directory.apache.org/subprojects/ldap.html"/>
+ <item name="Naming" href="http://directory.apache.org/subprojects/naming/"/>
+ <item name="ASN.1" href="http://directory.apache.org/subprojects/asn1/"/>
+ <item name="Kerberos" href="http://directory.apache.org/subprojects/"/>
+ <item name="AuthX" href="http://directory.apache.org/subprojects/authx/"/>
+ <item name="MINA" href="http://directory.apache.org/subprojects/network/"/>
+ <item name="Protocols" href="http://directory.apache.org/subprojects/providers.html"/>
+ </links>
+
+ <menu name="Stable Versions">
+ <item name="0.8" href="http://directory.apache.org/subprojects/network/branches/0.8/"/>
+ </menu>
+
+ <menu name="MINA">
+ <item name="Overview" href="/index.html"/>
+ <item name="Features" href="/features.html"/>
+ <item name="Testimonials" href="/testimonials.html"/>
+ <item name="Getting Started" href="/getting_started.html"/>
+ <item name="Downloads" href="http://svn.apache.org/repository/directory-network/"/>
+ <item name="F.A.Q" href="/faq.html"/>
+ <item name="Roadmap" href="/roadmap.html"/>
+ <item name="Changes" href="http://issues.apache.org/jira/browse/DIRMINA?report=com.atlassian.jira.plugin.system.project:changelog-panel&subset=-1"/>
+ <item name="History" href="/history.html"/>
+ </menu>
+
+ <menu name="MINA Community">
+ <item name="Mailing List" href="mail-lists.html"/>
+ <item name="Issue Tracker" href="http://issues.apache.org/jira/browse/DIRMINA"/>
+ <item name="Wiki Pages" href="http://wiki.apache.org/directory/MinaHome"/>
+ </menu>
+
+ <menu name="MINA Examples">
+ <item name="JavaDocs" href="/apidocs-examples/index.html"/>
+ <item name="Source code" href="/xref-examples/index.html"/>
+ </menu>
+
+ <menu name="MINA References">
+ <item name="JavaDocs" href="/apidocs/index.html"/>
+ <item name="Source code" href="/xref/index.html"/>
+ <item name="Source code (SVN)" href="http://svn.apache.org/viewcvs.cgi/directory/network/trunk/?root=Apache-SVN"/>
+ <item name="Wiki" href="http://wiki.apache.org/directory/MinaHome"/>
+ </menu>
+ </body>
+</project>
Added: directory/releases/mina-0.9.0/src/site/xdoc/roadmap.xml
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/roadmap.xml?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/roadmap.xml (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/roadmap.xml Thu Dec 29 07:35:29 2005
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <properties>
+ <author email="trustin@apache.org">Trustin Lee</author>
+ <title>Roadmap</title>
+ </properties>
+ <body>
+ <section name="Roadmap">
+ <p>
+ We have chosen versioning scheme similar to that of Linux.
+ Odd version numbers mean a feature release; this means that API and
+ festure set can change radically at any time. Even version numbers
+ mean a stable release; there will be only bug fixes and no feature
+ updates in a stable release.
+ </p>
+ <p>
+ Please take a look at
+ <a href="http://issues.apache.org/jira/browse/DIRMINA?report=com.atlassian.jira.plugin.system.project:roadmap-panel&subset=-1">our issue tracker page</a>
+ to see the full roadmap of MINA.
+ </p>
+ </section>
+ </body>
+</document>
Added: directory/releases/mina-0.9.0/src/site/xdoc/testimonials.xml
URL: http://svn.apache.org/viewcvs/directory/releases/mina-0.9.0/src/site/xdoc/testimonials.xml?rev=359824&view=auto
==============================================================================
--- directory/releases/mina-0.9.0/src/site/xdoc/testimonials.xml (added)
+++ directory/releases/mina-0.9.0/src/site/xdoc/testimonials.xml Thu Dec 29 07:35:29 2005
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <properties>
+ <author email="trustin@apache.org">Trustin Lee</author>
+ <title>Testimonials</title>
+ </properties>
+
+ <body>
+ <section name="Testimonials">
+ <p>
+ Alex Burmester says:
+ <blockquote>
+ <p>
+ We are using MINA at a telco to route low level protocol packets
+ to a third party. We already had a SOAP and also a CORBA interface
+ but for speed purposes we are trying out a lower level protocol and
+ we needed a gateway of sorts to route messages between our cluster of
+ servers and the third party's servers.
+ </p>
+ <p>
+ I had been planning on using NIO and some aspects of
+ <a href="http://www.eecs.harvard.edu/~mdw/proj/seda/">SEDA</a> but
+ finding MINA was a real treat as it saved a lot of time, is well
+ written and gets more testing than our in house QA would be able to
+ cover.
+ </p>
+ <p>
+ The speed and stability of our app on top of MINA has been excellent.
+ </p>
+ </blockquote>
+ </p>
+
+ <p>Jean-François Daune says:
+ <blockquote>
+ <p>
+ We use MINA to communicate with
+ <a href="http://www.banksys.com/">Banksys</a> 'point of sale'
+ terminals (Visa, Mastercard...) for technical management operations.
+ (software upgrade, remote monitoring, log transfer...)
+ </p>
+ <p>
+ So far, MINA has worked really well for us. We used
+ <a href="http://gleamynode.net/dev/tl-netty2/docs/">Netty2</a>,
+ and clearly saw the improvements in MINA. I like the MINA API
+ more. MINA really makes it easier to write applications using NIO.
+ </p>
+ </blockquote>
+ </p>
+
+ <p>Luke Hubbard says:
+ <blockquote>
+ We are using it for the network layer of
+ <a href="http://www.osflash.org/red5">Red5</a>, an open source flash
+ server. At the moment we have RTMP and AMF working and hope to add
+ more protocols in the future. MINA's design and ease of use has
+ helped us get a prototype up and running quickly.
+ </blockquote>
+ </p>
+
+ <p>Thomas Muller says:
+ <blockquote>
+ What a fantastic API! Definately the best I've seen since
+ <a href="http://gee.cs.oswego.edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.html">Doug Lea's Concurrency API</a>.
+ </blockquote>
+ </p>
+
+ <p>Paolo Perrucci says:
+ <blockquote>
+ We are using MINA to build the network layer of our multiplayer
+ game server at <a href="http://ludonet.leonardo.it/">Leonardo.it</a>.
+ Using MINA, we implemented different protocols in a few days;
+ Game and HTTP tunneling. In the past, we used NIO, and the advantage
+ of using MINA is evident; the MINA API is elegant and very simple to
+ use. Last, but not least, MINA have a really responsive support.
+ </blockquote>
+ </p>
+
+ <p>Julien Vermillard says:
+ <blockquote>
+ I'm using MINA for supervisory control and data acquisition (SCADA)
+ embedded application. It's used for several tasks; connecting
+ supervision clients to the server, interaction of the server with
+ different hardware (other SCADA systems, media stream matrix,
+ programmable automaton, remote data aquisition systems), custom
+ replication protocols for fail-over service. I found MINA when I
+ started implementation using NIO and it was a great time saver.
+ You can switch from RS232 to TCP/IP and add SSL connectivity easly.
+ The stability and the support is really great. The code and the
+ design are simple and efficient, so you can easly implement high
+ quality protocol logic without bothering with all the NIO quirks.
+ I didn't really tested the maximum performance you can get out of
+ MINA, but all I can say is that MINA is running 24/7 with an amazing
+ stability and I'm not afraid of using it in harsh evironement.
+ </blockquote>
+ </p>
+
+ </section>
+ </body>
+</document>