rename class variables to snake_case

pull/7594/head
chedeti 9 years ago
parent 00be9de95c
commit 82afcaa009
  1. 94
      include/grpc++/impl/codegen/thrift_serializer.h
  2. 21
      include/grpc++/impl/codegen/thrift_utils.h
  3. 4
      tools/grift/Dockerfile
  4. 2
      tools/grift/README.md
  5. 91
      tools/grift/grpc_plugins_generator.patch

@ -31,12 +31,9 @@
*
*/
#ifndef GRPCXX_IMPL_CODEGEN_THRIFT_SERIALIZER_H
#define GRPCXX_IMPL_CODEGEN_THRIFT_SERIALIZER_H
#ifndef GRPCXX_IMPL_CODEGEN_THRIFT_SERIALIZER_H
#define GRPCXX_IMPL_CODEGEN_THRIFT_SERIALIZER_H
#include <memory>
#include <string>
#include <stdexcept>
#include <grpc/impl/codegen/byte_buffer.h>
#include <grpc/impl/codegen/byte_buffer_reader.h>
#include <grpc/impl/codegen/slice.h>
@ -46,6 +43,10 @@
#include <thrift/protocol/TProtocolException.h>
#include <thrift/transport/TBufferTransports.h>
#include <thrift/transport/TTransportUtils.h>
#include <boost/make_shared.hpp>
#include <memory>
#include <stdexcept>
#include <string>
namespace apache {
namespace thrift {
@ -59,20 +60,22 @@ using apache::thrift::transport::TMemoryBuffer;
using apache::thrift::transport::TBufferBase;
using apache::thrift::transport::TTransport;
template <typename Dummy, typename Protocol> class ThriftSerializer {
public:
template <typename Dummy, typename Protocol>
class ThriftSerializer {
public:
ThriftSerializer()
: prepared_ (false)
, last_deserialized_ (false)
, serialize_version_ (false) {}
: prepared_(false),
last_deserialized_(false),
serialize_version_(false) {}
virtual ~ThriftSerializer() {}
// Serialize the passed type into the internal buffer
// and returns a pointer to internal buffer and its size
template <typename T> void Serialize(const T& fields, const uint8_t** serializedBuffer,
size_t* serializedLen) {
// prepare or reset buffer
template <typename T>
void Serialize(const T& fields, const uint8_t** serialized_buffer,
size_t* serialized_len) {
// prepare or reset buffer
if (!prepared_ || last_deserialized_) {
prepare();
} else {
@ -85,7 +88,7 @@ public:
protocol_->writeMessageBegin("", TMessageType(0), 0);
}
// serilaize fields into buffer
// serialize fields into buffer
fields.write(protocol_.get());
// write the end of message
@ -93,22 +96,23 @@ public:
protocol_->writeMessageEnd();
}
uint8_t* byteBuffer;
uint32_t byteBufferSize;
buffer_->getBuffer(&byteBuffer, &byteBufferSize);
*serializedBuffer = byteBuffer;
*serializedLen = byteBufferSize;
uint8_t* byte_buffer;
uint32_t byte_buffer_size;
buffer_->getBuffer(&byte_buffer, &byte_buffer_size);
*serialized_buffer = byte_buffer;
*serialized_len = byte_buffer_size;
}
// Serialize the passed type into the byte buffer
template <typename T> void Serialize(const T& fields, grpc_byte_buffer** bp) {
template <typename T>
void Serialize(const T& fields, grpc_byte_buffer** bp) {
const uint8_t* byte_buffer;
size_t byte_buffer_size;
const uint8_t* byteBuffer;
size_t byteBufferSize;
Serialize(fields, &byte_buffer, &byte_buffer_size);
Serialize(fields, &byteBuffer, &byteBufferSize);
gpr_slice slice = gpr_slice_from_copied_buffer((char*)byteBuffer,byteBufferSize);
gpr_slice slice =
gpr_slice_from_copied_buffer((char*)byte_buffer, byte_buffer_size);
*bp = grpc_raw_byte_buffer_create(&slice, 1);
@ -117,21 +121,22 @@ public:
// Deserialize the passed char array into the passed type, returns the number
// of bytes that have been consumed from the passed string.
template <typename T> uint32_t Deserialize(const uint8_t* serializedBuffer, size_t length,
T* fields) {
template <typename T>
uint32_t Deserialize(const uint8_t* serialized_buffer, size_t length,
T* fields) {
// prepare buffer if necessary
if (!prepared_) {
prepare();
}
last_deserialized_ = true;
//reset buffer transport
buffer_->resetBuffer((uint8_t*)serializedBuffer, length);
// reset buffer transport
buffer_->resetBuffer((uint8_t*)serialized_buffer, length);
// read the protocol version if necessary
if (serialize_version_) {
std::string name = "";
TMessageType mt = (TMessageType) 0;
TMessageType mt = (TMessageType)0;
int32_t seq_id = 0;
protocol_->readMessageBegin(name, mt, seq_id);
}
@ -147,17 +152,17 @@ public:
return len;
}
// Deserialize the passed byte buffer to passed type, returns the number
// of bytes consumed from byte buffer
template <typename T> uint32_t Deserialize(grpc_byte_buffer* buffer, T* msg) {
template <typename T>
uint32_t Deserialize(grpc_byte_buffer* buffer, T* msg) {
grpc_byte_buffer_reader reader;
grpc_byte_buffer_reader_init(&reader, buffer);
gpr_slice slice = grpc_byte_buffer_reader_readall(&reader);
uint32_t len = Deserialize(GPR_SLICE_START_PTR(slice), GPR_SLICE_LENGTH(slice), msg);
uint32_t len =
Deserialize(GPR_SLICE_START_PTR(slice), GPR_SLICE_LENGTH(slice), msg);
gpr_slice_unref(slice);
@ -167,9 +172,7 @@ public:
}
// set serialization version flag
void SetSerializeVersion(bool value) {
serialize_version_ = value;
}
void SetSerializeVersion(bool value) { serialize_version_ = value; }
// Set the container size limit to deserialize
// This function should be called after buffer_ is initialized
@ -189,7 +192,7 @@ public:
protocol_->setStringSizeLimit(string_limit);
}
private:
private:
bool prepared_;
bool last_deserialized_;
boost::shared_ptr<TMemoryBuffer> buffer_;
@ -197,6 +200,7 @@ private:
bool serialize_version_;
void prepare() {
buffer_.reset(new TMemoryBuffer());
// create a protocol for the memory buffer transport
@ -205,13 +209,15 @@ private:
prepared_ = true;
}
}; // ThriftSerializer
}; // ThriftSerializer
typedef ThriftSerializer<void, TBinaryProtocolT<TBufferBase, TNetworkBigEndian>> ThriftSerializerBinary;
typedef ThriftSerializer<void, TCompactProtocolT<TBufferBase>> ThriftSerializerCompact;
typedef ThriftSerializer<void, TBinaryProtocolT<TBufferBase, TNetworkBigEndian>>
ThriftSerializerBinary;
typedef ThriftSerializer<void, TCompactProtocolT<TBufferBase>>
ThriftSerializerCompact;
} // namespace util
} // namespace thrift
} // namespace apache
} // namespace util
} // namespace thrift
} // namespace apache
#endif

@ -34,16 +34,16 @@
#ifndef GRPCXX_IMPL_CODEGEN_THRIFT_UTILS_H
#define GRPCXX_IMPL_CODEGEN_THRIFT_UTILS_H
#include <grpc/impl/codegen/byte_buffer.h>
#include <grpc/impl/codegen/byte_buffer_reader.h>
#include <grpc/impl/codegen/slice.h>
#include <grpc/impl/codegen/slice_buffer.h>
#include <grpc++/impl/codegen/config.h>
#include <grpc++/impl/codegen/core_codegen_interface.h>
#include <grpc++/impl/codegen/serialization_traits.h>
#include <grpc++/impl/codegen/status.h>
#include <grpc++/impl/codegen/status_code_enum.h>
#include <grpc++/impl/codegen/thrift_serializer.h>
#include <grpc/impl/codegen/byte_buffer.h>
#include <grpc/impl/codegen/byte_buffer_reader.h>
#include <grpc/impl/codegen/slice.h>
#include <grpc/impl/codegen/slice_buffer.h>
#include <cstdint>
#include <cstdlib>
@ -52,23 +52,20 @@ namespace grpc {
using apache::thrift::util::ThriftSerializerCompact;
template <class T>
class SerializationTraits<T,typename std::enable_if<std::is_base_of<apache::thrift::TBase, T>::value>::type> {
class SerializationTraits<T, typename std::enable_if<std::is_base_of<
apache::thrift::TBase, T>::value>::type> {
public:
static Status Serialize(const T& msg,
grpc_byte_buffer** bp, bool* own_buffer) {
static Status Serialize(const T& msg, grpc_byte_buffer** bp,
bool* own_buffer) {
*own_buffer = true;
ThriftSerializerCompact serializer;
serializer.Serialize(msg, bp);
return Status(StatusCode::OK, "ok");
}
static Status Deserialize(grpc_byte_buffer* buffer,
T* msg,
static Status Deserialize(grpc_byte_buffer* buffer, T* msg,
int max_message_size) {
if (!buffer) {
return Status(StatusCode::INTERNAL, "No payload");

@ -46,8 +46,8 @@ RUN apt-get update && \
curl make automake libtool
# Configure git
RUN git config --global user.name " " && \
git config --global user.email " "
RUN git config --global user.name "Jenkins" && \
git config --global user.email "jenkins@grpc"
RUN git clone https://github.com/grpc/grpc

@ -2,7 +2,7 @@ Copyright 2016 Google Inc.
#Documentation
grift is integration of [Apache Thrift](https://github.com/apache/thrift.git) Serializer with GRPC.
grift is integration of [Apache Thrift](https://github.com/apache/thrift.git) Serializer with gRPC.
This integration allows you to use grpc to send thrift messages in C++ and java.

@ -59,7 +59,7 @@ index 6fd15d2..7de1fad 100755
2.8.0.rc3.226.g39d4020
From c8577ad5513543c57a81ad1bf4927cc8a78baa03 Mon Sep 17 00:00:00 2001
From e724d3abf096278615085bd58217321e32b43fd8 Mon Sep 17 00:00:00 2001
From: chedeti <chedeti@google.com>
Date: Sun, 31 Jul 2016 16:16:40 -0700
Subject: [PATCH 2/3] grpc cpp plugins generator with example
@ -69,16 +69,16 @@ Subject: [PATCH 2/3] grpc cpp plugins generator with example
tutorial/cpp/CMakeLists.txt | 53 ---
tutorial/cpp/CppClient.cpp | 80 -----
tutorial/cpp/CppServer.cpp | 181 ----------
tutorial/cpp/GrpcClient.cpp | 94 ++++++
tutorial/cpp/GrpcServer.cpp | 87 +++++
tutorial/cpp/GriftClient.cpp | 93 ++++++
tutorial/cpp/GriftServer.cpp | 93 ++++++
tutorial/cpp/Makefile.am | 66 ++--
tutorial/cpp/test.thrift | 13 +
8 files changed, 636 insertions(+), 416 deletions(-)
8 files changed, 641 insertions(+), 416 deletions(-)
delete mode 100644 tutorial/cpp/CMakeLists.txt
delete mode 100644 tutorial/cpp/CppClient.cpp
delete mode 100644 tutorial/cpp/CppServer.cpp
create mode 100644 tutorial/cpp/GrpcClient.cpp
create mode 100644 tutorial/cpp/GrpcServer.cpp
create mode 100644 tutorial/cpp/GriftClient.cpp
create mode 100644 tutorial/cpp/GriftServer.cpp
create mode 100644 tutorial/cpp/test.thrift
diff --git a/compiler/cpp/src/generate/t_cpp_generator.cc b/compiler/cpp/src/generate/t_cpp_generator.cc
@ -1147,12 +1147,12 @@ index eafffa9..0000000
- cout << "Done." << endl;
- return 0;
-}
diff --git a/tutorial/cpp/GrpcClient.cpp b/tutorial/cpp/GrpcClient.cpp
diff --git a/tutorial/cpp/GriftClient.cpp b/tutorial/cpp/GriftClient.cpp
new file mode 100644
index 0000000..ab1fe77
index 0000000..647a683
--- /dev/null
+++ b/tutorial/cpp/GrpcClient.cpp
@@ -0,0 +1,94 @@
+++ b/tutorial/cpp/GriftClient.cpp
@@ -0,0 +1,93 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
@ -1198,7 +1198,6 @@ index 0000000..ab1fe77
+using grpc::ClientContext;
+using grpc::Status;
+using test::Greeter;
+using namespace test;
+
+class GreeterClient {
+ public:
@ -1247,12 +1246,12 @@ index 0000000..ab1fe77
+
+ return 0;
+}
diff --git a/tutorial/cpp/GrpcServer.cpp b/tutorial/cpp/GrpcServer.cpp
diff --git a/tutorial/cpp/GriftServer.cpp b/tutorial/cpp/GriftServer.cpp
new file mode 100644
index 0000000..f63db57
index 0000000..7c01606
--- /dev/null
+++ b/tutorial/cpp/GrpcServer.cpp
@@ -0,0 +1,87 @@
+++ b/tutorial/cpp/GriftServer.cpp
@@ -0,0 +1,93 @@
+/*
+ *
+ * Copyright 2016, Google Inc.
@ -1301,11 +1300,14 @@ index 0000000..f63db57
+using grpc::Status;
+using test::Greeter;
+
+using namespace grpc;
+using namespace test;
+
+// Logic and data behind the server's behavior.
+class GreeterServiceImpl final : public Greeter::Service {
+ public:
+ ~GreeterServiceImpl() {
+ // shutdown server
+ server->Shutdown();
+ }
+
+ Status SayHello(ServerContext* context,const Greeter::SayHelloReq* request,
+ Greeter::SayHelloResp* reply) override {
+ std::string prefix("Hello ");
@ -1314,34 +1316,37 @@ index 0000000..f63db57
+
+ return Status::OK;
+ }
+};
+
+void RunServer() {
+ std::string server_address("0.0.0.0:50051");
+ GreeterServiceImpl service;
+ void RunServer() {
+ std::string server_address("0.0.0.0:50051");
+
+ ServerBuilder builder;
+ // Listen on the given address without any authentication mechanism.
+ builder.AddListeningPort(server_address, grpc::InsecureServerCredentials());
+ // Register "service" as the instance through which we'll communicate with
+ // clients. In this case it corresponds to an *synchronous* service.
+ builder.RegisterService(this);
+ // Finally assemble the server.
+ server = builder.BuildAndStart();
+ std::cout << "Server listening on " << server_address << std::endl;
+
+ // Wait for the server to shutdown. Note that some other thread must be
+ // responsible for shutting down the server for this call to ever return.
+ server->Wait();
+ }
+
+ ServerBuilder builder;
+ // Listen on the given address without any authentication mechanism.
+ builder.AddListeningPort(server_address, grpc::InsecureServerCredentials());
+ // Register "service" as the instance through which we'll communicate with
+ // clients. In this case it corresponds to an *synchronous* service.
+ builder.RegisterService(&service);
+ // Finally assemble the server.
+ std::unique_ptr<Server> server(builder.BuildAndStart());
+ std::cout << "Server listening on " << server_address << std::endl;
+
+ // Wait for the server to shutdown. Note that some other thread must be
+ // responsible for shutting down the server for this call to ever return.
+ server->Wait();
+}
+ private:
+ std::unique_ptr<Server> server;
+};
+
+int main() {
+ RunServer();
+ GreeterServiceImpl service;
+ service.RunServer();
+
+ return 0;
+}
diff --git a/tutorial/cpp/Makefile.am b/tutorial/cpp/Makefile.am
index 184a69d..39d85e1 100755
index 184a69d..6f91e28 100755
--- a/tutorial/cpp/Makefile.am
+++ b/tutorial/cpp/Makefile.am
@@ -18,44 +18,38 @@
@ -1390,7 +1395,7 @@ index 184a69d..39d85e1 100755
-TutorialServer_SOURCES = \
- CppServer.cpp
+TestServer_SOURCES = \
+ GrpcServer.cpp
+ GriftServer.cpp
-TutorialServer_LDADD = \
- libtutorialgencpp.la \
@ -1401,7 +1406,7 @@ index 184a69d..39d85e1 100755
-TutorialClient_SOURCES = \
- CppClient.cpp
+TestClient_SOURCES = \
+ GrpcClient.cpp
+ GriftClient.cpp
-TutorialClient_LDADD = \
- libtutorialgencpp.la \
@ -1444,8 +1449,8 @@ index 184a69d..39d85e1 100755
CMakeLists.txt \
- CppClient.cpp \
- CppServer.cpp
+ GrpcClient.cpp \
+ GrpcServer.cpp
+ GriftClient.cpp \
+ GriftServer.cpp
diff --git a/tutorial/cpp/test.thrift b/tutorial/cpp/test.thrift
new file mode 100644
index 0000000..de3c9a4
@ -1470,7 +1475,7 @@ index 0000000..de3c9a4
2.8.0.rc3.226.g39d4020
From 096042c132126536870eea118127cf1e608969bc Mon Sep 17 00:00:00 2001
From f991f33dd6461eae197b6ad0e7088b571f2a7b22 Mon Sep 17 00:00:00 2001
From: chedeti <chedeti@google.com>
Date: Sun, 31 Jul 2016 16:23:53 -0700
Subject: [PATCH 3/3] grpc java plugins generator

Loading…
Cancel
Save