CORBA-omniORB
view release on metacpan or search on metacpan
const char *name);
CORBA::AttributeDescription *find_attribute (pTHX_
CORBA::InterfaceDef::FullInterfaceDescription *d,
const char *name,
bool set);
CORBA::NVList_ptr build_args (pTHX_
const char *name,
int &return_items,
CORBA::TypeCode *&return_type,
int &inout_items,
CORBA::ExcDescriptionSeq *&exceptions);
PerlInterpreter* thx; //! Perl context
SV *perlobj;
CORBA::InterfaceDef::FullInterfaceDescription *desc;
};
// Specialized skeleton classes for the POA
class POmniAdapterActivator : public POA_PortableServer::AdapterActivator {
public:
POmniAdapterActivator (SV *_perlobj) {
thx = (PerlInterpreter*)PERL_GET_THX;
perlobj = SvRV(_perlobj);
}
CORBA::Boolean unknown_adapter (PortableServer::POA_ptr parent,
const char * name);
private:
PerlInterpreter* thx; //! Perl context
SV *perlobj;
};
class POmniServantActivator : public virtual POA_PortableServer::ServantActivator {
public:
POmniServantActivator(SV *_perlobj);
PortableServer::Servant incarnate (const PortableServer::ObjectId& oid,
PortableServer::POA_ptr adapter);
void etherealize (const PortableServer::ObjectId& oid,
PortableServer::POA_ptr adapter,
PortableServer::Servant serv,
CORBA::Boolean cleanup_in_progress,
CORBA::Boolean remaining_activations);
private:
virtual ~POmniServantActivator (); // allocate in heap only
PerlInterpreter* thx; //! Perl context
SV *perlobj;
};
class POmniServantLocator : public POA_PortableServer::ServantLocator {
public:
POmniServantLocator (SV *_perlobj) {
thx = (PerlInterpreter*)PERL_GET_THX;
perlobj = SvRV(_perlobj);
}
PortableServer::Servant preinvoke (const PortableServer::ObjectId& oid,
PortableServer::POA_ptr adapter,
const char * operation,
PortableServer::ServantLocator::Cookie &the_cookie);
void postinvoke (const PortableServer::ObjectId& oid,
PortableServer::POA_ptr adapter,
const char * operation,
PortableServer::ServantLocator::Cookie the_cookie,
PortableServer::Servant serv);
private:
PerlInterpreter* thx; //! Perl context
SV *perlobj;
};
// Information attached to a Perl servant via PERL_MAGIC_ext magic
struct POmniInstVars
{
U32 magic; // 0x18981972
PortableServer::Servant servant;
};
#endif /* __SERVER_H__ */
( run in 0.647 second using v1.01-cache-2.11-cpan-0bb4e1dffa6 )