/usr/share/doc/ice34-slice/reference/Ice/ObjectAdapter.html is in ice34-slice 3.4.2-4ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>
Ice::ObjectAdapter
</title>
<style type="text/css">
body {
font-family: Arial, Helvetica, sans-serif;
}
.Page {
width: 850px;
margin-left: auto;
margin-right: auto;
}
.Symbol {
font-family: "Courier New", Courier, mono;
}
.Synopsis {
font-family: "Courier New", Courier, mono;
font-weight: bold;
}
.Deprecated {
font-style: italic;
}
.Warning {
font-style: italic;
}
.Note {
font-style: italic;
}
.HeaderFooter {
width: 100%;
}
.Logo {
border-style: none;
}
.LogoTable {
}
.Button {
border-style: none;
}
.ButtonGrey {
border-style: none;
cursor: default;
}
</style>
</head>
<body>
<div class="Page">
<!-- SwishCommand noindex -->
<table class="HeaderFooter">
<tr>
<td align="left">
<table>
<tr>
<td><a href="../index.html"><img class="Button" src="../images/home.gif" alt="Home"></a></td>
<td><a href="NotRegisteredException.html"><img class="Button" src="../images/prev.gif" alt="Previous"></a></td>
<td><a href="../Ice.html"><img class="Button" src="../images/up.gif" alt="Up"></a></td>
<td><a href="ObjectAdapterDeactivatedException.html"><img class="Button" src="../images/next.gif" alt="Next"></a></td>
<td><a href="../_sindex.html"><img class="Button" src="../images/index.gif" alt="Index"></a></td>
</tr>
</table>
</td>
<td align="center">
<table>
<tr>
<td>
<form method="get" action="/cgi-bin/swish.cgi" enctype="application/x-www-form-urlencoded" class="form">
<div>
<input maxlength="100" value="" type="text" name="query">
<input type="submit" value="Search" name="submit"></div>
</form></td>
</tr>
</table>
</td>
<td align="right">
<table class="LogoTable">
<tr>
<td><a href="http://www.zeroc.com"><img class="Logo" src="../images/logo.gif" alt="Logo"></a></td>
</tr>
</table>
</td>
</tr>
</table>
<!-- SwishCommand index -->
<hr>
<h1 class="Symbol">Ice::ObjectAdapter</h1>
<h2>Overview</h2>
<h3 class="Synopsis">local interface ObjectAdapter</h3>
<p>
The object adapter provides an up-call interface from the Ice
run time to the implementation of Ice objects.
The object adapter is responsible for receiving requests
from endpoints, and for mapping between servants, identities, and
proxies.</p>
<h4>Used By</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="../Freeze/ServantInitializer.html#initialize">::Freeze::ServantInitializer::initialize</a></dt>
<dt class="Symbol"><a class="Symbol" href="Communicator.html#createObjectAdapter">Communicator::createObjectAdapter</a></dt>
<dt class="Symbol"><a class="Symbol" href="Communicator.html#createObjectAdapterWithEndpoints">Communicator::createObjectAdapterWithEndpoints</a></dt>
<dt class="Symbol"><a class="Symbol" href="Communicator.html#createObjectAdapterWithRouter">Communicator::createObjectAdapterWithRouter</a></dt>
<dt class="Symbol"><a class="Symbol" href="Connection.html#getAdapter">Connection::getAdapter</a></dt>
<dt class="Symbol"><a class="Symbol" href="Connection.html#setAdapter">Connection::setAdapter</a></dt>
<dt class="Symbol"><a class="Symbol" href="Current.html#adapter">Current::adapter</a></dt>
</dl>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Communicator.html">Communicator</a></dt>
<dt class="Symbol"><a class="Symbol" href="ServantLocator.html">ServantLocator</a></dt>
</dl>
<h2>Operation Index</h2>
<dl>
<dt class="Symbol"><a class="Symbol" href="#getName">getName</a></dt>
<dd>
Get the name of this object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#getCommunicator">getCommunicator</a></dt>
<dd>
Get the communicator this object adapter belongs to.</dd>
<dt class="Symbol"><a class="Symbol" href="#activate">activate</a></dt>
<dd>
Activate all endpoints that belong to this object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#hold">hold</a></dt>
<dd>
Temporarily hold receiving and dispatching requests.</dd>
<dt class="Symbol"><a class="Symbol" href="#waitForHold">waitForHold</a></dt>
<dd>
Wait until the object adapter holds requests.</dd>
<dt class="Symbol"><a class="Symbol" href="#deactivate">deactivate</a></dt>
<dd>
Deactivate all endpoints that belong to this object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#waitForDeactivate">waitForDeactivate</a></dt>
<dd>
Wait until the object adapter has deactivated.</dd>
<dt class="Symbol"><a class="Symbol" href="#isDeactivated">isDeactivated</a></dt>
<dd>
Check whether object adapter has been deactivated.</dd>
<dt class="Symbol"><a class="Symbol" href="#destroy">destroy</a></dt>
<dd>
Destroys the object adapter and cleans up all resources held by
the object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#add">add</a></dt>
<dd>
Add a servant to this object adapter's Active Servant Map.</dd>
<dt class="Symbol"><a class="Symbol" href="#addFacet">addFacet</a></dt>
<dd>
Like <a class="Symbol" href="#add">add</a>, but with a facet.</dd>
<dt class="Symbol"><a class="Symbol" href="#addWithUUID">addWithUUID</a></dt>
<dd>
Add a servant to this object adapter's Active Servant Map,
using an automatically generated UUID as its identity.</dd>
<dt class="Symbol"><a class="Symbol" href="#addFacetWithUUID">addFacetWithUUID</a></dt>
<dd>
Like <a class="Symbol" href="#addWithUUID">addWithUUID</a>, but with a facet.</dd>
<dt class="Symbol"><a class="Symbol" href="#addDefaultServant">addDefaultServant</a></dt>
<dd>
Add a default servant to handle requests for a specific
category.</dd>
<dt class="Symbol"><a class="Symbol" href="#remove">remove</a></dt>
<dd>
Remove a servant (that is, the default facet) from the object
adapter's Active Servant Map.</dd>
<dt class="Symbol"><a class="Symbol" href="#removeFacet">removeFacet</a></dt>
<dd>
Like <a class="Symbol" href="#remove">remove</a>, but with a facet.</dd>
<dt class="Symbol"><a class="Symbol" href="#removeAllFacets">removeAllFacets</a></dt>
<dd>
Remove all facets with the given identity from the Active
Servant Map.</dd>
<dt class="Symbol"><a class="Symbol" href="#removeDefaultServant">removeDefaultServant</a></dt>
<dd>
Remove the default servant for a specific category.</dd>
<dt class="Symbol"><a class="Symbol" href="#find">find</a></dt>
<dd>
Look up a servant in this object adapter's Active Servant Map
by the identity of the Ice object it implements.</dd>
<dt class="Symbol"><a class="Symbol" href="#findFacet">findFacet</a></dt>
<dd>
Like <a class="Symbol" href="#find">find</a>, but with a facet.</dd>
<dt class="Symbol"><a class="Symbol" href="#findAllFacets">findAllFacets</a></dt>
<dd>
Find all facets with the given identity in the Active Servant
Map.</dd>
<dt class="Symbol"><a class="Symbol" href="#findByProxy">findByProxy</a></dt>
<dd>
Look up a servant in this object adapter's Active Servant Map,
given a proxy.</dd>
<dt class="Symbol"><a class="Symbol" href="#addServantLocator">addServantLocator</a></dt>
<dd>
Add a Servant Locator to this object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#removeServantLocator">removeServantLocator</a></dt>
<dd>
Remove a Servant Locator from this object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#findServantLocator">findServantLocator</a></dt>
<dd>
Find a Servant Locator installed with this object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#findDefaultServant">findDefaultServant</a></dt>
<dd>
Find the default servant for a specific category.</dd>
<dt class="Symbol"><a class="Symbol" href="#createProxy">createProxy</a></dt>
<dd>
Create a proxy for the object with the given identity.</dd>
<dt class="Symbol"><a class="Symbol" href="#createDirectProxy">createDirectProxy</a></dt>
<dd>
Create a direct proxy for the object with the given identity.</dd>
<dt class="Symbol"><a class="Symbol" href="#createIndirectProxy">createIndirectProxy</a></dt>
<dd>
Create an indirect proxy for the object with the given identity.</dd>
<dt class="Symbol"><a class="Symbol" href="#setLocator">setLocator</a></dt>
<dd>
Set an Ice locator for this object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#refreshPublishedEndpoints">refreshPublishedEndpoints</a></dt>
<dd>
Refresh the set of published endpoints.</dd>
<dt class="Symbol"><a class="Symbol" href="#getEndpoints">getEndpoints</a></dt>
<dd>
Get the set of endpoints configured with this object adapter.</dd>
<dt class="Symbol"><a class="Symbol" href="#getPublishedEndpoints">getPublishedEndpoints</a></dt>
<dd>
Get the set of endpoints that proxies created by this object
adapter will contain.</dd>
</dl>
<h2>Operations</h2>
<h3 class="Synopsis">string <a class="Symbol" name="getName">getName</a>()</h3>
<p>
Get the name of this object adapter.</p>
<h4>Return Value</h4>
<p>This object adapter's name.</p>
<h3 class="Synopsis"><a class="Symbol" href="Communicator.html">Communicator</a> <a class="Symbol" name="getCommunicator">getCommunicator</a>()</h3>
<p>
Get the communicator this object adapter belongs to.</p>
<h4>Return Value</h4>
<p>This object adapter's communicator.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Communicator.html">Communicator</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="activate">activate</a>()</h3>
<p>
Activate all endpoints that belong to this object adapter.
After activation, the object adapter can dispatch requests
received through its endpoints.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#hold">hold</a></dt>
<dt class="Symbol"><a class="Symbol" href="#deactivate">deactivate</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="hold">hold</a>()</h3>
<p>
Temporarily hold receiving and dispatching requests. The object
adapter can be reactivated with the <a class="Symbol" href="#activate">activate</a> operation.
<p class="Note"> Holding is not immediate, i.e., after <a class="Symbol" href="#hold">hold</a>
returns, the object adapter might still be active for some
time. You can use <a class="Symbol" href="#waitForHold">waitForHold</a> to wait until holding is
complete.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#activate">activate</a></dt>
<dt class="Symbol"><a class="Symbol" href="#deactivate">deactivate</a></dt>
<dt class="Symbol"><a class="Symbol" href="#waitForHold">waitForHold</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="waitForHold">waitForHold</a>()</h3>
<p>
Wait until the object adapter holds requests. Calling <a class="Symbol" href="#hold">hold</a>
initiates holding of requests, and <a class="Symbol" href="#waitForHold">waitForHold</a> only returns
when holding of requests has been completed.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#hold">hold</a></dt>
<dt class="Symbol"><a class="Symbol" href="#waitForDeactivate">waitForDeactivate</a></dt>
<dt class="Symbol"><a class="Symbol" href="Communicator.html#waitForShutdown">Communicator::waitForShutdown</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="deactivate">deactivate</a>()</h3>
<p>
Deactivate all endpoints that belong to this object adapter.
After deactivation, the object adapter stops receiving
requests through its endpoints. Object adapters that have been
deactivated must not be reactivated again, and cannot be used
otherwise. Attempts to use a deactivated object adapter raise
<a class="Symbol" href="ObjectAdapterDeactivatedException.html">ObjectAdapterDeactivatedException</a>; however, attempts to
<a class="Symbol" href="#deactivate">deactivate</a> an already deactivated object adapter are
ignored and do nothing. Once deactivated, it is possible to
destroy the adapter to clean up resources and then create and
activate a new adapter with the same name.
<p class="Note"> After <a class="Symbol" href="#deactivate">deactivate</a> returns, no new requests
are processed by the object adapter. However, requests that
have been started before <a class="Symbol" href="#deactivate">deactivate</a> was called might
still be active. You can use <a class="Symbol" href="#waitForDeactivate">waitForDeactivate</a> to wait
for the completion of all requests for this object adapter.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#activate">activate</a></dt>
<dt class="Symbol"><a class="Symbol" href="#hold">hold</a></dt>
<dt class="Symbol"><a class="Symbol" href="#waitForDeactivate">waitForDeactivate</a></dt>
<dt class="Symbol"><a class="Symbol" href="Communicator.html#shutdown">Communicator::shutdown</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="waitForDeactivate">waitForDeactivate</a>()</h3>
<p>
Wait until the object adapter has deactivated. Calling
<a class="Symbol" href="#deactivate">deactivate</a> initiates object adapter deactivation, and
<a class="Symbol" href="#waitForDeactivate">waitForDeactivate</a> only returns when deactivation has
been completed.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#deactivate">deactivate</a></dt>
<dt class="Symbol"><a class="Symbol" href="#waitForHold">waitForHold</a></dt>
<dt class="Symbol"><a class="Symbol" href="Communicator.html#waitForShutdown">Communicator::waitForShutdown</a></dt>
</dl>
<h3 class="Synopsis">bool <a class="Symbol" name="isDeactivated">isDeactivated</a>()</h3>
<p>
Check whether object adapter has been deactivated.</p>
<h4>Return Value</h4>
<p>Whether adapter has been deactivated.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Communicator.html#shutdown">Communicator::shutdown</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="destroy">destroy</a>()</h3>
<p>
Destroys the object adapter and cleans up all resources held by
the object adapter. If the object adapter has not yet been
deactivated, <a class="Symbol" href="#destroy">destroy</a> implicitly initiates the deactivation
and waits for it to finish. Subsequent calls to <a class="Symbol" href="#destroy">destroy</a> are
ignored. Once <a class="Symbol" href="#destroy">destroy</a> has returned, it is possible to create
another object adapter with the same name.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#deactivate">deactivate</a></dt>
<dt class="Symbol"><a class="Symbol" href="#waitForDeactivate">waitForDeactivate</a></dt>
<dt class="Symbol"><a class="Symbol" href="Communicator.html#destroy">Communicator::destroy</a></dt>
</dl>
<h3 class="Synopsis">Object* <a class="Symbol" name="add">add</a>(Object servant, <a class="Symbol" href="Identity.html">Identity</a> id)</h3>
<p>
Add a servant to this object adapter's Active Servant Map. Note
that one servant can implement several Ice objects by registering
the servant with multiple identities. Adding a servant with an
identity that is in the map already throws <a class="Symbol" href="AlreadyRegisteredException.html">AlreadyRegisteredException</a>.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">servant</dt>
<dd>
The servant to add.</dd>
<dt class="Symbol">id</dt>
<dd>
The identity of the Ice object that is implemented by
the servant.</dd>
</dl>
<h4>Return Value</h4>
<p>A proxy that matches the given identity and this object
adapter.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addFacet">addFacet</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addWithUUID">addWithUUID</a></dt>
<dt class="Symbol"><a class="Symbol" href="#remove">remove</a></dt>
<dt class="Symbol"><a class="Symbol" href="#find">find</a></dt>
</dl>
<h3 class="Synopsis">Object* <a class="Symbol" name="addFacet">addFacet</a>(Object servant, <a class="Symbol" href="Identity.html">Identity</a> id, string facet)</h3>
<p>
Like <a class="Symbol" href="#add">add</a>, but with a facet. Calling <tt>add(servant, id)</tt>
is equivalent to calling <a class="Symbol" href="#addFacet">addFacet</a> with an empty facet.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">servant</dt>
<dd>
The servant to add.</dd>
<dt class="Symbol">id</dt>
<dd>
The identity of the Ice object that is implemented by
the servant.</dd>
<dt class="Symbol">facet</dt>
<dd>
The facet. An empty facet means the default facet.</dd>
</dl>
<h4>Return Value</h4>
<p>A proxy that matches the given identity, facet, and
this object adapter.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#add">add</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addFacetWithUUID">addFacetWithUUID</a></dt>
<dt class="Symbol"><a class="Symbol" href="#removeFacet">removeFacet</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findFacet">findFacet</a></dt>
</dl>
<h3 class="Synopsis">Object* <a class="Symbol" name="addWithUUID">addWithUUID</a>(Object servant)</h3>
<p>
Add a servant to this object adapter's Active Servant Map,
using an automatically generated UUID as its identity. Note that
the generated UUID identity can be accessed using the proxy's
<tt>ice_getIdentity</tt> operation.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">servant</dt>
<dd>
The servant to add.</dd>
</dl>
<h4>Return Value</h4>
<p>A proxy that matches the generated UUID identity and
this object adapter.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#add">add</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addFacetWithUUID">addFacetWithUUID</a></dt>
<dt class="Symbol"><a class="Symbol" href="#remove">remove</a></dt>
<dt class="Symbol"><a class="Symbol" href="#find">find</a></dt>
</dl>
<h3 class="Synopsis">Object* <a class="Symbol" name="addFacetWithUUID">addFacetWithUUID</a>(Object servant, string facet)</h3>
<p>
Like <a class="Symbol" href="#addWithUUID">addWithUUID</a>, but with a facet. Calling
<tt>addWithUUID(servant)</tt> is equivalent to calling
<a class="Symbol" href="#addFacetWithUUID">addFacetWithUUID</a> with an empty facet.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">servant</dt>
<dd>
The servant to add.</dd>
<dt class="Symbol">facet</dt>
<dd>
The facet. An empty facet means the default
facet.</dd>
</dl>
<h4>Return Value</h4>
<p>A proxy that matches the generated UUID identity,
facet, and this object adapter.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addFacet">addFacet</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addWithUUID">addWithUUID</a></dt>
<dt class="Symbol"><a class="Symbol" href="#removeFacet">removeFacet</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findFacet">findFacet</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="addDefaultServant">addDefaultServant</a>(Object servant, string category)</h3>
<p>
Add a default servant to handle requests for a specific
category. Adding a default servant for a category for
which a default servant is already registered throws
<a class="Symbol" href="AlreadyRegisteredException.html">AlreadyRegisteredException</a>. To dispatch operation
calls on servants, the object adapter tries to find a servant
for a given Ice object identity and facet in the following
order:
<ol>
<li>The object adapter tries to find a servant for the identity
and facet in the Active Servant Map.</li>
<li>If no servant has been found in the Active Servant Map, the
object adapter tries to find a default servant for the category
component of the identity.</li>
<li>If no servant has been found by any of the preceding steps,
the object adapter tries to find a default servant for an empty
category, regardless of the category contained in the identity.</li>
<li>If no servant has been found by any of the preceding steps,
the object adapter gives up and the caller receives
<a class="Symbol" href="ObjectNotExistException.html">ObjectNotExistException</a> or <a class="Symbol" href="FacetNotExistException.html">FacetNotExistException</a>.</li>
</ol></p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">servant</dt>
<dd>
The default servant.</dd>
<dt class="Symbol">category</dt>
<dd>
The category for which the default servant is
registered. An empty category means it will handle all categories.</dd>
</dl>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#removeDefaultServant">removeDefaultServant</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findDefaultServant">findDefaultServant</a></dt>
</dl>
<h3 class="Synopsis">Object <a class="Symbol" name="remove">remove</a>(<a class="Symbol" href="Identity.html">Identity</a> id)</h3>
<p>
Remove a servant (that is, the default facet) from the object
adapter's Active Servant Map.
@link NotRegisteredException].</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The identity of the Ice object that is implemented by
the servant. If the servant implements multiple Ice objects,
<a class="Symbol" href="#remove">remove</a> has to be called for all those Ice objects.
Removing an identity that is not in the map throws</dd>
</dl>
<h4>Return Value</h4>
<p>The removed servant.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#add">add</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addWithUUID">addWithUUID</a></dt>
</dl>
<h3 class="Synopsis">Object <a class="Symbol" name="removeFacet">removeFacet</a>(<a class="Symbol" href="Identity.html">Identity</a> id, string facet)</h3>
<p>
Like <a class="Symbol" href="#remove">remove</a>, but with a facet. Calling <tt>remove(id)</tt>
is equivalent to calling <a class="Symbol" href="#removeFacet">removeFacet</a> with an empty facet.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The identity of the Ice object that is implemented by
the servant.</dd>
<dt class="Symbol">facet</dt>
<dd>
The facet. An empty facet means the default facet.</dd>
</dl>
<h4>Return Value</h4>
<p>The removed servant.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addFacet">addFacet</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addFacetWithUUID">addFacetWithUUID</a></dt>
</dl>
<h3 class="Synopsis"><a class="Symbol" href="../Ice.html#FacetMap">FacetMap</a> <a class="Symbol" name="removeAllFacets">removeAllFacets</a>(<a class="Symbol" href="Identity.html">Identity</a> id)</h3>
<p>
Remove all facets with the given identity from the Active
Servant Map. The operation completely removes the Ice object,
including its default facet. Removing an identity that
is not in the map throws <a class="Symbol" href="NotRegisteredException.html">NotRegisteredException</a>.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The identity of the Ice object to be removed.</dd>
</dl>
<h4>Return Value</h4>
<p>A collection containing all the facet names and
servants of the removed Ice object.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#remove">remove</a></dt>
<dt class="Symbol"><a class="Symbol" href="#removeFacet">removeFacet</a></dt>
</dl>
<h3 class="Synopsis">Object <a class="Symbol" name="removeDefaultServant">removeDefaultServant</a>(string category)</h3>
<p>
Remove the default servant for a specific category. Attempting
to remove a default servant for a category that is not
registered throws <a class="Symbol" href="NotRegisteredException.html">NotRegisteredException</a>.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">category</dt>
<dd>
The category of the default servant to remove.</dd>
</dl>
<h4>Return Value</h4>
<p>The default servant.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#addDefaultServant">addDefaultServant</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findDefaultServant">findDefaultServant</a></dt>
</dl>
<h3 class="Synopsis">Object <a class="Symbol" name="find">find</a>(<a class="Symbol" href="Identity.html">Identity</a> id)</h3>
<p>
Look up a servant in this object adapter's Active Servant Map
by the identity of the Ice object it implements.
<p class="Note">This operation only tries to look up a servant in
the Active Servant Map. It does not attempt to find a servant
by using any installed <a class="Symbol" href="ServantLocator.html">ServantLocator</a>.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The identity of the Ice object for which the servant
should be returned.</dd>
</dl>
<h4>Return Value</h4>
<p>The servant that implements the Ice object with the
given identity, or null if no such servant has been found.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findFacet">findFacet</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findByProxy">findByProxy</a></dt>
</dl>
<h3 class="Synopsis">Object <a class="Symbol" name="findFacet">findFacet</a>(<a class="Symbol" href="Identity.html">Identity</a> id, string facet)</h3>
<p>
Like <a class="Symbol" href="#find">find</a>, but with a facet. Calling <tt>find(id)</tt>
is equivalent to calling <a class="Symbol" href="#findFacet">findFacet</a> with an empty
facet.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The identity of the Ice object for which the
servant should be returned.</dd>
<dt class="Symbol">facet</dt>
<dd>
The facet. An empty facet means the default
facet.</dd>
</dl>
<h4>Return Value</h4>
<p>The servant that implements the Ice object with the
given identity and facet, or null if no such servant has been
found.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#find">find</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findByProxy">findByProxy</a></dt>
</dl>
<h3 class="Synopsis"><a class="Symbol" href="../Ice.html#FacetMap">FacetMap</a> <a class="Symbol" name="findAllFacets">findAllFacets</a>(<a class="Symbol" href="Identity.html">Identity</a> id)</h3>
<p>
Find all facets with the given identity in the Active Servant
Map.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The identity of the Ice object for which the facets
should be returned.</dd>
</dl>
<h4>Return Value</h4>
<p>A collection containing all the facet names and
servants that have been found, or an empty map if there is no
facet for the given identity.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#find">find</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findFacet">findFacet</a></dt>
</dl>
<h3 class="Synopsis">Object <a class="Symbol" name="findByProxy">findByProxy</a>(Object* proxy)</h3>
<p>
Look up a servant in this object adapter's Active Servant Map,
given a proxy.
<p class="Note">This operation only tries to lookup a servant in
the Active Servant Map. It does not attempt to find a servant
by using any installed <a class="Symbol" href="ServantLocator.html">ServantLocator</a>.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">proxy</dt>
<dd>
The proxy for which the servant should be returned.</dd>
</dl>
<h4>Return Value</h4>
<p>The servant that matches the proxy, or null if no such
servant has been found.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#find">find</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findFacet">findFacet</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="addServantLocator">addServantLocator</a>(<a class="Symbol" href="ServantLocator.html">ServantLocator</a> locator, string category)</h3>
<p>
Add a Servant Locator to this object adapter. Adding a servant
locator for a category for which a servant locator is already
registered throws <a class="Symbol" href="AlreadyRegisteredException.html">AlreadyRegisteredException</a>. To dispatch
operation calls on servants, the object adapter tries to find a
servant for a given Ice object identity and facet in the
following order:
<ol>
<li>The object adapter tries to find a servant for the identity
and facet in the Active Servant Map.</li>
<li>If no servant has been found in the Active Servant Map,
the object adapter tries to find a servant locator for the
category component of the identity. If a locator is found, the
object adapter tries to find a servant using this locator.</li>
<li>If no servant has been found by any of the preceding steps,
the object adapter tries to find a locator for an empty category,
regardless of the category contained in the identity. If a
locator is found, the object adapter tries to find a servant
using this locator.</li>
<li>If no servant has been found by any of the preceding steps,
the object adapter gives up and the caller receives
<a class="Symbol" href="ObjectNotExistException.html">ObjectNotExistException</a> or <a class="Symbol" href="FacetNotExistException.html">FacetNotExistException</a>.</li>
</ol>
<p class="Note">Only one locator for the empty category can be
installed.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">locator</dt>
<dd>
The locator to add.</dd>
<dt class="Symbol">category</dt>
<dd>
The category for which the Servant Locator can
locate servants, or an empty string if the Servant Locator does
not belong to any specific category.</dd>
</dl>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#removeServantLocator">removeServantLocator</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findServantLocator">findServantLocator</a></dt>
<dt class="Symbol"><a class="Symbol" href="ServantLocator.html">ServantLocator</a></dt>
</dl>
<h3 class="Synopsis"><a class="Symbol" href="ServantLocator.html">ServantLocator</a> <a class="Symbol" name="removeServantLocator">removeServantLocator</a>(string category)</h3>
<p>
Remove a Servant Locator from this object adapter.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">category</dt>
<dd>
The category for which the Servant Locator can
locate servants, or an empty string if the Servant Locator does
not belong to any specific category.</dd>
</dl>
<h4>Return Value</h4>
<p>The Servant Locator, or throws <a class="Symbol" href="NotRegisteredException.html">NotRegisteredException</a>
if no Servant Locator was found for the given category.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addServantLocator">addServantLocator</a></dt>
<dt class="Symbol"><a class="Symbol" href="#findServantLocator">findServantLocator</a></dt>
<dt class="Symbol"><a class="Symbol" href="ServantLocator.html">ServantLocator</a></dt>
</dl>
<h3 class="Synopsis"><a class="Symbol" href="ServantLocator.html">ServantLocator</a> <a class="Symbol" name="findServantLocator">findServantLocator</a>(string category)</h3>
<p>
Find a Servant Locator installed with this object adapter.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">category</dt>
<dd>
The category for which the Servant Locator can
locate servants, or an empty string if the Servant Locator does
not belong to any specific category.</dd>
</dl>
<h4>Return Value</h4>
<p>The Servant Locator, or null if no Servant Locator was
found for the given category.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
<dt class="Symbol"><a class="Symbol" href="#addServantLocator">addServantLocator</a></dt>
<dt class="Symbol"><a class="Symbol" href="#removeServantLocator">removeServantLocator</a></dt>
<dt class="Symbol"><a class="Symbol" href="ServantLocator.html">ServantLocator</a></dt>
</dl>
<h3 class="Synopsis">Object <a class="Symbol" name="findDefaultServant">findDefaultServant</a>(string category)</h3>
<p>
Find the default servant for a specific category.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">category</dt>
<dd>
The category of the default servant to find.</dd>
</dl>
<h4>Return Value</h4>
<p>The default servant or null if no default servant was
registered for the category.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#addDefaultServant">addDefaultServant</a></dt>
<dt class="Symbol"><a class="Symbol" href="#removeDefaultServant">removeDefaultServant</a></dt>
</dl>
<h3 class="Synopsis">Object* <a class="Symbol" name="createProxy">createProxy</a>(<a class="Symbol" href="Identity.html">Identity</a> id)</h3>
<p>
Create a proxy for the object with the given identity. If this
object adapter is configured with an adapter id, the return
value is an indirect proxy that refers to the adapter id. If
a replica group id is also defined, the return value is an
indirect proxy that refers to the replica group id. Otherwise,
if no adapter id is defined, the return value is a direct
proxy containing this object adapter's published endpoints.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The object's identity.</dd>
</dl>
<h4>Return Value</h4>
<p>A proxy for the object with the given identity.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
</dl>
<h3 class="Synopsis">Object* <a class="Symbol" name="createDirectProxy">createDirectProxy</a>(<a class="Symbol" href="Identity.html">Identity</a> id)</h3>
<p>
Create a direct proxy for the object with the given identity.
The returned proxy contains this object adapter's published
endpoints.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The object's identity.</dd>
</dl>
<h4>Return Value</h4>
<p>A proxy for the object with the given identity.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
</dl>
<h3 class="Synopsis">Object* <a class="Symbol" name="createIndirectProxy">createIndirectProxy</a>(<a class="Symbol" href="Identity.html">Identity</a> id)</h3>
<p>
Create an indirect proxy for the object with the given identity.
If this object adapter is configured with an adapter id, the
return value refers to the adapter id. Otherwise, the return
value contains only the object identity.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">id</dt>
<dd>
The object's identity.</dd>
</dl>
<h4>Return Value</h4>
<p>A proxy for the object with the given identity.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Identity.html">Identity</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="setLocator">setLocator</a>(<a class="Symbol" href="Locator.html">Locator</a>* loc)</h3>
<p>
Set an Ice locator for this object adapter. By doing so, the
object adapter will register itself with the locator registry
when it is activated for the first time. Furthermore, the proxies
created by this object adapter will contain the adapter name
instead of its endpoints.</p>
<h4>Parameters</h4>
<dl>
<dt class="Symbol">loc</dt>
<dd>
The locator used by this object adapter.</dd>
</dl>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#createDirectProxy">createDirectProxy</a></dt>
<dt class="Symbol"><a class="Symbol" href="Locator.html">Locator</a></dt>
<dt class="Symbol"><a class="Symbol" href="LocatorRegistry.html">LocatorRegistry</a></dt>
</dl>
<h3 class="Synopsis">void <a class="Symbol" name="refreshPublishedEndpoints">refreshPublishedEndpoints</a>()</h3>
<p>
Refresh the set of published endpoints. The run time re-reads
the PublishedEndpoints property if it is set and re-reads the
list of local interfaces if the adapter is configured to listen
on all endpoints. This operation is useful to refresh the endpoint
information that is published in the proxies that are created by
an object adapter if the network interfaces used by a host changes.</p>
<h3 class="Synopsis"><a class="Symbol" href="../Ice.html#EndpointSeq">EndpointSeq</a> <a class="Symbol" name="getEndpoints">getEndpoints</a>()</h3>
<p>
Get the set of endpoints configured with this object adapter.</p>
<h4>Return Value</h4>
<p>The set of endpoints.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="Endpoint.html">Endpoint</a></dt>
</dl>
<h3 class="Synopsis"><a class="Symbol" href="../Ice.html#EndpointSeq">EndpointSeq</a> <a class="Symbol" name="getPublishedEndpoints">getPublishedEndpoints</a>()</h3>
<p>
Get the set of endpoints that proxies created by this object
adapter will contain.</p>
<h4>Return Value</h4>
<p>The set of published endpoints.</p>
<h4>See Also</h4>
<dl>
<dt class="Symbol"><a class="Symbol" href="#refreshPublishedEndpoints">refreshPublishedEndpoints</a></dt>
<dt class="Symbol"><a class="Symbol" href="Endpoint.html">Endpoint</a></dt>
</dl>
<hr>
<!-- SwishCommand noindex -->
<table class="HeaderFooter">
<tr>
<td align="left">
<table>
<tr>
<td><a href="../index.html"><img class="Button" src="../images/home.gif" alt="Home"></a></td>
<td><a href="NotRegisteredException.html"><img class="Button" src="../images/prev.gif" alt="Previous"></a></td>
<td><a href="../Ice.html"><img class="Button" src="../images/up.gif" alt="Up"></a></td>
<td><a href="ObjectAdapterDeactivatedException.html"><img class="Button" src="../images/next.gif" alt="Next"></a></td>
<td><a href="../_sindex.html"><img class="Button" src="../images/index.gif" alt="Index"></a></td>
</tr>
</table>
</td>
<td align="center">
<table>
<tr>
<td>
<form method="get" action="/cgi-bin/swish.cgi" enctype="application/x-www-form-urlencoded" class="form">
<div>
<input maxlength="100" value="" type="text" name="query">
<input type="submit" value="Search" name="submit"></div>
</form></td>
</tr>
</table>
</td>
<td align="right">
<table class="LogoTable">
<tr>
<td><a href="http://www.zeroc.com"><img class="Logo" src="../images/logo.gif" alt="Logo"></a></td>
</tr>
</table>
</td>
</tr>
</table>
<!-- SwishCommand index -->
</div>
</body>
</html>
|