protobuf GetExtension

get extention values from  proto file

  value, err := proto.GetExtension(imp, openrtb.E_Imp)
  if err != nil {
          logger.Info("E_imp get err ")
  }
  impExt := value.(*openrtb.ImpExt)
  if len(impExt.GetBillingId()) > 0 {
          info.billing_id = fmt.Sprint(impExt.GetBillingId()[0])
  }
时间: 2024-10-29 03:54:21

protobuf GetExtension的相关文章

基于protobuf的RPC实现

可以对照使用google protobuf RPC实现echo service一文看,细节本文不再描述. google protobuf只负责消息的打包和解包,并不包含RPC的实现,但其包含了RPC的定义.假设有下面的RPC定义: service MyService { rpc Echo(EchoReqMsg) returns(EchoRespMsg) } 那么要实现这个RPC需要最少做哪些事?总结起来需要完成以下几步: 客户端 RPC客户端需要实现google::protobuf::RpcCh

netty+protobuf

一直想在项目中用上protobuf,但是2个游戏做上了确一直没用上,最近刚好比较空闲,整一个例子玩玩. 1.准备:netty3.5.2 ,protobuf2.5.0   pom.xml如下: <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> <version>2.5.0</version> &

Protobuf语言指南

Protobuf语言指南 l  定义一个消息(message)类型 l  标量值类型 l  Optional 的字段及默认值 l  枚举 l  使用其他消息类型 l  嵌套类型 l  更新一个消息类型 l  扩展 l  包(package) l  定义服务(service) l  选项(option) l  生成访问类 本指南描述了怎样使用protocolbuffer语言来构造你的protocol buffer数据,包括.proto文件语法以及怎样生成.proto文件的数据访问类. 本文是一个参

protobuf extensions(extend)的消息定义及Java使用方法

在定义protobuf消息时,有时候需要用到extensions来对原有的消息类型进行扩展,有利于消息定义的重复使用. 1.下面写一个最简单的例子,定义一个message BaseData,并对其进行扩展: Example.proto: // 定义一个message BaseData,100~199之间的tag可供扩展 message BaseData { required int32 code = 1; extensions 100 to 199; } // 扩展BaseData,加上一个ex

Google Protobuf扩展字段使用

背景说明 Google Protobuf中不支持数据结构的派生关系,因此,如果在存在派生体系的对象中定义数据结构时,通过组合方式对数据结构进行组合,则需要对基类对象提供的通用接口进行重载或在外部进行动态转型才能达到获取或设置数据的目的. 因此考虑使用Google Protobuf提供的extension扩展机制解决数据结构之间的不能派生的问题,以此来达到减少重复工作量和便于维护代码的目的. 使用说明 定义公共数据类型 描述: 此数据类型为对象派生体系同基类提供的公共数据类型 示例: 1 // 公

Protobuf 语法指南

英文: Proto Buffers Language Guide 本指南描述了怎样使用protocol buffer 语法来构造你的protocol buffer数据,包括.proto文件语法以及怎样生成.proto文件的数据访问类.(本文只针对proto2的语法) 本文是一个参考指南--如果要查看如何使用本文中描述的多个特性的循序渐进的例子,请在http://code.google.com/intl/zh-CN/apis/protocolbuffers/docs/tutorials.html中

python通过protobuf实现rpc

由于项目组现在用的rpc是基于google protobuf rpc协议实现的,所以花了点时间了解下protobuf rpc.rpc对于做分布式系统的人来说肯定不陌生,对于rpc不了解的童鞋可以自行google,这里只是做个简单的介绍.rpc的主要功能是让分布式系统的实现更为简单,为提供强大的远程调用而不损失本地调用语义的简洁性.为了实现这个目标,rpc框架需要提供一种透明调用机制让使用者不必显示区分本地调用还是远程调用.rpc架构涉及的组件如下: 客户方像调用本地方法一样去调用远程接口方法,R

Centos6.4下安装protobuf及简单使用

1.protobuf是google公司提出的数据存储格式,详细介绍可以参考:https://code.google.com/p/protobuf/ 2.下载最新的protobuf,下载地址:https://code.google.com/p/protobuf/downloads/list 3.下载protobuf2.5.o版本,protobuf-2.5.0.tar.gz解压并进行安装. 解压:tar xvf protobuf-2.5.0.tar.gz 安装步骤:(1)./configure (2

Windows下编译protobuf v3.3.0

一:概述 关于 protobuf 在此不再多说,此处记录下成功编译步骤以备日后查阅.注意:本文并不是使用cmake gui进行编译的,如果熟悉cmake gui的话,也可以使用gui进行生成编译. 二:准备资源及工具 VS2013或以上版本,安装好 protobuf 源码,下载地址:官网:http://code.google.com/p/protobuf/git网:https://github.com/google/protobuf或git:https://github.com/google/p