diff options
author | schmidt <douglascraigschmidt@users.noreply.github.com> | 1998-05-29 00:33:14 +0000 |
---|---|---|
committer | schmidt <douglascraigschmidt@users.noreply.github.com> | 1998-05-29 00:33:14 +0000 |
commit | 55fe5cd721de754333ca73e1933a57d85ba782ad (patch) | |
tree | f6c18895917dd83ac0f6bb3c1fa2e296731d0ccb /TAO/docs/poa_migration.html | |
parent | c84694393f17bd26a4a54c37d0be8bc6a8b15fd8 (diff) | |
download | ATCD-55fe5cd721de754333ca73e1933a57d85ba782ad.tar.gz |
*** empty log message ***
Diffstat (limited to 'TAO/docs/poa_migration.html')
-rw-r--r-- | TAO/docs/poa_migration.html | 49 |
1 files changed, 37 insertions, 12 deletions
diff --git a/TAO/docs/poa_migration.html b/TAO/docs/poa_migration.html index 220792a0241..5623a283698 100644 --- a/TAO/docs/poa_migration.html +++ b/TAO/docs/poa_migration.html @@ -1,20 +1,34 @@ -Migrating from BOA to POA +<HTML> +<HEAD> + <META NAME="GENERATOR" CONTENT="Adobe PageMill 2.0 Mac"> + <TITLE>Migrating from the BOA to the POA</TITLE> +</HEAD> -Client side: +<BODY text = "#000000" +link="#0000ff" +vlink="#cc0000" +bgcolor="#ffffff"> + +<HR><P> +<H3>Migrating from BOA to POA</H3> + +<UL> +<LI><EM><B>Client side</b></EM><P> <ul> -<li>Very little has changed, and some have not needed any changes.</li> +<li>Very little has changed, and some have not needed any changes.</li><P> <li>You'll have to insure that the Makefile includes .o's for both the server -and client; this is necessary to support collocation.</li> +and client; this is necessary to support collocation.</li> <P> </ul> -Server side: +<LI><EM><B>Server side</B></EM><P> +<UL> <li>POA_init() is replaced with resolve_initial_references("RootPOA") followed -by a _narrow operation.</li +by a _narrow operation.</li><P> <li>The implementation no longer inherits from the client-side stub; they inherit from PortableServer::ServantBase. The implications of this are (a) if -you want a object reference for that, you must use the _this() method.</li> +you want a object reference for that, you must use the _this() method.</li><P> <li>Object ID's are assigned by the POA unless you activate the servant with a -specific ID; IDL_Cubit has examples on how to do this.</li> +specific ID; IDL_Cubit has examples on how to do this.</li><P> <li>Unlike the BOA, the POA explicitly addresses the temporal nature of servants and declares that a POA can service either transient or persistent servants (not both). The root POA's (mandated, unchangeable) policy is "transient". @@ -24,21 +38,32 @@ the servant for that object must be registered with a POA whose policy is "persistent". Thus, you must create a child POA with that policy and register the servant with that POA. NOTE: when the POA declares something as "persistent", it is only stating that the key is valid between different runs -of the server; it makes no claims that state or anything else is persistent.</li +of the server; it makes no claims that state or anything else is persistent.</li><P> <ul> <li> Servants are not automatically activated, hence you must register them by calling some of the activate_object* methods on a POA or calling _this() on the servant; with the latest you have no control on the ObjectId (which sometimes is good), and the POA must support the - right policies (the RootPOA does).</li> + right policies (the RootPOA does).</li><P> <li>Servant constructors use to take a <const char*> parameter to set they object id, this is not needed now, in fact in many cases they use - to pass this argument to the skeleton class: this will fail now.</li> + to pass this argument to the skeleton class: this will fail now.</li><P> </ul> This list is not intended to be exhaustive, but should give you a good starting point. If you find things along the way which have to change and I didn't note them, please send them to me. Perhaps we can work together on the -ultimate migration document. +ultimate migration document. <P> +</UL> +</UL> + +<hr><P> + +Back to the <A +HREF="http://www.cs.wustl.edu/~schmidt/ACE_wrappers/TAO/docs/index.html">TAO +documentation</A> page. +<!--#include virtual="/~schmidt/cgi-sig.html" --> +</BODY> +</html> |