dslinux/user/bitchx/dll/europa/corba/orbit ai-client.c europa-common.c europa-skels.c europa-stubs.c europa.h
stsp
stsp at user.in-berlin.de
Sun Jul 2 15:18:35 CEST 2006
Update of /cvsroot/dslinux/dslinux/user/bitchx/dll/europa/corba/orbit
In directory antilope:/tmp/cvs-serv9280/dll/europa/corba/orbit
Added Files:
ai-client.c europa-common.c europa-skels.c europa-stubs.c
europa.h
Log Message:
Adding pristine copy of BitchX so I can branch from it.
--- NEW FILE: europa.h ---
/*
* This file was generated by orbit-idl - DO NOT EDIT!
*/
#include <glib.h>
#define ORBIT_IDL_SERIAL 9
#include <orb/orbit.h>
#ifndef europa_H
#define europa_H 1
#ifdef __cplusplus
extern "C"
{
#endif /* __cplusplus */
/** typedefs **/
#if !defined(ORBIT_DECL_EuropaAI_Europa) && !defined(_EuropaAI_Europa_defined)
#define ORBIT_DECL_EuropaAI_Europa 1
#define _EuropaAI_Europa_defined 1
#define EuropaAI_Europa__free CORBA_Object__free
typedef CORBA_Object EuropaAI_Europa;
extern CORBA_unsigned_long EuropaAI_Europa__classid;
#endif
/** POA structures **/
typedef struct
{
void *_private;
void (*inputChat) (PortableServer_Servant _servant, CORBA_char * text,
CORBA_Environment * ev);
}
POA_EuropaAI_Europa__epv;
typedef struct
{
PortableServer_ServantBase__epv *_base_epv;
POA_EuropaAI_Europa__epv *EuropaAI_Europa_epv;
}
POA_EuropaAI_Europa__vepv;
typedef struct
{
void *_private;
POA_EuropaAI_Europa__vepv *vepv;
}
POA_EuropaAI_Europa;
extern void POA_EuropaAI_Europa__init(PortableServer_Servant servant,
CORBA_Environment * ev);
extern void POA_EuropaAI_Europa__fini(PortableServer_Servant servant,
CORBA_Environment * ev);
/** prototypes **/
void EuropaAI_Europa_inputChat(EuropaAI_Europa _obj, CORBA_char * text,
CORBA_Environment * ev);
void _ORBIT_skel_EuropaAI_Europa_inputChat(POA_EuropaAI_Europa *
_ORBIT_servant,
GIOPRecvBuffer *
_ORBIT_recv_buffer,
CORBA_Environment * ev,
void (*_impl_inputChat)
(PortableServer_Servant
_servant, CORBA_char * text,
CORBA_Environment * ev));
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif
#undef ORBIT_IDL_SERIAL
--- NEW FILE: europa-common.c ---
/*
* This file was generated by orbit-idl - DO NOT EDIT!
*/
#include <string.h>
#include "europa.h"
#if (TC_IMPL_TC_EuropaAI_Europa == ORBIT_FILE_ID_europa) && !defined(TC_DEF_TC_EuropaAI_Europa)
#define TC_DEF_TC_EuropaAI_Europa 1
const struct CORBA_TypeCode_struct TC_EuropaAI_Europa_struct = {
{{(ORBit_RootObject_Interface *) & ORBit_TypeCode_epv, TRUE, -1},
ORBIT_PSEUDO_TYPECODE},
CORBA_tk_objref, "Europa", "IDL:EuropaAI/Europa:1.0",
0, 0,
NULL,
NULL,
NULL,
CORBA_OBJECT_NIL, 0, -1, 0, 0
};
#endif
CORBA_unsigned_long EuropaAI_Europa__classid = 0;
--- NEW FILE: ai-client.c ---
#include <stdio.h>
#include <orb/orbit.h>
#include "europa.h"
EuropaAI_Europa ai_client;
int main(int argc, char *argv[]) {
CORBA_Environment ev;
CORBA_ORB orb;
FILE *ifp;
char *ior;
char filebuffer[1024];
/*
* Standard initalisation of the orb. Notice that
* ORB_init 'eats' stuff off the command line
*/
CORBA_exception_init(&ev);
orb = CORBA_ORB_init(&argc, argv, "orbit-local-orb", &ev);
/*
* Get the IOR (object reference). It should be written out
* by the echo-server into the file echo.ior. So - if you
* are running the server in the same place as the client,
* this should be fine!
*/
ifp = fopen("ai.ior","r");
if( ifp == NULL ) {
g_error("No ai.ior file!");
exit(-1);
}
fgets(filebuffer,1024,ifp);
ior = g_strdup(filebuffer);
fclose(ifp);
/*
* Actually get the object. So easy!
*/
ai_client = CORBA_ORB_string_to_object(orb, ior, &ev);
if(!ai_client) {
printf("Cannot bind to %s\n", ior);
return 1;
}
/*
* Ok. Now we use the echo object...
*/
printf("Type messages to the server\n. as the only thing on the line stops\n
");
while( fgets(filebuffer,1024,stdin) ) {
if( filebuffer[0] == '.' && filebuffer[1] == '\n' )
break;
/* chop the newline off */
filebuffer[strlen(filebuffer)-1] = '\0';
/* using the echoString method in the Echo object */
/* this is defined in the echo.h header, compiled from echo.idl */
EuropaAI_Europa_inputChat(ai_client, filebuffer, &ev);
/* catch any exceptions (eg, network is down) */
if(ev._major != CORBA_NO_EXCEPTION) {
printf("we got exception %d from inputChat!\n", ev._major);
return 1;
}
}
/* Clean up */
CORBA_Object_release(ai_client, &ev);
CORBA_Object_release((CORBA_Object)orb, &ev);
return 0;
}
--- NEW FILE: europa-stubs.c ---
/*
* This file was generated by orbit-idl - DO NOT EDIT!
*/
#include <string.h>
#include "europa.h"
void
EuropaAI_Europa_inputChat(EuropaAI_Europa _obj, CORBA_char * text,
CORBA_Environment * ev)
{
register GIOP_unsigned_long _ORBIT_request_id,
_ORBIT_system_exception_minor;
register CORBA_completion_status _ORBIT_completion_status;
register GIOPSendBuffer *_ORBIT_send_buffer;
register GIOPRecvBuffer *_ORBIT_recv_buffer;
register GIOPConnection *_cnx;
if (_obj->servant && _obj->vepv && EuropaAI_Europa__classid) {
((POA_EuropaAI_Europa__epv *) _obj->vepv[EuropaAI_Europa__classid])->
inputChat(_obj->servant, text, ev);
return;
}
_cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
_ORBIT_send_buffer = NULL;
_ORBIT_recv_buffer = NULL;
_ORBIT_completion_status = CORBA_COMPLETED_NO;
_ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
{ /* marshalling */
static const struct
{
CORBA_unsigned_long len;
char opname[10];
}
_ORBIT_operation_name_data =
{
10, "inputChat"};
static const struct iovec _ORBIT_operation_vec =
{ (gpointer) & _ORBIT_operation_name_data, 14 };
register CORBA_unsigned_long _ORBIT_tmpvar_0;
CORBA_unsigned_long _ORBIT_tmpvar_1;
_ORBIT_send_buffer =
giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id,
CORBA_TRUE,
&(_obj->active_profile->object_key_vec),
&_ORBIT_operation_vec,
&ORBit_default_principal_iovec);
_ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
if (!_ORBIT_send_buffer)
goto _ORBIT_system_exception;
_ORBIT_tmpvar_1 = strlen(text) + 1;
giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER
(_ORBIT_send_buffer), 4);
{
guchar *_ORBIT_t;
_ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER
(_ORBIT_send_buffer), (_ORBIT_t),
sizeof(_ORBIT_tmpvar_1));
}
giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer),
(text),
sizeof(text[_ORBIT_tmpvar_0]) *
_ORBIT_tmpvar_1);
giop_send_buffer_write(_ORBIT_send_buffer);
_ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
giop_send_buffer_unuse(_ORBIT_send_buffer);
_ORBIT_send_buffer = NULL;
}
{ /* demarshalling */
register guchar *_ORBIT_curptr;
_ORBIT_recv_buffer =
giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
if (!_ORBIT_recv_buffer)
goto _ORBIT_system_exception;
_ORBIT_completion_status = CORBA_COMPLETED_YES;
if (_ORBIT_recv_buffer->message.u.reply.reply_status !=
GIOP_NO_EXCEPTION) goto _ORBIT_msg_exception;
_ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
} else {
}
giop_recv_buffer_unuse(_ORBIT_recv_buffer);
return;
_ORBIT_system_exception:
CORBA_exception_set_system(ev, _ORBIT_system_exception_minor,
_ORBIT_completion_status);
giop_recv_buffer_unuse(_ORBIT_recv_buffer);
giop_send_buffer_unuse(_ORBIT_send_buffer);
return;
_ORBIT_msg_exception:
if (_ORBIT_recv_buffer->message.u.reply.reply_status ==
GIOP_LOCATION_FORWARD) {
if (_obj->forward_locations != NULL)
ORBit_delete_profiles(_obj->forward_locations);
_obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
_cnx = ORBit_object_get_forwarded_connection(_obj);
giop_recv_buffer_unuse(_ORBIT_recv_buffer);
goto _ORBIT_retry_request;
} else {
ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
giop_recv_buffer_unuse(_ORBIT_recv_buffer);
return;
}
}
}
--- NEW FILE: europa-skels.c ---
/*
* This file was generated by orbit-idl - DO NOT EDIT!
*/
#include <string.h>
#include "europa.h"
void
_ORBIT_skel_EuropaAI_Europa_inputChat(POA_EuropaAI_Europa * _ORBIT_servant,
GIOPRecvBuffer * _ORBIT_recv_buffer,
CORBA_Environment * ev,
void (*_impl_inputChat)
(PortableServer_Servant _servant,
CORBA_char * text,
CORBA_Environment * ev))
{
CORBA_char *text;
{ /* demarshalling */
guchar *_ORBIT_curptr;
register CORBA_unsigned_long _ORBIT_tmpvar_2;
CORBA_unsigned_long _ORBIT_tmpvar_3;
_ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
_ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
_ORBIT_tmpvar_3 =
(CORBA_unsigned_long)
GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
_ORBIT_curptr += 4;
text = (void *) _ORBIT_curptr;
_ORBIT_curptr += sizeof(text[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
} else {
_ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
_ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
_ORBIT_curptr += 4;
text = (void *) _ORBIT_curptr;
_ORBIT_curptr += sizeof(text[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
}
}
_impl_inputChat(_ORBIT_servant, text, ev);
{ /* marshalling */
register GIOPSendBuffer *_ORBIT_send_buffer;
_ORBIT_send_buffer =
giop_send_reply_buffer_use(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->
connection, NULL,
_ORBIT_recv_buffer->message.u.request.
request_id, ev->_major);
if (ev->_major == CORBA_NO_EXCEPTION) {
} else
ORBit_send_system_exception(_ORBIT_send_buffer, ev);
giop_send_buffer_write(_ORBIT_send_buffer);
giop_send_buffer_unuse(_ORBIT_send_buffer);
}
}
static ORBitSkeleton
get_skel_EuropaAI_Europa(POA_EuropaAI_Europa * servant,
GIOPRecvBuffer * _ORBIT_recv_buffer, gpointer * impl)
{
gchar *opname = _ORBIT_recv_buffer->message.u.request.operation;
switch (opname[0]) {
case 'i':
if (strcmp((opname + 1), "nputChat"))
break;
*impl = (gpointer) servant->vepv->EuropaAI_Europa_epv->inputChat;
return (ORBitSkeleton) _ORBIT_skel_EuropaAI_Europa_inputChat;
break;
default:
break;
}
return NULL;
}
static void
init_local_objref_EuropaAI_Europa(CORBA_Object obj,
POA_EuropaAI_Europa * servant)
{
obj->vepv[EuropaAI_Europa__classid] = servant->vepv->EuropaAI_Europa_epv;
}
void
POA_EuropaAI_Europa__init(PortableServer_Servant servant,
CORBA_Environment * env)
{
static const PortableServer_ClassInfo class_info =
{ (ORBit_impl_finder) & get_skel_EuropaAI_Europa,
"IDL:EuropaAI/Europa:1.0",
(ORBit_local_objref_init) & init_local_objref_EuropaAI_Europa };
PortableServer_ServantBase__init(((PortableServer_ServantBase *) servant),
env);
ORBIT_OBJECT_KEY(((PortableServer_ServantBase *) servant)->_private)->
class_info = (PortableServer_ClassInfo *) & class_info;
if (!EuropaAI_Europa__classid)
EuropaAI_Europa__classid = ORBit_register_class(&class_info);
}
void
POA_EuropaAI_Europa__fini(PortableServer_Servant servant,
CORBA_Environment * env)
{
PortableServer_ServantBase__fini(servant, env);
}
More information about the dslinux-commit
mailing list