From: cvs@openprivacy.orgCVS update: talon/htdocs
Date: Friday March 9, 19101 @ 16:10
Author: burton
CVSWEB Options: -------------------
Main CVSWeb: http://openprivacy.org/cgi-bin/cvsweb/cvsweb.cgi
View this module: http://openprivacy.org/cgi-bin/cvsweb/cvsweb.cgi/talon/htdocs
-----------------------------------
Update of /usr/local/cvs/public/talon/htdocs
In directory giga:/tmp/cvs-serv17970/htdocs
Modified Files:
index.shtml
Log Message:
reworked component initialization. ...
*****************************************************************
File: talon/htdocs/index.shtml
CVSWEB Options: -------------------
CVSWeb: Annotate this file: http://openprivacy.org/cgi-bin/cvsweb/cvsweb.cgi/talon/htdocs/index.shtml?annotate=1.3
CVSWeb: View this file: http://openprivacy.org/cgi-bin/cvsweb/cvsweb.cgi/talon/htdocs/index.shtml?rev=1.3&content-type=text/x-cvsweb-markup
CVSWeb: Diff to previous version: http://openprivacy.org/cgi-bin/cvsweb/cvsweb.cgi/talon/htdocs/index.shtml.diff?r1=1.3&r2=1.2
-----------------------------------
Index: talon/htdocs/index.shtml
diff -u talon/htdocs/index.shtml:1.2 talon/htdocs/index.shtml:1.3
--- talon/htdocs/index.shtml:1.2 Fri Mar 2 19:16:56 2001
+++ talon/htdocs/index.shtml Fri Mar 9 16:10:42 2001
@@ -51,6 +51,8 @@
<h3>Developer Notes</h3>
+<h4>Component creation</h4>
+
<p>
Talon uses a ComponentFactory mechanism to create Components. Components are
nothing more than Objects which implement certain interfaces. Talon developers
@@ -58,6 +60,57 @@
systems to have their components changed at runtime based on application
requirements.
+<h4>Polymorphism and interfaces</h4>
+
+<p>At its heart, a Talon component is only a Java interface. This means that a
+given Component could actually implement multiple interfaces.
+
+<p>
+Example:
+
+<pre>
+
+ Logger interface ---------- |
+ Dump interface ------------ |
+ |
+ | --- SimpleLogger <i>implements</i> Logger, Dump
+</pre>
+
+<p>
+In the above example, the SimpleLogger Component implements the Logger and Dump
+interfaces. This means that methods from the Dump interface and Logger
+interface can be used within the SimpleLogger.
+
+<p>
+This is an important part of Talon. This allows us to focus on small and simple
+interface but aggregate them into larger components.
+
+<h4>Required Properties</h4>
+
+<p>
+When you deploy a Talon component it is sometimes necessary to associate a set
+of properties, a URL to obtain additional information, JDBC connection
+information, etc. Some of these may be required for the component to even
+function correctly. The Talon PropertyManager can help you with this.
+
+<p>
+Example:
+
+<pre>
+
+ public static final String[] REQUIRED_PROPERTIES = { "nym_name" };
+
+ public void init() throws TalonException {
+
+ //require specific properties. This should throw an Exception if the
+ //properties aren't available.
+ this.getComponentHandle().getInitProperties().require( REQUIRED_PROPERTIES );
+ }
+
+</pre>
+
+<h4>Coding Conventions</h4>
+
<p>
When designing a Talon application there are some general conventions you should
follow. These are not required but should allow others familiar with Talon
@@ -66,7 +119,7 @@
You should obtain your component via its "talon_name" or its interface name.
-<h3>Examples</h3>
+<h4>Examples</h4>
<p>
The following code will attempt to get Components based on a handle, their
This archive was generated by hypermail 2b30 : Fri Mar 09 2001 - 16:10:47 PST