ICE的插件使用

原创 2012年03月30日 22:55:21
1、实现插件接口
   local interface Plugin 
   {
       void initialize();
       void destroy();
   };
   
   extern "C"
   {
       ICE_DECLSPEC_EXPORT Ice::Plugin*
       functionName(const Ice::CommunicatorPtr& communicator,const std::string& name,const Ice::StringSeq& args);
   }
2、编译文件生成动态库libmyplugin.so
3、在配置文件中配置属性:
   Ice.Plugin.MyPlugin=myplugin:functionName
4、如果在配置文件中加载了多个插件,并且多个插件间有顺序依赖关系,可以通过配置属性来解决:
   Ice.PluginLoadOrder=MyPlugin1 MyPlugin2
5、在应用中可以通过communicator提供的相关接口获取到已经加载插件:
   PluginManager Communicator::getPluginManager();
   
   local interface PluginManager 
   {
       void initializePlugins();
       Plugin getPlugin(string name);
       void addPlugin(string name, Plugin pi);
   };
6、可以通过设置“Ice.InitPlugins=0”属性来让ICE延迟加载插件   

相关文章推荐

Ice插件开发

ICE插件开发都要从Ice::Plugin继承,实现initialize()和destroy()两个接口,如ICEloggerPlugin的实现: Class  ICE_API  LoggerPlu...

ICE的输入流和输出流

1、ICE提供流式接口InputStream来进行对象的解码操作,通过如下方法构造一个输入流对象:    InputStreamPtr createInputStream(const Ice::Co...

ZeroC ICE3.6b编译安装

ICE是一套很强大的RPC框架,具体feature这里不表,本短文只是作为安装最新版ICE3.6b的笔记,记录安装过程的信息。 安装平台:Linux centos6-4-dev 2.6.32-504....
  • guanlq
  • guanlq
  • 2015年01月27日 11:13
  • 1647

ICE插件,适用于myeclipse10.7

  • 2016年12月05日 14:03
  • 95KB
  • 下载

ICE插件(slice2java eclipse plug-in)的安装及简单示例

一.准备 1.Eclipse 请访问Eclipse官网下载 2.ICE库 请访问http://www.zeroc.com/下载 3.ICE eclipse插件 请访问http://www.zer...

ICE Creature Control 1.3.6 unityAI插件

  • 2017年05月03日 17:04
  • 48B
  • 下载

ICE中间插件

  • 2014年03月17日 15:59
  • 9.42MB
  • 下载

Ice通信中间件的基础使用(一)

最近在学习使用Ice分布式程序设计,现将所学整理如下:         Zeroc Ice是指Zeroc公司的ICE(Internet Communications Engine)中间件平台。对于客户...
  • mada26
  • mada26
  • 2016年03月27日 20:11
  • 232

AVR JTAG ICE 使用说明

  • 2011年06月14日 16:37
  • 3.45MB
  • 下载

multi-ice仿真器使用说明书

  • 2014年05月07日 16:22
  • 1.87MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ICE的插件使用
举报原因:
原因补充:

(最多只允许输入30个字)