notify-dpml AT lists.ibiblio.org
Subject: DPML Notify
List archive
r1883 - in trunk/central/site/src/docs/util: depot/tutorials transit transit/tutorials
- From: mcconnell at BerliOS <mcconnell AT mail.berlios.de>
- To: notify-dpml AT lists.ibiblio.org
- Subject: r1883 - in trunk/central/site/src/docs/util: depot/tutorials transit transit/tutorials
- Date: Wed, 7 Mar 2007 04:24:23 +0100
Author: mcconnell
Date: 2007-03-07 04:24:22 +0100 (Wed, 07 Mar 2007)
New Revision: 1883
Modified:
trunk/central/site/src/docs/util/depot/tutorials/filters.xml
trunk/central/site/src/docs/util/depot/tutorials/index.xml
trunk/central/site/src/docs/util/depot/tutorials/navigation.xml
trunk/central/site/src/docs/util/depot/tutorials/plugins.xml
trunk/central/site/src/docs/util/transit/index.xml
trunk/central/site/src/docs/util/transit/navigation.xml
trunk/central/site/src/docs/util/transit/tutorials/navigation.xml
Log:
Modified: trunk/central/site/src/docs/util/depot/tutorials/filters.xml
===================================================================
--- trunk/central/site/src/docs/util/depot/tutorials/filters.xml
2007-03-07 02:50:39 UTC (rev 1882)
+++ trunk/central/site/src/docs/util/depot/tutorials/filters.xml
2007-03-07 03:24:22 UTC (rev 1883)
@@ -129,7 +129,7 @@
</p>
<p>
- The <a href="types.html">next totorial</a> introduces type
production
+ The <a href="types.html">next tutorial</a> introduces type
production
declarations in a project definition.
</p>
Modified: trunk/central/site/src/docs/util/depot/tutorials/index.xml
===================================================================
--- trunk/central/site/src/docs/util/depot/tutorials/index.xml 2007-03-07
02:50:39 UTC (rev 1882)
+++ trunk/central/site/src/docs/util/depot/tutorials/index.xml 2007-03-07
03:24:22 UTC (rev 1883)
@@ -8,113 +8,15 @@
<body>
- <section name="Setting up an Index">
+ <section name="Tutorial Overview">
- <p>
- The Depot build system centralizes information about projects in
- an index file. This tutorial demonstrates the declaration of a single
- project and serves as a starting point for the introduction of
- properties and filters.
- </p>
-
- <subsection name="index.xml">
-
<p>
- The following index file declares a single project named 'demo'.
- The basedir of the project is the directory containing the project
- build content and is the path that the Depot tool uses to locate
- the project's build.xml file. Basedir values are resolved relative
to
- the basedir of the enclosing entity - in this case the
<tt><index></tt>
- is the enclosing entity so the basedir is resolved relative to the
- directory containing the index file.
- </p>
-
-<pre><![CDATA[
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<index xmlns="dpml:library">
-
- <project name="demo" basedir="."/>
-
-</index>
-]]></pre>
-
- </subsection>
-
- <subsection name="build.xml">
-
- <p>
- The following Ant build file simply logs a message to confirm
- that it is building. It contains a couple of empty targets
- (clean and install) which are added simply for consistency (but
- will be used in subsequent tutorials).
- </p>
-
-<pre><![CDATA[
-<project name="demo" default="install">
-
- <target name="clean">
- <!-- nothing to do -->
- </target>
-
- <target name="build">
- <echo message="Executing the simple project build."/>
- </target>
-
- <target name="install" depends="build"/>
-
-</project>
-]]></pre>
-
- </subsection>
-
- <subsection name="Building the project ..">
-
- <p>
- Assuming that you have the build file and the index file in a
- directory and Depot is installed - you should be able to start
- the build proces using Depot's <tt>build</tt> command as shown
- below:
- </p>
-
- <pre>
-$ cd tutorials\tooling\simple
-$ build
-
--------------------------------------------------------------------------
-demo#SNAPSHOT
--------------------------------------------------------------------------
-
-build:
- [echo] Executing the simple project build.
-
-BUILD SUCCESSFUL
-Total time: 0 seconds
-
-$
- </pre>
-
- </subsection>
-
- <subsection name="Summary">
-
- <p>
- When we invoked the build command as shown above - the build tool
- located the index.xml file (by searching from the current directory
- up the directory tree until the file was found) and located the
- demo project by matching the current directory with directory
resolved
- from the project <tt>basedir</tt> attribute. Once the project
defintion
- is located Depot constructs an internal defintion containing
information
- about the project name, group, version, properties, filters,
- dependency information, and information about resources that will be
- produced by the build process.
- </p>
-
- <p>
The following totorials cover a broad spectrum of Depot features and
capabilities.
</p>
<ul>
+ <li><a href="101.html">Getting started.</a></li>
<li><a href="properties.html">Adding general properties.</a></li>
<li><a href="symbolic.html">Using symbolic references.</a></li>
<li><a href="filters.html">Declaring global filters.</a></li>
@@ -128,8 +30,6 @@
<li><a href="export.html">Exporting module defintions.</a></li>
<li><a href="plugins.html">Working with runtime metadata via
plugins.</a></li>
</ul>
-
- </subsection>
</section>
Modified: trunk/central/site/src/docs/util/depot/tutorials/navigation.xml
===================================================================
--- trunk/central/site/src/docs/util/depot/tutorials/navigation.xml
2007-03-07 02:50:39 UTC (rev 1882)
+++ trunk/central/site/src/docs/util/depot/tutorials/navigation.xml
2007-03-07 03:24:22 UTC (rev 1883)
@@ -25,7 +25,7 @@
<body>
<menu>
- <item name="Getting Started" href="index.html"/>
+ <item name="Getting Started" href="101.html"/>
<item name="General Properties" href="properties.html"/>
<item name="Symbolic References" href="symbolic.html"/>
<item name="Global Filters" href="filters.html"/>
Modified: trunk/central/site/src/docs/util/depot/tutorials/plugins.xml
===================================================================
--- trunk/central/site/src/docs/util/depot/tutorials/plugins.xml
2007-03-07 02:50:39 UTC (rev 1882)
+++ trunk/central/site/src/docs/util/depot/tutorials/plugins.xml
2007-03-07 03:24:22 UTC (rev 1883)
@@ -63,10 +63,7 @@
<project name="clock-impl" basedir="impl">
<types>
<type id="jar"/>
- <font color="darkred"><part:plugin
class="org.acme.impl.SimpleClock">
- <part:param value="h:mm"/>
- <part:param class="java.util.Locale" method="getDefault"/>
- </part:plugin></font>
+ <font color="darkred"><type id="part"
source="etc/part.xml"/></font>
</types>
<dependencies>
<runtime>
@@ -89,7 +86,8 @@
<subsection name="The Part Artifact">
<p>
- During the build the following part defintion is created.
+ During the build the following part defintion is created based on
the input
+ part definition source.
</p>
<p><i>Generated part:</i>
<tt>artifact:part:org/acme/plugin/clock-impl#SNAPSHOT</tt></p>
@@ -159,7 +157,7 @@
However, the plugin strategy demonstrated above is for all intensive
purposes
a relatively primitive model in that it does not address real-world
semantic issues
such as lifecycle or lifestyle management, composition,
thread-safety,
- remote management, or collection policies. The <a
href="../../metro/tutorials/index.html">
+ remote management, or collection policies. The <a
href="../../../metro/tutorials/index.html">
Metro Tutorials</a> takes you into another semantic dimension with
the
introduction of an alternative deployment strategy based on the
Metro Component Model
whereas the final tutorial in the Depot collection wraps-up with
Modified: trunk/central/site/src/docs/util/transit/index.xml
===================================================================
--- trunk/central/site/src/docs/util/transit/index.xml 2007-03-07 02:50:39
UTC (rev 1882)
+++ trunk/central/site/src/docs/util/transit/index.xml 2007-03-07 03:24:22
UTC (rev 1883)
@@ -31,20 +31,102 @@
<body>
<section name="Transit Resource Management">
- <pre>@TRANSIT-HANDLER-URI@</pre>
-
<p>
Transit provides a flexible framework for dynamically
retrieving system and application resources, constructing
classloaders and management of plugins via
an abstract resource identifier referred to as an artifact.
As a resource management system Transit provides the foundation
- for building <a href="overview.html">repository-enabled</a>
- applications.
+ for building repository-enabled applications.
</p>
<img src="/images/transit/repositories.png"/>
+ <p>
+ One of the more difficult tasks when building Java applications
+ is classloader management. Often, when combining various projects
+ together into an enterprise application, the application is not
+ able to load the right classes at the right time, causing the
+ application to fail in mysterious and sometimes subtle
+ ways. Although a fundamental issue, classloading has remained
+ a rather obscure topic. When combined with component-based
+ development the classloader management concern can become a major
+ configuration management concern.
+ Transit provides a solution to this problem.
+ </p>
+
+ <p>
+ At the core of Transit is a URL protocol handler and a framework
+ for custom content handlers. Content handlers provided by DPML
+ include a deployment system that encapsulates a classloader defintion
+ and deployment strategy, together with a handler supporting the
+ establishment of a Java runtime process.
+
+ Based on these, Transit is able to manage classloaders, not only
+ effectively and nearly invisible to the casual user, but in a
location
+ independent way. That means, applications don't need to be concerned
over
+ where the jars and other resources are located, whether on the local
file
+ system, on LAN servers or somewhere on the Internet.
+ This allows an application to provide extendability, hot-redeployment
+ and more advanced services.
+ </p>
+
+ <subsection name="Transit Artifacts">
+
+ <p>
+ Each artifact has a unique identifier conforming to the Transit
+ <a href="technical/artifact.html">artifact</a> protocol
specification.
+ Using a standard extension to the java.net.URL class in the Java
API,
+ Transit accesses an artifact through an artifact URI.
+ The artifact URI logically identifies a resource and the Transit
+ system provides the means for resource retrieval.
+ </p>
+
+ <p>
+ The artifact URI describes the:
+ <ul>
+ <li>type of resource (JAR, meta, template...)</li>
+ <li>group to which the artifact belongs</li>
+ <li>name of the artifact</li>
+ <li>version</li>
+ </ul>
+ </p>
+
+ <p>
+ The purpose of the group is to avoid naming conflicts in the
artifact
+ name space. The top level group should be a distinguishable and
well
+ accepted name of the organization, and any sub groups to be decided
+ by the organization itself to further avoid name clashes.
+ It is recommended that the bottom level group is the release
level, i.e.
+ all resources within the 'release' shares the same version and are
+ meant to be working in a group within that version, and not mixed
+ between versions.
+ </p>
+
+ <p>
+ Transit promotes strong version management. The underlying concern
is
+ that many parts of the system are dependent on particular versions
of
+ another part or resource, and can not be freely mixed. To ensure
+ that all dependencies are resolved against the proper versions, it
is
+ paramount that a version management system is in place, and
policies
+ are established. From Transit's point of view, the version is an
+ opaque identifier without any in-built semantic meaning.
+ </p>
+
+ <p>
+ These identifiers disassociate the definition of an application
+ from the source of the resources needed to build and deploy the
+ application. Meaning, it is only in the interest of the user of
+ the resources, be it built tools or running applications, that the
+ <strong>correct</strong> resources are provided, and not from which
+ server these were downloaded. The task of resolving the location
+ is transferred from each application to Transit itself, which is
+ configured to know about which servers are available in its running
+ environment.
+ </p>
+
+ </subsection>
+
</section>
</body>
</document>
Modified: trunk/central/site/src/docs/util/transit/navigation.xml
===================================================================
--- trunk/central/site/src/docs/util/transit/navigation.xml 2007-03-07
02:50:39 UTC (rev 1882)
+++ trunk/central/site/src/docs/util/transit/navigation.xml 2007-03-07
03:24:22 UTC (rev 1883)
@@ -25,12 +25,12 @@
<body>
<menu>
- <item name="Overview" href="concepts/index.html"/>
- <item name="Tutorials" href="tutorials/index.html"/>
+ <!--<item name="Overview" href="concepts/index.html"/>-->
<item name="System Properties" href="properties.html"/>
<item name="Cache Configuration" href="config/index.html"/>
<item name="Part Directive" href="parts/index.html"/>
<item name="Protocols" href="technical/index.html"/>
+ <item name="Tutorials" href="tutorials/index.html"/>
</menu>
</body>
Modified: trunk/central/site/src/docs/util/transit/tutorials/navigation.xml
===================================================================
--- trunk/central/site/src/docs/util/transit/tutorials/navigation.xml
2007-03-07 02:50:39 UTC (rev 1882)
+++ trunk/central/site/src/docs/util/transit/tutorials/navigation.xml
2007-03-07 03:24:22 UTC (rev 1883)
@@ -25,7 +25,7 @@
<body>
<menu>
- <item name="Introduction" href="index.html"/>
+ <!--<item name="Introduction" href="index.html"/>-->
<item name="Resource Management" href="overview.html"/>
<item name="Artifact Protocol" href="artifacts.html"/>
<item name="Local Protocol" href="local.html"/>
- r1883 - in trunk/central/site/src/docs/util: depot/tutorials transit transit/tutorials, mcconnell at BerliOS, 03/06/2007
Archive powered by MHonArc 2.6.24.