notify-dpml AT lists.ibiblio.org
Subject: DPML Notify
List archive
r1908 - in trunk/central/site/src/docs/metro: component tutorials
- From: mcconnell at BerliOS <mcconnell AT mail.berlios.de>
- To: notify-dpml AT lists.ibiblio.org
- Subject: r1908 - in trunk/central/site/src/docs/metro: component tutorials
- Date: Tue, 13 Mar 2007 08:24:37 +0100
Author: mcconnell
Date: 2007-03-13 08:24:37 +0100 (Tue, 13 Mar 2007)
New Revision: 1908
Added:
trunk/central/site/src/docs/metro/tutorials/intro.xml
Modified:
trunk/central/site/src/docs/metro/component/index.xml
trunk/central/site/src/docs/metro/tutorials/index.xml
trunk/central/site/src/docs/metro/tutorials/navigation.xml
Log:
Modified: trunk/central/site/src/docs/metro/component/index.xml
===================================================================
--- trunk/central/site/src/docs/metro/component/index.xml 2007-03-13
06:35:55 UTC (rev 1907)
+++ trunk/central/site/src/docs/metro/component/index.xml 2007-03-13
07:24:37 UTC (rev 1908)
@@ -4,7 +4,7 @@
<properties>
<author email="mcconnell AT dpml.net">Stephen McConnell</author>
- <title>DPML Metro: Component Strategy</title>
+ <title>DPML Metro Component Strategy</title>
</properties>
<body>
Modified: trunk/central/site/src/docs/metro/tutorials/index.xml
===================================================================
--- trunk/central/site/src/docs/metro/tutorials/index.xml 2007-03-13
06:35:55 UTC (rev 1907)
+++ trunk/central/site/src/docs/metro/tutorials/index.xml 2007-03-13
07:24:37 UTC (rev 1908)
@@ -4,137 +4,13 @@
<properties>
<author email="mcconnell AT osm.net">Stephen McConnell</author>
- <title>Component Development</title>
+ <title>Metro Component Development Tutorials</title>
</properties>
<body>
<section name="Overview">
- <p>
- In the earlier tutorials dealing with Transit Plugins we covered the
general
- subject of a deployment unit descriptor that associated an object
instantiation
- <tt>strategy</tt> with a <tt>classloader</tt> chain definition. The
Metro platform
- provides an alternative deployment strategy and runtime handler that
delivers
- a complete context driven IOC object instantiation model.
- </p>
-
- <p>
- In addition to instantiation there are several aspects of a class that
- effect its deployment. These aspects include thread-safety, a
depoyment and
- decommissioning lifecycle, garbage collection policy, etc. Each of
these concerns
- are expresssed as well defined semantic features within the Metro
component model.
- </p>
-
- <subsection name="Totorial Objective">
-
- <p>
- The objective of this tutorial is the demonstration of how we can
- introduce a new instantiation strategy into a part deployment
descriptor.
- Subsequent tutorials will use the resource established here as the
baseline
- for the introduction of the core Metro component model concepts.
- </p>
-
- <p>
- Supporting classes:
- </p>
-
- <table>
- <tr>
- <td><a href="hello/Demo.java.html">Demo.java</a></td>
- <td>A minimal component implementation.</td>
- </tr>
- <tr>
- <td><a
href="hello/DemoTestCase.java.html">DemoTestCase.java</a></td>
- <td>Testcase that validates component deployment.</td>
- </tr>
- </table>
-
- </subsection>
-
- <subsection name="Component Creation">
-
- <p>
- The creation of a new component defintion is basically the same as
the procedure
- used to create a plugin. In the following Depot project definition
we are declaring
- a new project with publication of a jar and a part artifact. The
significant difference
- from a regular plugin is the usage of a custom part strategy.
- </p>
-
-<source>
-<index ..... >
-
- <project name="acme-demo-hello" basedir="hello">
- <types>
- <type id="jar"/>
- <font color="darkred"><component xmlns="dpml:metro"
- type="org.acme.Demo"
- name="demo"/></font>
- </types>
- <dependencies>
- <test>
- <include ref="ant/ant-junit"/>
- <include ref="dpml/transit/dpml-transit-main"/>
- </test>
- </dependencies>
- </project>
-
- ...
-
-</index>
-</source>
-
- <p>
- The custom part definition introduced under the <tt>dpml:metro</tt>
- namespace is declaring the production of a new <tt>part</tt>
datastructure under which
- the class <tt>org.acme.Demo</tt> is to handled by the Metro runtime
platform. The above
- definition also includes the declaration of test phase dependencies
that we will need in
- order to launch the component.
- </p>
-
- <p>
- The generated part datastructure is show below (the custom Metro
deployment
- strategy is hilighted in red).
- </p>
-
-<source>
-<part xmlns="dpml:part"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-
- <info/>
-
- <font color="darkred"><component xmlns="dpml:metro"
- type="org.acme.Demo"
- name="demo"
- collection="system"
- activation="system">
- </component></font>
-
- <classpath>
- <private>
-
<uri>artifact:jar:dpmlx/tutorials/components/acme-demo-hello#SNAPSHOT</uri>
- </private>
- </classpath>
-
-</part>
-</source>
-
- </subsection>
-
- <subsection name="Summary">
-
- <p>
- In this example the Demo implementation class contains nothing
significant -
- however, the important point of this tutorial is the association of
- a different runtime handler for the class within our part definition.
- Our next tutorial extends this project with the introduction of
- <a href="context.html">context management</a> and in particular, the
way in
- which a component class declares context assumptions, and the
mechanisms
- used by the Metro runtime to fullfill those requirements.
- </p>
-
- </subsection>
-
</section>
</body>
Added: trunk/central/site/src/docs/metro/tutorials/intro.xml
===================================================================
--- trunk/central/site/src/docs/metro/tutorials/intro.xml 2007-03-13
06:35:55 UTC (rev 1907)
+++ trunk/central/site/src/docs/metro/tutorials/intro.xml 2007-03-13
07:24:37 UTC (rev 1908)
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+
+<document>
+
+ <properties>
+ <author email="mcconnell AT osm.net">Stephen McConnell</author>
+ <title>Component Development</title>
+ </properties>
+
+ <body>
+
+ <section name="Overview">
+
+ <p>
+ In the earlier tutorials dealing with Transit Plugins we covered the
general
+ subject of a deployment unit descriptor that associated an object
instantiation
+ <tt>strategy</tt> with a <tt>classloader</tt> chain definition. The
Metro platform
+ provides an alternative deployment strategy and runtime handler that
delivers
+ a complete context driven IOC object instantiation model.
+ </p>
+
+ <p>
+ In addition to instantiation there are several aspects of a class that
+ effect its deployment. These aspects include thread-safety, a
depoyment and
+ decommissioning lifecycle, garbage collection policy, etc. Each of
these concerns
+ are expresssed as well defined semantic features within the Metro
component model.
+ </p>
+
+ <subsection name="Totorial Objective">
+
+ <p>
+ The objective of this tutorial is the demonstration of how we can
+ introduce a new instantiation strategy into a part deployment
descriptor.
+ Subsequent tutorials will use the resource established here as the
baseline
+ for the introduction of the core Metro component model concepts.
+ </p>
+
+ <p>
+ Supporting classes:
+ </p>
+
+ <table>
+ <tr>
+ <td><a href="hello/Demo.java.html">Demo.java</a></td>
+ <td>A minimal component implementation.</td>
+ </tr>
+ <tr>
+ <td><a
href="hello/DemoTestCase.java.html">DemoTestCase.java</a></td>
+ <td>Testcase that validates component deployment.</td>
+ </tr>
+ </table>
+
+ </subsection>
+
+ <subsection name="Component Creation">
+
+ <p>
+ The creation of a new component defintion is basically the same as
the procedure
+ used to create a plugin. In the following Depot project definition
we are declaring
+ a new project with publication of a jar and a part artifact. The
significant difference
+ from a regular plugin is the usage of a custom part strategy.
+ </p>
+
+<source>
+<index ..... >
+
+ <project name="acme-demo-hello" basedir="hello">
+ <types>
+ <type id="jar"/>
+ <font color="darkred"><component xmlns="dpml:metro"
+ type="org.acme.Demo"
+ name="demo"/></font>
+ </types>
+ <dependencies>
+ <test>
+ <include ref="ant/ant-junit"/>
+ <include ref="dpml/transit/dpml-transit-main"/>
+ </test>
+ </dependencies>
+ </project>
+
+ ...
+
+</index>
+</source>
+
+ <p>
+ The custom part definition introduced under the <tt>dpml:metro</tt>
+ namespace is declaring the production of a new <tt>part</tt>
datastructure under which
+ the class <tt>org.acme.Demo</tt> is to handled by the Metro runtime
platform. The above
+ definition also includes the declaration of test phase dependencies
that we will need in
+ order to launch the component.
+ </p>
+
+ <p>
+ The generated part datastructure is show below (the custom Metro
deployment
+ strategy is hilighted in red).
+ </p>
+
+<source>
+<part xmlns="dpml:part"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
+ <info/>
+
+ <font color="darkred"><component xmlns="dpml:metro"
+ type="org.acme.Demo"
+ name="demo"
+ collection="system"
+ activation="system">
+ </component></font>
+
+ <classpath>
+ <private>
+
<uri>artifact:jar:dpmlx/tutorials/components/acme-demo-hello#SNAPSHOT</uri>
+ </private>
+ </classpath>
+
+</part>
+</source>
+
+ </subsection>
+
+ <subsection name="Summary">
+
+ <p>
+ In this example the Demo implementation class contains nothing
significant -
+ however, the important point of this tutorial is the association of
+ a different runtime handler for the class within our part definition.
+ Our next tutorial extends this project with the introduction of
+ <a href="context.html">context management</a> and in particular, the
way in
+ which a component class declares context assumptions, and the
mechanisms
+ used by the Metro runtime to fullfill those requirements.
+ </p>
+
+ </subsection>
+
+ </section>
+
+ </body>
+
+</document>
+
+
+
Modified: trunk/central/site/src/docs/metro/tutorials/navigation.xml
===================================================================
--- trunk/central/site/src/docs/metro/tutorials/navigation.xml 2007-03-13
06:35:55 UTC (rev 1907)
+++ trunk/central/site/src/docs/metro/tutorials/navigation.xml 2007-03-13
07:24:37 UTC (rev 1908)
@@ -25,7 +25,7 @@
<body>
<menu>
- <item name="Introduction" href="index.html"/>
+ <item name="Introduction" href="intro.html"/>
<item name="Context Management" href="context.html"/>
<item name="Context Examples" href="context-examples.html"/>
<item name="The Sum of the Parts" href="composition-by-parts.html"/>
- r1908 - in trunk/central/site/src/docs/metro: component tutorials, mcconnell at BerliOS, 03/13/2007
Archive powered by MHonArc 2.6.24.