summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-06-21 02:23:26 +0000
committerbrunsch <brunsch@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-06-21 02:23:26 +0000
commit5f261e761d14e76fc39fbc9be77857d4b5344edd (patch)
tree3cf732fef63c908eef678d63802507cc56fc7727
parent7f145ab167dceca4a617302ed7faf64ea7c905e6 (diff)
downloadATCD-5f261e761d14e76fc39fbc9be77857d4b5344edd.tar.gz
Documentation updates.
-rw-r--r--TAO/docs/implrepo/index.html151
-rw-r--r--TAO/docs/implrepo/status.html64
-rw-r--r--TAO/docs/implrepo/tao_ir.html230
-rw-r--r--TAO/docs/implrepo/usersguide.html29
4 files changed, 332 insertions, 142 deletions
diff --git a/TAO/docs/implrepo/index.html b/TAO/docs/implrepo/index.html
index 525c24408d8..a369ba0d194 100644
--- a/TAO/docs/implrepo/index.html
+++ b/TAO/docs/implrepo/index.html
@@ -1,9 +1,9 @@
<html>
<head>
-<meta http-equiv="Content-Type"
-content="text/html; charset=iso-8859-1">
-<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
+<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Implementation Repository</title>
<!-- $Id$ -->
</head>
@@ -12,72 +12,105 @@ content="text/html; charset=iso-8859-1">
<hr>
-<h2>Impementation Repository</h2>
-
-<p>The Implementation Repository (often shortened to IR or
-ImplRepo) in TAO is an activation/reactivation service. Its
-purpose is to maintain a registry of servers so that it can
-restart servers upond demand. The IR redirect requests from
-clients to the correct server so that servers can shutdown and
-restart without sacrificing the functionality of persistent IORs.
-Our work has been largely based on an excellent paper by <a
-href="http://www.triodia.com/staff/michi-henning.html">Michi
-Henning</a>, <a
-href="http://www.triodia.com/staff/michi/cacm.pdf">Binding,
-Migration, and Scalability in CORBA</a>, but now I'm working
-towards an implementation that is based off the Implementation
-Repository Chapter of <a
-href="http://cseng.awl.com/bookdetail.qry?ISBN=0-201-37927-9&amp;ptype=0">Advanced
-CORBA Programming in C++</a> (which is based off of his paper).</p>
+<h2>Implementation Repository in TAO</h2>
+<p>The purpose of the Implementation Repository in TAO is for the automatic
+activation of a TAO server when a method is invoked but the server is not
+running. It does this by working with the server to keep track of when it is
+activated and stores information on how to reactivate it.&nbsp; Method
+invocations on the server will actually be sent to the Implementation
+Repository, which will then be able to start the server process if it is not
+already running and forward the invocation to the real server. </p>
+
+<p>In the pages here (and in most of the documentation written for it),
+Implementation Repository will often be shortened to ImplRepo or IR.</p>
<hr>
-<h3>Other IR Documents</h3>
-
-<dl>
- <dt><img
- src="http://www.cs.wustl.edu/~schmidt/gifs/misc/redball.gif"
- alt="o" width="14" height="14"> <a href="status.html">Status
- Page</a> - This page details a checklist of short-term
- and long-term goals for the development of the IR. </dt>
- <dd>&nbsp;</dd>
- <dt><img
- src="http://www.cs.wustl.edu/~schmidt/gifs/misc/redball.gif"
- alt="o" width="14" height="14"> <a href="usersguide.html">Users
- Guide</a> - Overall documentation on how to use the IR in
- your programs. </dt>
- <dd>&nbsp;</dd>
- <dt><img
- src="http://www.cs.wustl.edu/~schmidt/gifs/misc/redball.gif"
- alt="o" width="14" height="14"> <a href="paper.html">The
- Paper</a> - A paper that has a general description of the
- IR. This is also where to look to find information on the
- inner working of the IR. </dt>
- <dd>&nbsp;</dd>
- <dt><img
- src="http://www.cs.wustl.edu/~schmidt/gifs/misc/redball.gif"
- alt="o" width="14" height="14"> <a
- href="http://tao.cs.wustl.edu/~brunsch/implrepo.html">Discussion
- Page</a> - Notes that I've made while working on the IR. </dt>
-</dl>
+<h3>Resources</h3>
+<p>The IR in TAO was first based on a paper on the subject by <a href="http://www.triodia.com/staff/michi-henning.html">Michi
+Henning</a> called <a href="http://www.triodia.com/staff/michi/cacm.pdf">Binding,
+Migration, and Scalability in CORBA</a>.&nbsp; Mr. Henning later went on to
+coauthor the book <a href="http://cseng.awl.com/bookdetail.qry?ISBN=0-201-37927-9&amp;ptype=0">Advanced
+CORBA Programming in C++</a> and included a chapter on the Implementation
+Repository.&nbsp; The description of the IR in this chapter is used as the
+specification for TAO's IR.&nbsp; </p>
+
+<p>&nbsp;<a href="usersguide.html">Users Guide</a> - Overall documentation on
+how to use the IR in your programs.</p>
+
+<p>&nbsp;<a href="paper.html">The Paper</a> - A paper that has a general
+description of the IR. This is also where to look to find information on the
+inner working of the IR.</p>
+
+<p>&nbsp;<a href="http://tao.cs.wustl.edu/~brunsch/implrepo.html">Discussion
+Page</a> - Notes that I've made while working on the IR.</p>
<hr>
-<h3>Who's Responsible?</h3>
+<h3>The Future</h3>
+<p>A large part of the IR has been implemented, but there are several areas that
+are not finished or complete yet.</p>
-<p>The person responsible is Darrell Brunsch &lt;<a
-href="mailto:brunsch@cs.wustl.edu">brunsch@cs.wustl.edu</a>&gt;.
-You can reach me by either email, through the <a
-href="http://www.cs.wustl.edu/~schmidt/ACE-mail.html">ACE mailing
-list</a> &lt;<a href="mailto:ace-useres@cs.wustl.edu">ace-users@cs.wustl.edu</a>&gt;,
-or through the <a href="news:comp.soft-sys.ace">comp.soft-sys.ace</a>
-newsgroup. The newsgroup mirrors the mailing list, but not the
-other way. Also, if you use the mailing list, it is best if you
-join it before sending a question, since responses are usually
-just replied back to the group.</p>
+<table border="1">
+ <tr>
+ <th><b>Feature</b></th>
+ <th><b>Status</b></th>
+ </tr>
+ <tr>
+ <td>Environment Variables</td>
+ <td>In the IDL interface, but not used on the server side or implemented in
+ tao_ir</td>
+ </tr>
+ <tr>
+ <td>Logical Server names</td>
+ <td>In the IDL interface, but not used on the server side or fully
+ implemented in tao_ir</td>
+ </tr>
+ <tr>
+ <td>Server Shutdown</td>
+ <td>Only cooperative shutdown implemented.</td>
+ </tr>
+ <tr>
+ <td>POA/ORB Integration</td>
+ <td>Only some options have been added, ORBImplRepoIOR, etc.</td>
+ </tr>
+ <tr>
+ <td>Multicast location of IRs</td>
+ <td>The client part is in the ORB, but the server doesn't listen for it yet.</td>
+ </tr>
+ <tr>
+ <td>Client-side Optimizations</td>
+ <td>Nothing planned yet</td>
+ </tr>
+ <tr>
+ <td>Server Security</td>
+ <td>Nothing planned yet</td>
+ </tr>
+ <tr>
+ <td>Federations</td>
+ <td>Nothing planned yet</td>
+ </tr>
+ <tr>
+ <td>DLL servers</td>
+ <td>Nothing planned yet</td>
+ </tr>
+</table>
+
+<hr>
+
+<h3>Who wrote it?</h3>
+<p>The guy currently in charge of the IR is&nbsp; Darrell Brunsch &lt;<a href="mailto:brunsch@cs.wustl.edu">brunsch@cs.wustl.edu</a>&gt;.
+You can reach me by either email (which is better), or through the <a href="http://www.cs.wustl.edu/~schmidt/ACE-mail.html">ACE
+mailing list</a> &lt;<a href="mailto:ace-useres@cs.wustl.edu">ace-users@cs.wustl.edu</a>&gt;,
+or through the <a href="news:comp.soft-sys.ace">comp.soft-sys.ace</a> newsgroup.
+The newsgroup mirrors the mailing list, but not the other way. Also, if you use
+the mailing list, it is best if you join it before sending a question since
+responses are usually just replied back to the group.</p>
<hr>
<p>Back to the <a href="../index.html">TAO Documentation</a>.</p>
+
</body>
+
</html>
diff --git a/TAO/docs/implrepo/status.html b/TAO/docs/implrepo/status.html
deleted file mode 100644
index 038ce7febb1..00000000000
--- a/TAO/docs/implrepo/status.html
+++ /dev/null
@@ -1,64 +0,0 @@
-<html>
-
-<head>
-<meta http-equiv="Content-Type"
-content="text/html; charset=iso-8859-1">
-<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
-<title>Implementation Repository Status</title>
-<!-- $Id$ -->
-</head>
-
-<body bgcolor="#FFFFFF" text="#000000">
-
-<hr>
-
-<h3>Implementation Repository Status</h3>
-
-<p>Point of contact: <a href="mailto:brunsch@cs.wustl.edu">Darrell
-Brunsch</a> </p>
-
-<p>Here is a brief list of my goals (and the dates completed).</p>
-
-<p>Finished goals: </p>
-
-<ul>
- <li>Create the base test client and server programs</li>
- <li>Add an IR that forwards server requests</li>
- <li>Have the server register its IOR with the IR</li>
- <li>Have the server exit after every call, so it is restarted
- each time</li>
- <li>Make the IR forward any request</li>
- <li>Add the ping object to the server</li>
- <li>Add in shutdown calls to test ping objects</li>
- <li>Implement the full IDL Interface for the IR</li>
- <li>Add more Documentation</li>
- <li>Add another test server</li>
-</ul>
-
-<p>Pending goals:</p>
-
-<ul>
- <li>Persistence</li>
- <li>Implement tao_ir, a command line application</li>
- <li>Add kill functionality</li>
- <li>Integration with POA and ORB</li>
-</ul>
-
-<p>FutureGoals (might or might not happen): </p>
-
-<ul>
- <li>TAO client-side optimization with restarted servers</li>
- <li>Server security (checksums)</li>
- <li>Federation of IRs</li>
- <li>DLLs</li>
-</ul>
-
-<hr>
-
-<p>Last update to this document: $Date$</p>
-
-<p>Back to <a href="../releasenotes/">TAO Release Notes</a></p>
-
-<p>Back to <a href="index.html">Implementation Repository</a></p>
-</body>
-</html>
diff --git a/TAO/docs/implrepo/tao_ir.html b/TAO/docs/implrepo/tao_ir.html
new file mode 100644
index 00000000000..c499edb130a
--- /dev/null
+++ b/TAO/docs/implrepo/tao_ir.html
@@ -0,0 +1,230 @@
+<html>
+<!-- $Id$ -->
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
+<title>Implementation Repository User's Guide</title>
+</head>
+
+<body bgcolor="#FFFFFF">
+
+<hr>
+
+<h2>tao_ir Usage</h2>
+
+<p>The usage of tao_ir is as follows:</p>
+
+<p><code><b>tao_ir </b>[<a href="../Options.html">ORB options</a>] <a href="#examples">command</a>
+[command-arguments]</code></p>
+
+<p><i>ORB_options</i> is the ORB options to be given.&nbsp; This is where
+options like &quot;-ORBImplRepoIOR&quot; would be placed.&nbsp; <i>command </i>is
+one of the supported commands like add, remove, etc.&nbsp; <i>command-arguments</i>
+are dependent on the command used.&nbsp; For example, <i>add </i>will need a
+server name for registration, but list does not necessarily need any arguments.</p>
+
+<hr>
+
+<h3><a name="examples">Examples</a></h3>
+<p>There is a file in the current directory name <i>implrepo.ior</i> that
+contains the IOR of the Implementation Repository.&nbsp; The server executable
+is called <i>airplane.exe</i> and the POA name used by the object is <i>plane</i>.&nbsp;
+The server needs the -i option to use the IR and the IOR of the IR.&nbsp; So the
+command would be:</p>
+
+<p><code>tao_ir -ORBImplRepoIOR file://implrepo.ior add plane -c &quot;airplane.exe
+-i file://implrepo.ior&quot;</code></p>
+
+<p><code>And if you want to later remove that server from the IR:</code></p>
+
+<p><code>tao_ir -ORBImplRepoIOR file://implrepo.ior remove plane</code></p>
+
+<p>Or if you wanted to update the entry to have a working directory of
+C:\airplane\.</p>
+
+<p><code>tao_ir -ORBImplRepoIOR file://implrepo.ior update plane -w
+&quot;C:\airplane\&quot;</code></p>
+
+<hr>
+
+<h3><a name="commands">Commands</a></h3>
+
+<p><i>tao_ir</i> currently supports these commands:</p>
+
+<table border="1">
+ <tr>
+ <th>Command</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td><a href="#activate">activate</a></td>
+ <td>Activates a server through the IR</td>
+ </tr>
+ <tr>
+ <td><a href="#add">add</a></td>
+ <td>Adds a server to the server database in the IR</td>
+ </tr>
+ <tr>
+ <td><a href="#list">list</a></td>
+ <td>Lists the details of one server or lists all the servers registered in
+ the IR</td>
+ </tr>
+ <tr>
+ <td><a href="#remove">remove</a></td>
+ <td>Removes a server from the server database in the IR</td>
+ </tr>
+ <tr>
+ <td><a href="#shutdown">shutdown</a></td>
+ <td>Shuts down a server through the IR</td>
+ </tr>
+ <tr>
+ <td><a href="#update">update</a></td>
+ <td>Updates information for a server in the server database in the IR</td>
+ </tr>
+</table>
+
+<hr>
+
+<h3><a name="activate">activate</a></h3>
+<p><code><b>tao_ir </b>[<a href="../Options.html">ORB options</a>] activate <i>name </i>[-h]&nbsp;</code></p>
+
+<p>Activate a server through the Implementation Repository. The <i>name</i> is
+the server (POA) name that is used to identify the server.</p>
+
+<table border="1">
+ <tr>
+ <th>Option</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>-h</td>
+ <td>Displays help for this command</td>
+ </tr>
+</table>
+
+<hr>
+
+<h3><a name="add">add</a></h3>
+<p><code><b>tao_ir </b>[<a href="../Options.html">ORB options</a>] add <i>name </i>[-h]
+[-c <i>command</i>] [-w <i>working_dir</i>]</code></p>
+
+<p>Creates a new server entry in the Implementation Repository.&nbsp; The <i>name</i>
+must be be the name of the POA that the object resides in.&nbsp;&nbsp;</p>
+
+<table border="1">
+ <tr>
+ <th>Option</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>-h</td>
+ <td>Displays help for this command</td>
+ </tr>
+ <tr>
+ <td>-c <i>command</i></td>
+ <td>Adds the command line string used to restart this server</td>
+ </tr>
+ <tr>
+ <td>-w <i>working_dir</i></td>
+ <td>Adds the working directory that is used for the server</td>
+ </tr>
+</table>
+
+<hr>
+
+<h3><a name="list">list</a></h3>
+<p><code><b>tao_ir </b>[<a href="../Options.html">ORB options</a>] list [<i>name</i>]<i>
+</i>[-h] [-v]</code></p>
+
+<p>Lists all or one of the server entries in the Implementation Repository. If a
+<i>name</i> is used, it will display verbose information about the server
+identified by its server (POA) name.</p>
+
+<table border="1">
+ <tr>
+ <th>Option</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>-h</td>
+ <td>Displays help for this command</td>
+ </tr>
+ <tr>
+ <td>-v</td>
+ <td>When listing the list of servers (no <i>name</i> specified), display
+ verbose information for all servers.</td>
+ </tr>
+</table>
+
+<hr>
+
+<h3><a name="remove">remove</a></h3>
+<p><code><b>tao_ir </b>[<a href="../Options.html">ORB options</a>] add <i>name </i>[-h]&nbsp;</code></p>
+
+<p>Removes a server entry from the Implementation Repository. The <i>name</i> is
+the server (POA) name that is used to identify the server.</p>
+
+<table border="1">
+ <tr>
+ <th>Option</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>-h</td>
+ <td>Displays help for this command</td>
+ </tr>
+</table>
+
+<hr>
+
+<h3><a name="shutdown">shutdown</a></h3>
+<p><code><b>tao_ir </b>[<a href="../Options.html">ORB options</a>] shutdown <i>name </i>[-h]&nbsp;</code></p>
+
+<p>Shuts down a server through the Implementation Repository. The <i>name</i> is
+the server (POA) name that is used to identify the server.</p>
+
+<table border="1">
+ <tr>
+ <th>Option</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>-h</td>
+ <td>Displays help for this command</td>
+ </tr>
+</table>
+
+<hr>
+
+<h3><a name="update">update</a></h3>
+<p><code><b>tao_ir </b>[<a href="../Options.html">ORB options</a>] add <i>name </i>[-h]
+[-c <i>command</i>] [-w <i>working_dir</i>]</code></p>
+
+<p><code>Update a server entry in the Implementation Repository. </code>The <i>name</i>
+is the server (POA) name that is used to identify the server.&nbsp;&nbsp;</p>
+
+<table border="1">
+ <tr>
+ <th>Option</th>
+ <th>Description</th>
+ </tr>
+ <tr>
+ <td>-h</td>
+ <td>Displays help for this command</td>
+ </tr>
+ <tr>
+ <td>-c <i>command</i></td>
+ <td>Changes the command line string used to restart this server</td>
+ </tr>
+ <tr>
+ <td>-w <i>working_dir</i></td>
+ <td>Changes the working directory that is used for the server</td>
+ </tr>
+</table>
+
+<hr>
+
+<p>Back to <a href="index.html">Implementation Repository</a></p>
+</body>
+</html>
diff --git a/TAO/docs/implrepo/usersguide.html b/TAO/docs/implrepo/usersguide.html
index 12b0f1de771..1b69436dea4 100644
--- a/TAO/docs/implrepo/usersguide.html
+++ b/TAO/docs/implrepo/usersguide.html
@@ -1,9 +1,10 @@
<html>
+<!-- $Id$ -->
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
-<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0">
+<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<title>Implementation Repository User's Guide</title>
</head>
@@ -11,14 +12,14 @@ content="text/html; charset=iso-8859-1">
<hr>
-<h3>User's Guide</h3>
+<h3><font color="#FF0000">Warning, this document is out of date and is currently
+being updated.</font></h3>
-<p>The Implementation Repository is still kind of in a state of
-flux and will probably change quite a bit this semester. Right
-now it works, although it is still a bit inflexible. Most of this
-document will change, so make sure to get the version of this
-document that is paired with the version of the IR that you are
-using.</p>
+<h3>Implementation Repository User's Guide</h3>
+
+<p>Since the POA/ORB integration is not yet completed, the functionality still
+exists in separately in IR_Helper, which is included in orbsvcs.&nbsp; When the
+integration is done, this dependency to orbsvcs will be removed.</p>
<hr>
@@ -33,7 +34,7 @@ it if necessary).</p>
<p>So the server needs to know the IOR of the IR in order to
change the host and port in it to that of the IR. The information
-the IR needs to receive from the server is its poa name (which it
+the IR needs to receive from the server is its POA name (which it
uses as an identifier) and commands used to restart the server.</p>
<hr>
@@ -84,16 +85,6 @@ choose you can just use the IR all the time and only worry about
<hr>
-<h4>The implrepo.conf file</h4>
-
-<p>Because with the way it is set up, and the current
-over-restrictiveness of the POA locks, the IR requires a special
-configuration file, implrepo.conf, which you need to pass to the
-IR via <font face="Times New Roman"><code>-ORBsvcconf
-implrepo.conf</code></font> flag</p>
-
-<hr>
-
<p>Last update to this document: $Date$</p>
<p>Back to <a href="index.html">Implementation Repository</a></p>