summaryrefslogtreecommitdiff
path: root/TAO/examples/POA/FindPOA/README
blob: e0bc53df588f10ee80d04699fa7884de28d91355 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52

FindPOA test:
============

Executable:	FindPOA


Description:
===========

This is a program to test the findPOA() method of the POA. It makes
use of TAO_Adapter_Activator.

Adapter activators are associated with POAs. An adapter activator
supplies a POA with the ability to create child POAs on demand, as a
side-effect of receiving a request that names the child POA (or one of
its children), or when find_POA() is called with an activate parameter
value of TRUE. An application server that creates all its needed POAs
at the beginning of execution does not need to use or provide an
adapter activator; it is necessary only for the case in which POAs
need to be created during request processing.

TAO_Adapter_Activator takes a '/' (backslash) separated string of POA
names and creates them in a hierarchy with the left most substring as
the root of that hierarchy.

The test program tests the "findPOA" method in RootPOA with a single
POA named "firstPOA" and then with a POA namestring
"firstPOA/secondPOA".  In the second case the secondPOA is
non-existent and is created.

Finally the findPOA method in RootPOA is called with a string
"thirdPOA/forthPOA/fifthPOA", resulting in the creation of
thirdPOA,forthPOA and a fifthPOA and returns the fifthPOA.

To check the findPOA method the names of the POA are queried and
printed on the screen. POAs hold only the name relative to its
parent. For eg. the name of fifthPOA is just "fifthPOA" and NOT
"RootPOA/thirdPOA/forthPOA/fifthPOA".

To Test:
========
	1. Just run the FindPOA program.

	2. You should see the following as the output:

		<Empty string for RootPOA>
		firstPOA
		secondPOA
		fifthPOA

	3. There might be other diagnostic messages.