<HTML
><HEAD
><TITLE
>goad</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.44"><LINK
REL="HOME"
TITLE="GNOME CORBA Framework"
HREF="book1.html"><LINK
REL="UP"
TITLE="libgnorba"
HREF="index.html"><LINK
REL="PREVIOUS"
TITLE="gnorba"
HREF="gnorba-gnorba.html"></HEAD
><BODY
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TH
COLSPAN="4"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="5"
>GNOME CORBA Framework</FONT
></TH
></TR
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="gnorba-gnorba.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="index.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
>&nbsp;</TD
></TR
></TABLE
></DIV
><H1
><A
NAME="GNORBA-GOAD"
>goad</A
></H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN224"
></A
><H2
>Name</H2
>goad&nbsp;--&nbsp;GNOME Object Activation Directory</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN227"
></A
><H2
>Synopsis</H2
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="SYNOPSIS"
>&#13;

const char* <A
HREF="gnorba-goad.html#GOAD-SERVER-ACTIVATION-ID"
>goad_server_activation_id</A
>       (void);
int         <A
HREF="gnorba-goad.html#GOAD-SERVER-REGISTER"
>goad_server_register</A
>            (<GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> name_server,
                                             <GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> server,
                                             const char *name,
                                             const char *kind,
                                             <GTKDOCLINK
HREF="CORBA-ENVIRONMENT"
>CORBA_Environment</GTKDOCLINK
> *ev);
int         <A
HREF="gnorba-goad.html#GOAD-SERVER-UNREGISTER"
>goad_server_unregister</A
>          (<GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> name_server,
                                             const char *name,
                                             const char *kind,
                                             <GTKDOCLINK
HREF="CORBA-ENVIRONMENT"
>CORBA_Environment</GTKDOCLINK
> *ev);
enum        <A
HREF="gnorba-goad.html#GOADSERVERTYPE"
>GoadServerType</A
>;
enum        <A
HREF="gnorba-goad.html#GOADACTIVATIONFLAGS"
>GoadActivationFlags</A
>;
struct      <A
HREF="gnorba-goad.html#GOADSERVER"
>GoadServer</A
>;
struct      <A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
>;
<A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
>* <A
HREF="gnorba-goad.html#GOAD-SERVER-LIST-GET"
>goad_server_list_get</A
>        (void);
void        <A
HREF="gnorba-goad.html#GOAD-SERVER-LIST-FREE"
>goad_server_list_free</A
>           (<A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
> *server_list);
<GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> <A
HREF="gnorba-goad.html#GOAD-SERVER-ACTIVATE"
>goad_server_activate</A
>           (<A
HREF="gnorba-goad.html#GOADSERVER"
>GoadServer</A
> *sinfo,
                                             <A
HREF="gnorba-goad.html#GOADACTIVATIONFLAGS"
>GoadActivationFlags</A
> flags,
                                             const char **params);
<GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> <A
HREF="gnorba-goad.html#GOAD-SERVER-ACTIVATE-WITH-REPO-ID"
>goad_server_activate_with_repo_id</A
>
                                            (<A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
> *server_list,
                                             const char *repo_id,
                                             <A
HREF="gnorba-goad.html#GOADACTIVATIONFLAGS"
>GoadActivationFlags</A
> flags,
                                             const char **params);
<GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> <A
HREF="gnorba-goad.html#GOAD-SERVER-ACTIVATE-WITH-ID"
>goad_server_activate_with_id</A
>   (<A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
> *server_list,
                                             const char *server_id,
                                             <A
HREF="gnorba-goad.html#GOADACTIVATIONFLAGS"
>GoadActivationFlags</A
> flags,
                                             const char **params);</PRE
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN258"
></A
><H2
>Description</H2
><P
>GOAD is the GNOME Object Activation Directory. It keeps track of the
CORBA object implementations available on the system, and allows
applications to activate these implementations or access currently
running ones.</P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN261"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN263"
></A
><H3
><A
NAME="GOAD-SERVER-ACTIVATION-ID"
></A
>goad_server_activation_id ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>const char* goad_server_activation_id       (void);</PRE
></TD
></TR
></TABLE
><P
>When an application that implements a GOAD-registered object is
started, it should call this function to check if it was started to create one of those
objects.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the GOAD ID that the program was executed to make available.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN278"
></A
><H3
><A
NAME="GOAD-SERVER-REGISTER"
></A
>goad_server_register ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         goad_server_register            (<GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> name_server,
                                             <GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> server,
                                             const char *name,
                                             const char *kind,
                                             <GTKDOCLINK
HREF="CORBA-ENVIRONMENT"
>CORBA_Environment</GTKDOCLINK
> *ev);</PRE
></TD
></TR
></TABLE
><P
>Registers <TT
CLASS="PARAMETER"
><I
>server</I
></TT
> in the <TT
CLASS="PARAMETER"
><I
>name_server</I
></TT
> with <TT
CLASS="PARAMETER"
><I
>name</I
></TT
>.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name_server</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> points to a running name_server</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>server</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the server object we want to register.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> The GOAD id of the server that is being registered</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>kind</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> "object" for now.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ev</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> CORBA_Environment to return errors</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>zero upon success, non-zero if registration failed or another registration for this name already exists.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN319"
></A
><H3
><A
NAME="GOAD-SERVER-UNREGISTER"
></A
>goad_server_unregister ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         goad_server_unregister          (<GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> name_server,
                                             const char *name,
                                             const char *kind,
                                             <GTKDOCLINK
HREF="CORBA-ENVIRONMENT"
>CORBA_Environment</GTKDOCLINK
> *ev);</PRE
></TD
></TR
></TABLE
><P
>Removes the registration of <TT
CLASS="PARAMETER"
><I
>server</I
></TT
> in the <TT
CLASS="PARAMETER"
><I
>name_server</I
></TT
>.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name_server</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> points to a running name_server</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>name</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> The GOAD ID of the server we want to remove from the name server registration.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>kind</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> "object" for normal use.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ev</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> CORBA_Environment to return errors</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>zero upon success, non-zero on error.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN354"
></A
><H3
><A
NAME="GOADSERVERTYPE"
></A
>enum GoadServerType</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef enum {
	GOAD_SERVER_SHLIB = 1,
	GOAD_SERVER_EXE = 2,
	GOAD_SERVER_RELAY = 3,
	GOAD_SERVER_FACTORY = 4
} GoadServerType;</PRE
></TD
></TR
></TABLE
><P
><P
></P
><UL
><LI
><P
>GOAD_SERVER_SHLIB - implementation is in a shared library plugin</P
></LI
><LI
><P
>GOAD_SERVER_EXE - implementation is in a separate program</P
></LI
><LI
><P
>GOAD_SERVER_RELAY - implementation is accessable via a relay object (not yet implemented)</P
></LI
><LI
><P
>GOAD_SERVER_FACTORY - implementation is started by talking to a GNOME::GenericFactory object</P
></LI
></UL
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN368"
></A
><H3
><A
NAME="GOADACTIVATIONFLAGS"
></A
>enum GoadActivationFlags</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef enum {
	/* these two are mutually exclusive */
	GOAD_ACTIVATE_SHLIB = 1 &lt;&lt; 0, 	/* prefer shlib activation */
	GOAD_ACTIVATE_REMOTE = 1 &lt;&lt; 1, 	/* prefer remote activation */

	/* these two are mutually exclusive */
	GOAD_ACTIVATE_EXISTING_ONLY = 1 &lt;&lt; 2, /* Only do lookup in name
					       * service for currently running
					       * version.
					       */
	GOAD_ACTIVATE_NEW_ONLY = 1 &lt;&lt; 3,      /* No lookup in name service. */
	GOAD_ACTIVATE_ASYNC = 1 &lt;&lt; 4 /* Just make sure that the object is running */
} GoadActivationFlags;</PRE
></TD
></TR
></TABLE
><P
><P
></P
><UL
><LI
><P
>GOAD_ACTIVATE_SHLIB - indicates activation from a shared library plugin is preferred</P
></LI
><LI
><P
>GOAD_ACTIVATE_REMOTE - indicates activation from an executable or factory is preferred</P
></LI
><LI
><P
>GOAD_ACTIVATE_EXISTING_ONLY - Don't create a new object, simply access the currently running implementation if available.</P
></LI
><LI
><P
>GOAD_ACTIVATE_NEW_ONLY - Don't look for a currently running implementation, just create a new one (mutually exclusive with GOAD_ACTIVATE_EXISTING_ONLY)</P
></LI
><LI
><P
>GOAD_ACTIVATE_ASYNC - just start the object implementation, but don't worry about getting a reference to it.</P
></LI
></UL
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN384"
></A
><H3
><A
NAME="GOADSERVER"
></A
>struct GoadServer</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef struct {
	GoadServerType type;
        GoadActivationFlags flags; /* only GOAD_ACTIVATE_NEW_ONLY
				      currently parsed in */
	char     **repo_id;
	char     *server_id;
	char     *description;

        /*
	 * Executable/shlib path, relayer IOR, whatever.
	 * This field may disappear at any time. You have been warned ;-)
	 */
	char     *location_info;
} GoadServer;</PRE
></TD
></TR
></TABLE
><P
><P
></P
><UL
><LI
><P
>'type' - The GoadServerType of the implementation being listed</P
></LI
><LI
><P
>'flags' - The bitwise OR of all the GoadActivationFlags that are enforced for this GoadServer</P
></LI
><LI
><P
>'repo_id' - An array of strings giving all the interfaces supported by this implementation</P
></LI
><LI
><P
>'server_id' - The GOAD ID of this implementation. A GOAD ID is a unique global identifier of a particular object implementation.</P
></LI
><LI
><P
>'description' - A human-readable description of this object, if applicable</P
></LI
><LI
><P
>'location_info' - Information on how to activate the object. The meaning varies depending on the 'type'</P
></LI
></UL
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN402"
></A
><H3
><A
NAME="GOADSERVERLIST"
></A
>struct GoadServerList</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>typedef struct {
  GoadServer *list;
  GHashTable *by_goad_id;
} GoadServerList;</PRE
></TD
></TR
></TABLE
><P
>'list' is an array of GoadServer structures. 'by_goad_id' is a hash
table with the GOAD ID of each implementation as the key, and the
GoadServer structure for that implementation as the value.</P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN407"
></A
><H3
><A
NAME="GOAD-SERVER-LIST-GET"
></A
>goad_server_list_get ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
>* goad_server_list_get        (void);</PRE
></TD
></TR
></TABLE
><P
>Returns an array listing all the servers available
for activation.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>a newly created server list.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN423"
></A
><H3
><A
NAME="GOAD-SERVER-LIST-FREE"
></A
>goad_server_list_free ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        goad_server_list_free           (<A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
> *server_list);</PRE
></TD
></TR
></TABLE
><P
>Frees up all the memory associated with <TT
CLASS="PARAMETER"
><I
>server_list</I
></TT
>
(which should have been received from <A
HREF="gnorba-goad.html#GOAD-SERVER-LIST-GET"
>goad_server_list_get</A
>())</P
><P
>Side effects: Invalidates the memory pointed to by
'server_list'.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>server_list</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a GoadServerList structure.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN442"
></A
><H3
><A
NAME="GOAD-SERVER-ACTIVATE"
></A
>goad_server_activate ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> goad_server_activate           (<A
HREF="gnorba-goad.html#GOADSERVER"
>GoadServer</A
> *sinfo,
                                             <A
HREF="gnorba-goad.html#GOADACTIVATIONFLAGS"
>GoadActivationFlags</A
> flags,
                                             const char **params);</PRE
></TD
></TR
></TABLE
><P
>Activates a CORBA server specified by 'sinfo', using the 'flags'
hints on how to activate that server.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>sinfo</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> information on the server to be "activated"</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>flags</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> information on how the application wants the server to be activated.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>params</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> Pass NULL here for normal applications.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>a CORBA_Object that points to this server, or CORBA_OBJECT_NIL
if the activation failed.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN472"
></A
><H3
><A
NAME="GOAD-SERVER-ACTIVATE-WITH-REPO-ID"
></A
>goad_server_activate_with_repo_id ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> goad_server_activate_with_repo_id
                                            (<A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
> *server_list,
                                             const char *repo_id,
                                             <A
HREF="gnorba-goad.html#GOADACTIVATIONFLAGS"
>GoadActivationFlags</A
> flags,
                                             const char **params);</PRE
></TD
></TR
></TABLE
><P
>Activates a CORBA server specified by 'repo_id', using the 'flags'
hints on how to activate that server.  Picks the first one on the
list that meets criteria.</P
><P
>This is done by possibly making three passes through the list, the
first pass checking for existing objects only, the second pass
taking into account any activation method preferences, and the last
pass just doing "best we can get" service.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>server_list</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a server listing returned by goad_server_list_get.
If NULL, we will call the function ourself and use that.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>repo_id</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the repository ID of the interface that we want to activate a server for.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>flags</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> information on how the application wants the server to be activated.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>params</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> NULL for normal applications.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the activated object.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN507"
></A
><H3
><A
NAME="GOAD-SERVER-ACTIVATE-WITH-ID"
></A
>goad_server_activate_with_id ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><GTKDOCLINK
HREF="CORBA-OBJECT"
>CORBA_Object</GTKDOCLINK
> goad_server_activate_with_id   (<A
HREF="gnorba-goad.html#GOADSERVERLIST"
>GoadServerList</A
> *server_list,
                                             const char *server_id,
                                             <A
HREF="gnorba-goad.html#GOADACTIVATIONFLAGS"
>GoadActivationFlags</A
> flags,
                                             const char **params);</PRE
></TD
></TR
></TABLE
><P
>Activates a CORBA server specified by 'repo_id', using
the 'flags' hints on how to activate that server.
Picks the first one on the list that matches.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>server_list</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> a server listing returned by goad_server_list_get.
If NULL, we will call that function ourself and use that.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>server_id</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> the GOAD ID of the server that we want to activate.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>flags</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> information on how the application wants the server to be activated.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>params</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
> NULL for now.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the newly activated object.</TD
></TR
></TABLE
><P
></P
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><BR
CLEAR="all"><BR><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="gnorba-gnorba.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="index.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
>&nbsp;</TD
></TR
><TR
><TD
COLSPAN="2"
ALIGN="left"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>gnorba</B
></FONT
></TD
><TD
COLSPAN="2"
ALIGN="right"
>&nbsp;</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>