RTBKit  0.9
Open-source framework to create real-time ad bidding systems.
soa/logger/flume_types.cpp
00001 
00006 #include "flume_types.h"
00007 
00008 
00009 
00010 int _kPriorityValues[] = {
00011   Priority::FATAL,
00012   Priority::ERROR,
00013   Priority::WARN,
00014   Priority::INFO,
00015   Priority::DEBUG,
00016   Priority::TRACE
00017 };
00018 const char* _kPriorityNames[] = {
00019   "FATAL",
00020   "ERROR",
00021   "WARN",
00022   "INFO",
00023   "DEBUG",
00024   "TRACE"
00025 };
00026 const std::map<int, const char*> _Priority_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(6, _kPriorityValues, _kPriorityNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
00027 
00028 int _kEventStatusValues[] = {
00029   EventStatus::ACK,
00030   EventStatus::COMMITED,
00031   EventStatus::ERR
00032 };
00033 const char* _kEventStatusNames[] = {
00034   "ACK",
00035   "COMMITED",
00036   "ERR"
00037 };
00038 const std::map<int, const char*> _EventStatus_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(3, _kEventStatusValues, _kEventStatusNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
00039 
00040 const char* ThriftFlumeEvent::ascii_fingerprint = "BC13FFB3246A0179557F7F60C181A557";
00041 const uint8_t ThriftFlumeEvent::binary_fingerprint[16] = {0xBC,0x13,0xFF,0xB3,0x24,0x6A,0x01,0x79,0x55,0x7F,0x7F,0x60,0xC1,0x81,0xA5,0x57};
00042 
00043 uint32_t ThriftFlumeEvent::read(::apache::thrift::protocol::TProtocol* iprot) {
00044 
00045   uint32_t xfer = 0;
00046   std::string fname;
00047   ::apache::thrift::protocol::TType ftype;
00048   int16_t fid;
00049 
00050   xfer += iprot->readStructBegin(fname);
00051 
00052   using ::apache::thrift::protocol::TProtocolException;
00053 
00054 
00055   while (true)
00056   {
00057     xfer += iprot->readFieldBegin(fname, ftype, fid);
00058     if (ftype == ::apache::thrift::protocol::T_STOP) {
00059       break;
00060     }
00061     switch (fid)
00062     {
00063       case 1:
00064         if (ftype == ::apache::thrift::protocol::T_I64) {
00065           xfer += iprot->readI64(this->timestamp);
00066           this->__isset.timestamp = true;
00067         } else {
00068           xfer += iprot->skip(ftype);
00069         }
00070         break;
00071       case 2:
00072         if (ftype == ::apache::thrift::protocol::T_I32) {
00073           int32_t ecast0;
00074           xfer += iprot->readI32(ecast0);
00075           this->priority = (Priority::type)ecast0;
00076           this->__isset.priority = true;
00077         } else {
00078           xfer += iprot->skip(ftype);
00079         }
00080         break;
00081       case 3:
00082         if (ftype == ::apache::thrift::protocol::T_STRING) {
00083           xfer += iprot->readBinary(this->body);
00084           this->__isset.body = true;
00085         } else {
00086           xfer += iprot->skip(ftype);
00087         }
00088         break;
00089       case 4:
00090         if (ftype == ::apache::thrift::protocol::T_I64) {
00091           xfer += iprot->readI64(this->nanos);
00092           this->__isset.nanos = true;
00093         } else {
00094           xfer += iprot->skip(ftype);
00095         }
00096         break;
00097       case 5:
00098         if (ftype == ::apache::thrift::protocol::T_STRING) {
00099           xfer += iprot->readString(this->host);
00100           this->__isset.host = true;
00101         } else {
00102           xfer += iprot->skip(ftype);
00103         }
00104         break;
00105       case 6:
00106         if (ftype == ::apache::thrift::protocol::T_MAP) {
00107           {
00108             this->fields.clear();
00109             uint32_t _size1;
00110             ::apache::thrift::protocol::TType _ktype2;
00111             ::apache::thrift::protocol::TType _vtype3;
00112             iprot->readMapBegin(_ktype2, _vtype3, _size1);
00113             uint32_t _i5;
00114             for (_i5 = 0; _i5 < _size1; ++_i5)
00115             {
00116               std::string _key6;
00117               xfer += iprot->readString(_key6);
00118               std::string& _val7 = this->fields[_key6];
00119               xfer += iprot->readBinary(_val7);
00120             }
00121             iprot->readMapEnd();
00122           }
00123           this->__isset.fields = true;
00124         } else {
00125           xfer += iprot->skip(ftype);
00126         }
00127         break;
00128       default:
00129         xfer += iprot->skip(ftype);
00130         break;
00131     }
00132     xfer += iprot->readFieldEnd();
00133   }
00134 
00135   xfer += iprot->readStructEnd();
00136 
00137   return xfer;
00138 }
00139 
00140 uint32_t ThriftFlumeEvent::write(::apache::thrift::protocol::TProtocol* oprot) const {
00141   uint32_t xfer = 0;
00142   xfer += oprot->writeStructBegin("ThriftFlumeEvent");
00143   xfer += oprot->writeFieldBegin("timestamp", ::apache::thrift::protocol::T_I64, 1);
00144   xfer += oprot->writeI64(this->timestamp);
00145   xfer += oprot->writeFieldEnd();
00146   xfer += oprot->writeFieldBegin("priority", ::apache::thrift::protocol::T_I32, 2);
00147   xfer += oprot->writeI32((int32_t)this->priority);
00148   xfer += oprot->writeFieldEnd();
00149   xfer += oprot->writeFieldBegin("body", ::apache::thrift::protocol::T_STRING, 3);
00150   xfer += oprot->writeBinary(this->body);
00151   xfer += oprot->writeFieldEnd();
00152   xfer += oprot->writeFieldBegin("nanos", ::apache::thrift::protocol::T_I64, 4);
00153   xfer += oprot->writeI64(this->nanos);
00154   xfer += oprot->writeFieldEnd();
00155   xfer += oprot->writeFieldBegin("host", ::apache::thrift::protocol::T_STRING, 5);
00156   xfer += oprot->writeString(this->host);
00157   xfer += oprot->writeFieldEnd();
00158   xfer += oprot->writeFieldBegin("fields", ::apache::thrift::protocol::T_MAP, 6);
00159   {
00160     xfer += oprot->writeMapBegin(::apache::thrift::protocol::T_STRING, ::apache::thrift::protocol::T_STRING, this->fields.size());
00161     std::map<std::string, std::string> ::const_iterator _iter8;
00162     for (_iter8 = this->fields.begin(); _iter8 != this->fields.end(); ++_iter8)
00163     {
00164       xfer += oprot->writeString(_iter8->first);
00165       xfer += oprot->writeBinary(_iter8->second);
00166     }
00167     xfer += oprot->writeMapEnd();
00168   }
00169   xfer += oprot->writeFieldEnd();
00170   xfer += oprot->writeFieldStop();
00171   xfer += oprot->writeStructEnd();
00172   return xfer;
00173 }
00174 
00175 
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator