`
liugaojian13135
  • 浏览: 24697 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
文章分类
社区版块
存档分类
最新评论

ruby 调用ICE接口

阅读更多
require 'rubygems' require 'Ice' require 'rexml/document' $KCODE = "e" module Com module Huawei module Testtools module Exchange if not defined?(::Com::Huawei::Testtools::Exchange::CallInterface_mixin) module CallInterface_mixin include ::Ice::Object_mixin def ice_ids(current=nil) ['::Ice::Object', '::com::huawei::testtools::exchange::callInterface'] end def ice_id(current=nil) '::com::huawei::testtools::exchange::callInterface' end # # Operation signatures. # # def remoteCall(request, current=nil) def inspect ::Ice::__stringify(self, T_CallInterface) end end class CallInterface include CallInterface_mixin def CallInterface.ice_staticId() '::com::huawei::testtools::exchange::callInterface' end end module CallInterfacePrx_mixin def remoteCall(request, _ctx=nil) CallInterface_mixin::OP_remoteCall.invoke(self, [request], _ctx) end end class CallInterfacePrx '', 'service' => 'TICC'}) cmd_node = root.add_element('cmd', {'function' => 'createExecuteTask'}) cmd_node.add_element('para', {'name' => 'tasId'}).add_element('value') req = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + doc.to_s resXml = proxy.remoteCall(req).to_s starttask(proxy, ticcip) rescue Ice::EndpointParseException => e puts 'ticc ip parse error, ' + e.message rescue Ice::ConnectionRefusedException => e puts 'error, ticc connect failed, ' + e.message rescue Exception => e puts 'error: ' + e.message end end
分享到:
评论

相关推荐

    ice最简单实现 ruby调用ice接口 - Ruby - language - ITeye论坛

    标题中的“ice最简单实现 ruby调用ice接口”是指在Ruby编程语言中使用ICE(Internet Communication Engine)框架来实现远程方法调用(RPC)。ICE是由ZeroC开发的一种跨平台、高性能的中间件,它允许不同语言的应用...

    ice同步调用和异步调用实例代码

    Ice 是一种针对客户端和服务器进行通信的面向对象的中间件平台。Ice 为构建面向对象的客户-服务器应用提供了工具、API 和库支持。客户和服务器通信双方可以用不同的编程...本代码为ice同步调用和异步调用实例代码。

    ZeroC Ice 3.7 手册

    Ice通过与编程语言无关的中立语言Slice(Specification Language fro Ice)来描述服务的接口,从而达到对象接口与其实现想分离的目的。 目前Ice平台支持客户端API的语言有C++、.NET、Java、Python、Object-C、...

    elcipse ICE 环境搭建

    Slice是为ICE量身定制的接口描述语言,用来定义ICE接口和服务。它独立于具体编程语言,能够将接口描述转换成不同的编程语言实现,从而支持从ICE到C++、Java、Python、C#、Ruby、PHP等多种语言的映射。这样,开发者...

    ZeroC ICE原理图

    ICE不仅支持主流的操作系统如Windows和Linux,还兼容多种编程语言,包括但不限于C++、Java、C#、Python、Ruby、PHP以及ActionScript等。 #### 二、ICE的主要组件与功能 ##### 2.1 Ice Ice是ICE平台的核心组件,它...

    Ice-3.7.1.rar

     Ice通过与编程语言无关的中立语言Slice(Specification Language fro Ice)来描述服务的接口,从而达到对象接口与其实现想分离的目的。  目前Ice平台支持客户端API的语言有C++、.NET、Java、Python、Object-C、...

    Ice-3.1.1.pdf

    4. **接口定义语言(Slice)**:Ice使用的IDL(Interface Definition Language),用于描述对象接口,以及类型和异常等。 #### 四、Ice框架的核心组件 - **Ice运行时**:负责处理网络通信、序列化和反序列化等工作。...

    Ice3.6.0 手册

    - **使用C#、Java、JavaScript、Objective-C、PHP、Python、Ruby和Visual Basic编写Ice应用**:同样地,也为其他几种语言提供了创建简单Ice应用的指南。 ### Slice语言详解 - **Slice编译**:介绍如何将Slice源...

    Ice-3.4.2-rhel5-i386-rpm.tar.gz

    9. "ice-ruby-3.4.2-1.rhel5.i386.rpm":Ruby绑定,使Ruby开发者能够利用Ice。 综上所述,Ice 3.4.2是一个跨平台的中间件,提供了一种分布式计算的解决方案,支持多种编程语言,包括C++、Java和Ruby。它依赖于较新...

    ruby语法

    这篇博文链接(&lt;https://ice-cream.iteye.com/blog/512580&gt;)可能详细解释了Ruby的基本语法和特性,但由于没有实际内容,我将根据常见的Ruby语法知识进行阐述。 1. **变量**: Ruby有四种类型的变量:局部变量(`...

    Ice的安装步骤和运行demo

    在配置好Eclipse和ICE环境后,可以开始编写和运行Java调用ICE的例子程序。首先,需要使用Slice2Java插件将ICE的Slice文件转换成Java代码。接下来,创建一个Eclipse项目,导入生成的Java类,编写客户端和服务端代码,...

    用ICE开发分布式程序.txt

    ICE采用了一种称为Slice的语言来定义接口和服务,这是一种特定于ICE的接口描述语言,用于描述服务端提供的接口及其调用方法。Slice语言简洁且易于理解,它支持基本的数据类型、枚举、结构体、类等,并能自动生成对应...

    Ice通信框架的基础结构

    2. **同步与异步通信**:Ice允许同步和异步的消息传递,提供了同步操作调用和异步操作分派。此外,还支持发布-订阅消息传递机制,增强了系统的灵活性和扩展性。 3. **硬件和操作系统无关性**:Ice的客户端和服务器...

    配网自动化主站中ICE的应用 (1).pdf

    在分布式系统中,服务注册功能允许服务的消费者能够发现可用的服务提供者,从而实现服务之间的动态绑定和调用。 在配电自动化主站系统中,还涉及到实时数据处理和控制算法。例如,PID(比例-积分-微分)控制算法在...

    钩子:带有Ruby回调的通用钩子

    另外,调用钩子时,可以将其他参数传递给回调函数。 例子 让我们...一只猫。 require 'hooks' class Cat include Hooks define_hooks :before_dinner , :after_dinner 现在,您可以在类中以声明方式将回调添加...

    docs_icecream:drdavisicecream.com的源代码

    9. **API集成**: 如果网站与第三方服务(如支付网关、社交媒体或天气API)集成,源代码中将包含API调用的相关部分。 10. **测试和调试**: 开发过程中,开发者可能使用了测试框架(如Jest或Mocha)和调试工具(如...

Global site tag (gtag.js) - Google Analytics