mirror of https://github.com/grpc/grpc.git
commit
4be8afc7ed
285 changed files with 7262 additions and 15235 deletions
@ -1,188 +0,0 @@ |
|||||||
/*
|
|
||||||
* |
|
||||||
* Copyright 2015, Google Inc. |
|
||||||
* All rights reserved. |
|
||||||
* |
|
||||||
* Redistribution and use in source and binary forms, with or without |
|
||||||
* modification, are permitted provided that the following conditions are |
|
||||||
* met: |
|
||||||
* |
|
||||||
* * Redistributions of source code must retain the above copyright |
|
||||||
* notice, this list of conditions and the following disclaimer. |
|
||||||
* * Redistributions in binary form must reproduce the above |
|
||||||
* copyright notice, this list of conditions and the following disclaimer |
|
||||||
* in the documentation and/or other materials provided with the |
|
||||||
* distribution. |
|
||||||
* * Neither the name of Google Inc. nor the names of its |
|
||||||
* contributors may be used to endorse or promote products derived from |
|
||||||
* this software without specific prior written permission. |
|
||||||
* |
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|
||||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
||||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
||||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
|
||||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
|
||||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|
||||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
||||||
* |
|
||||||
*/ |
|
||||||
|
|
||||||
|
|
||||||
// Generated by tools/codegen/extensions/gen_reflection_proto.sh
|
|
||||||
// If you make any local change, they will be lost.
|
|
||||||
// source: reflection.proto
|
|
||||||
// Original file comments:
|
|
||||||
// Copyright 2016, Google Inc.
|
|
||||||
// All rights reserved.
|
|
||||||
//
|
|
||||||
// Redistribution and use in source and binary forms, with or without
|
|
||||||
// modification, are permitted provided that the following conditions are
|
|
||||||
// met:
|
|
||||||
//
|
|
||||||
// * Redistributions of source code must retain the above copyright
|
|
||||||
// notice, this list of conditions and the following disclaimer.
|
|
||||||
// * Redistributions in binary form must reproduce the above
|
|
||||||
// copyright notice, this list of conditions and the following disclaimer
|
|
||||||
// in the documentation and/or other materials provided with the
|
|
||||||
// distribution.
|
|
||||||
// * Neither the name of Google Inc. nor the names of its
|
|
||||||
// contributors may be used to endorse or promote products derived from
|
|
||||||
// this software without specific prior written permission.
|
|
||||||
//
|
|
||||||
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
||||||
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
||||||
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
||||||
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
||||||
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
||||||
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
||||||
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
||||||
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
//
|
|
||||||
// Service exported by server reflection
|
|
||||||
//
|
|
||||||
#ifndef GRPC_reflection_2eproto__INCLUDED |
|
||||||
#define GRPC_reflection_2eproto__INCLUDED |
|
||||||
|
|
||||||
#include <grpc++/ext/reflection.pb.h> |
|
||||||
|
|
||||||
#include <grpc++/impl/codegen/async_stream.h> |
|
||||||
#include <grpc++/impl/codegen/async_unary_call.h> |
|
||||||
#include <grpc++/impl/codegen/method_handler_impl.h> |
|
||||||
#include <grpc++/impl/codegen/proto_utils.h> |
|
||||||
#include <grpc++/impl/codegen/rpc_method.h> |
|
||||||
#include <grpc++/impl/codegen/service_type.h> |
|
||||||
#include <grpc++/impl/codegen/status.h> |
|
||||||
#include <grpc++/impl/codegen/stub_options.h> |
|
||||||
#include <grpc++/impl/codegen/sync_stream.h> |
|
||||||
|
|
||||||
namespace grpc { |
|
||||||
class CompletionQueue; |
|
||||||
class Channel; |
|
||||||
class RpcService; |
|
||||||
class ServerCompletionQueue; |
|
||||||
class ServerContext; |
|
||||||
} // namespace grpc
|
|
||||||
|
|
||||||
namespace grpc { |
|
||||||
namespace reflection { |
|
||||||
namespace v1alpha { |
|
||||||
|
|
||||||
class ServerReflection GRPC_FINAL { |
|
||||||
public: |
|
||||||
class StubInterface { |
|
||||||
public: |
|
||||||
virtual ~StubInterface() {} |
|
||||||
// The reflection service is structured as a bidirectional stream, ensuring
|
|
||||||
// all related requests go to a single server.
|
|
||||||
std::unique_ptr< ::grpc::ClientReaderWriterInterface< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>> ServerReflectionInfo(::grpc::ClientContext* context) { |
|
||||||
return std::unique_ptr< ::grpc::ClientReaderWriterInterface< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>>(ServerReflectionInfoRaw(context)); |
|
||||||
} |
|
||||||
std::unique_ptr< ::grpc::ClientAsyncReaderWriterInterface< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>> AsyncServerReflectionInfo(::grpc::ClientContext* context, ::grpc::CompletionQueue* cq, void* tag) { |
|
||||||
return std::unique_ptr< ::grpc::ClientAsyncReaderWriterInterface< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>>(AsyncServerReflectionInfoRaw(context, cq, tag)); |
|
||||||
} |
|
||||||
private: |
|
||||||
virtual ::grpc::ClientReaderWriterInterface< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>* ServerReflectionInfoRaw(::grpc::ClientContext* context) = 0; |
|
||||||
virtual ::grpc::ClientAsyncReaderWriterInterface< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>* AsyncServerReflectionInfoRaw(::grpc::ClientContext* context, ::grpc::CompletionQueue* cq, void* tag) = 0; |
|
||||||
}; |
|
||||||
class Stub GRPC_FINAL : public StubInterface { |
|
||||||
public: |
|
||||||
Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel); |
|
||||||
std::unique_ptr< ::grpc::ClientReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>> ServerReflectionInfo(::grpc::ClientContext* context) { |
|
||||||
return std::unique_ptr< ::grpc::ClientReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>>(ServerReflectionInfoRaw(context)); |
|
||||||
} |
|
||||||
std::unique_ptr< ::grpc::ClientAsyncReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>> AsyncServerReflectionInfo(::grpc::ClientContext* context, ::grpc::CompletionQueue* cq, void* tag) { |
|
||||||
return std::unique_ptr< ::grpc::ClientAsyncReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>>(AsyncServerReflectionInfoRaw(context, cq, tag)); |
|
||||||
} |
|
||||||
|
|
||||||
private: |
|
||||||
std::shared_ptr< ::grpc::ChannelInterface> channel_; |
|
||||||
::grpc::ClientReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>* ServerReflectionInfoRaw(::grpc::ClientContext* context) GRPC_OVERRIDE; |
|
||||||
::grpc::ClientAsyncReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>* AsyncServerReflectionInfoRaw(::grpc::ClientContext* context, ::grpc::CompletionQueue* cq, void* tag) GRPC_OVERRIDE; |
|
||||||
const ::grpc::RpcMethod rpcmethod_ServerReflectionInfo_; |
|
||||||
}; |
|
||||||
static std::unique_ptr<Stub> NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options = ::grpc::StubOptions()); |
|
||||||
|
|
||||||
class Service : public ::grpc::Service { |
|
||||||
public: |
|
||||||
Service(); |
|
||||||
virtual ~Service(); |
|
||||||
// The reflection service is structured as a bidirectional stream, ensuring
|
|
||||||
// all related requests go to a single server.
|
|
||||||
virtual ::grpc::Status ServerReflectionInfo(::grpc::ServerContext* context, ::grpc::ServerReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionResponse, ::grpc::reflection::v1alpha::ServerReflectionRequest>* stream); |
|
||||||
}; |
|
||||||
template <class BaseClass> |
|
||||||
class WithAsyncMethod_ServerReflectionInfo : public BaseClass { |
|
||||||
private: |
|
||||||
void BaseClassMustBeDerivedFromService(const Service *service) {} |
|
||||||
public: |
|
||||||
WithAsyncMethod_ServerReflectionInfo() { |
|
||||||
::grpc::Service::MarkMethodAsync(0); |
|
||||||
} |
|
||||||
~WithAsyncMethod_ServerReflectionInfo() GRPC_OVERRIDE { |
|
||||||
BaseClassMustBeDerivedFromService(this); |
|
||||||
} |
|
||||||
// disable synchronous version of this method
|
|
||||||
::grpc::Status ServerReflectionInfo(::grpc::ServerContext* context, ::grpc::ServerReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionResponse, ::grpc::reflection::v1alpha::ServerReflectionRequest>* stream) GRPC_FINAL GRPC_OVERRIDE { |
|
||||||
abort(); |
|
||||||
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
|
||||||
} |
|
||||||
void RequestServerReflectionInfo(::grpc::ServerContext* context, ::grpc::ServerAsyncReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionResponse, ::grpc::reflection::v1alpha::ServerReflectionRequest>* stream, ::grpc::CompletionQueue* new_call_cq, ::grpc::ServerCompletionQueue* notification_cq, void *tag) { |
|
||||||
::grpc::Service::RequestAsyncBidiStreaming(0, context, stream, new_call_cq, notification_cq, tag); |
|
||||||
} |
|
||||||
}; |
|
||||||
typedef WithAsyncMethod_ServerReflectionInfo<Service > AsyncService; |
|
||||||
template <class BaseClass> |
|
||||||
class WithGenericMethod_ServerReflectionInfo : public BaseClass { |
|
||||||
private: |
|
||||||
void BaseClassMustBeDerivedFromService(const Service *service) {} |
|
||||||
public: |
|
||||||
WithGenericMethod_ServerReflectionInfo() { |
|
||||||
::grpc::Service::MarkMethodGeneric(0); |
|
||||||
} |
|
||||||
~WithGenericMethod_ServerReflectionInfo() GRPC_OVERRIDE { |
|
||||||
BaseClassMustBeDerivedFromService(this); |
|
||||||
} |
|
||||||
// disable synchronous version of this method
|
|
||||||
::grpc::Status ServerReflectionInfo(::grpc::ServerContext* context, ::grpc::ServerReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionResponse, ::grpc::reflection::v1alpha::ServerReflectionRequest>* stream) GRPC_FINAL GRPC_OVERRIDE { |
|
||||||
abort(); |
|
||||||
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
|
||||||
} |
|
||||||
}; |
|
||||||
typedef Service StreamedUnaryService; |
|
||||||
typedef Service SplitStreamedService; |
|
||||||
typedef Service StreamedService; |
|
||||||
}; |
|
||||||
|
|
||||||
} // namespace v1alpha
|
|
||||||
} // namespace reflection
|
|
||||||
} // namespace grpc
|
|
||||||
|
|
||||||
|
|
||||||
#endif // GRPC_reflection_2eproto__INCLUDED
|
|
File diff suppressed because it is too large
Load Diff
@ -1,45 +0,0 @@ |
|||||||
/*
|
|
||||||
* |
|
||||||
* Copyright 2015, Google Inc. |
|
||||||
* All rights reserved. |
|
||||||
* |
|
||||||
* Redistribution and use in source and binary forms, with or without |
|
||||||
* modification, are permitted provided that the following conditions are |
|
||||||
* met: |
|
||||||
* |
|
||||||
* * Redistributions of source code must retain the above copyright |
|
||||||
* notice, this list of conditions and the following disclaimer. |
|
||||||
* * Redistributions in binary form must reproduce the above |
|
||||||
* copyright notice, this list of conditions and the following disclaimer |
|
||||||
* in the documentation and/or other materials provided with the |
|
||||||
* distribution. |
|
||||||
* * Neither the name of Google Inc. nor the names of its |
|
||||||
* contributors may be used to endorse or promote products derived from |
|
||||||
* this software without specific prior written permission. |
|
||||||
* |
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|
||||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
||||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
||||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
|
||||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
|
||||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|
||||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
||||||
* |
|
||||||
*/ |
|
||||||
|
|
||||||
#ifndef GRPCXX_IMPL_CODEGEN_SYNC_H |
|
||||||
#define GRPCXX_IMPL_CODEGEN_SYNC_H |
|
||||||
|
|
||||||
#include <grpc++/impl/codegen/config.h> |
|
||||||
|
|
||||||
#ifdef GRPC_CXX0X_NO_THREAD |
|
||||||
#include <grpc++/impl/codegen/sync_no_cxx11.h> |
|
||||||
#else |
|
||||||
#include <grpc++/impl/codegen/sync_cxx11.h> |
|
||||||
#endif |
|
||||||
|
|
||||||
#endif // GRPCXX_IMPL_CODEGEN_SYNC_H
|
|
@ -1,111 +0,0 @@ |
|||||||
/*
|
|
||||||
* |
|
||||||
* Copyright 2015, Google Inc. |
|
||||||
* All rights reserved. |
|
||||||
* |
|
||||||
* Redistribution and use in source and binary forms, with or without |
|
||||||
* modification, are permitted provided that the following conditions are |
|
||||||
* met: |
|
||||||
* |
|
||||||
* * Redistributions of source code must retain the above copyright |
|
||||||
* notice, this list of conditions and the following disclaimer. |
|
||||||
* * Redistributions in binary form must reproduce the above |
|
||||||
* copyright notice, this list of conditions and the following disclaimer |
|
||||||
* in the documentation and/or other materials provided with the |
|
||||||
* distribution. |
|
||||||
* * Neither the name of Google Inc. nor the names of its |
|
||||||
* contributors may be used to endorse or promote products derived from |
|
||||||
* this software without specific prior written permission. |
|
||||||
* |
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|
||||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
||||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
||||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
|
||||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
|
||||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|
||||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
||||||
* |
|
||||||
*/ |
|
||||||
|
|
||||||
#ifndef GRPCXX_IMPL_CODEGEN_SYNC_NO_CXX11_H |
|
||||||
#define GRPCXX_IMPL_CODEGEN_SYNC_NO_CXX11_H |
|
||||||
|
|
||||||
#include <grpc++/impl/codegen/core_codegen_interface.h> |
|
||||||
|
|
||||||
namespace grpc { |
|
||||||
|
|
||||||
extern CoreCodegenInterface *g_core_codegen_interface; |
|
||||||
|
|
||||||
template <class mutex> |
|
||||||
class lock_guard; |
|
||||||
class condition_variable; |
|
||||||
|
|
||||||
class mutex { |
|
||||||
public: |
|
||||||
mutex() { g_core_codegen_interface->gpr_mu_init(&mu_); } |
|
||||||
~mutex() { g_core_codegen_interface->gpr_mu_destroy(&mu_); } |
|
||||||
|
|
||||||
private: |
|
||||||
::gpr_mu mu_; |
|
||||||
template <class mutex> |
|
||||||
friend class lock_guard; |
|
||||||
friend class condition_variable; |
|
||||||
}; |
|
||||||
|
|
||||||
template <class mutex> |
|
||||||
class lock_guard { |
|
||||||
public: |
|
||||||
lock_guard(mutex &mu) : mu_(mu), locked(true) { |
|
||||||
g_core_codegen_interface->gpr_mu_lock(&mu.mu_); |
|
||||||
} |
|
||||||
~lock_guard() { unlock_internal(); } |
|
||||||
|
|
||||||
protected: |
|
||||||
void lock_internal() { |
|
||||||
if (!locked) g_core_codegen_interface->gpr_mu_lock(&mu_.mu_); |
|
||||||
locked = true; |
|
||||||
} |
|
||||||
void unlock_internal() { |
|
||||||
if (locked) g_core_codegen_interface->gpr_mu_unlock(&mu_.mu_); |
|
||||||
locked = false; |
|
||||||
} |
|
||||||
|
|
||||||
private: |
|
||||||
mutex &mu_; |
|
||||||
bool locked; |
|
||||||
friend class condition_variable; |
|
||||||
}; |
|
||||||
|
|
||||||
template <class mutex> |
|
||||||
class unique_lock : public lock_guard<mutex> { |
|
||||||
public: |
|
||||||
unique_lock(mutex &mu) : lock_guard<mutex>(mu) {} |
|
||||||
void lock() { this->lock_internal(); } |
|
||||||
void unlock() { this->unlock_internal(); } |
|
||||||
}; |
|
||||||
|
|
||||||
class condition_variable { |
|
||||||
public: |
|
||||||
condition_variable() { g_core_codegen_interface->gpr_cv_init(&cv_); } |
|
||||||
~condition_variable() { g_core_codegen_interface->gpr_cv_destroy(&cv_); } |
|
||||||
void wait(lock_guard<mutex> &mu) { |
|
||||||
mu.locked = false; |
|
||||||
g_core_codegen_interface->gpr_cv_wait( |
|
||||||
&cv_, &mu.mu_.mu_, |
|
||||||
g_core_codegen_interface->gpr_inf_future(GPR_CLOCK_REALTIME)); |
|
||||||
mu.locked = true; |
|
||||||
} |
|
||||||
void notify_one() { g_core_codegen_interface->gpr_cv_signal(&cv_); } |
|
||||||
void notify_all() { g_core_codegen_interface->gpr_cv_broadcast(&cv_); } |
|
||||||
|
|
||||||
private: |
|
||||||
gpr_cv cv_; |
|
||||||
}; |
|
||||||
|
|
||||||
} // namespace grpc
|
|
||||||
|
|
||||||
#endif // GRPCXX_IMPL_CODEGEN_SYNC_NO_CXX11_H
|
|
@ -1,39 +0,0 @@ |
|||||||
/*
|
|
||||||
* |
|
||||||
* Copyright 2015, Google Inc. |
|
||||||
* All rights reserved. |
|
||||||
* |
|
||||||
* Redistribution and use in source and binary forms, with or without |
|
||||||
* modification, are permitted provided that the following conditions are |
|
||||||
* met: |
|
||||||
* |
|
||||||
* * Redistributions of source code must retain the above copyright |
|
||||||
* notice, this list of conditions and the following disclaimer. |
|
||||||
* * Redistributions in binary form must reproduce the above |
|
||||||
* copyright notice, this list of conditions and the following disclaimer |
|
||||||
* in the documentation and/or other materials provided with the |
|
||||||
* distribution. |
|
||||||
* * Neither the name of Google Inc. nor the names of its |
|
||||||
* contributors may be used to endorse or promote products derived from |
|
||||||
* this software without specific prior written permission. |
|
||||||
* |
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|
||||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
||||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
||||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
|
||||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
|
||||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|
||||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
||||||
* |
|
||||||
*/ |
|
||||||
|
|
||||||
#ifndef GRPCXX_IMPL_SYNC_H |
|
||||||
#define GRPCXX_IMPL_SYNC_H |
|
||||||
|
|
||||||
#include <grpc++/impl/codegen/sync.h> |
|
||||||
|
|
||||||
#endif // GRPCXX_IMPL_SYNC_H
|
|
@ -1,117 +0,0 @@ |
|||||||
/*
|
|
||||||
* |
|
||||||
* Copyright 2015, Google Inc. |
|
||||||
* All rights reserved. |
|
||||||
* |
|
||||||
* Redistribution and use in source and binary forms, with or without |
|
||||||
* modification, are permitted provided that the following conditions are |
|
||||||
* met: |
|
||||||
* |
|
||||||
* * Redistributions of source code must retain the above copyright |
|
||||||
* notice, this list of conditions and the following disclaimer. |
|
||||||
* * Redistributions in binary form must reproduce the above |
|
||||||
* copyright notice, this list of conditions and the following disclaimer |
|
||||||
* in the documentation and/or other materials provided with the |
|
||||||
* distribution. |
|
||||||
* * Neither the name of Google Inc. nor the names of its |
|
||||||
* contributors may be used to endorse or promote products derived from |
|
||||||
* this software without specific prior written permission. |
|
||||||
* |
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|
||||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
||||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
||||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
|
||||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
|
||||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|
||||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
||||||
* |
|
||||||
*/ |
|
||||||
|
|
||||||
#ifndef GRPCXX_IMPL_THD_NO_CXX11_H |
|
||||||
#define GRPCXX_IMPL_THD_NO_CXX11_H |
|
||||||
|
|
||||||
#include <grpc/support/thd.h> |
|
||||||
|
|
||||||
namespace grpc { |
|
||||||
|
|
||||||
class thread { |
|
||||||
public: |
|
||||||
template <class T> |
|
||||||
thread(void (T::*fptr)(), T *obj) { |
|
||||||
func_ = new thread_function<T>(fptr, obj); |
|
||||||
joined_ = false; |
|
||||||
start(); |
|
||||||
} |
|
||||||
template <class T, class U> |
|
||||||
thread(void (T::*fptr)(U arg), T *obj, U arg) { |
|
||||||
func_ = new thread_function_arg<T, U>(fptr, obj, arg); |
|
||||||
joined_ = false; |
|
||||||
start(); |
|
||||||
} |
|
||||||
~thread() { |
|
||||||
if (!joined_) std::terminate(); |
|
||||||
delete func_; |
|
||||||
} |
|
||||||
thread(thread &&other) |
|
||||||
: func_(other.func_), thd_(other.thd_), joined_(other.joined_) { |
|
||||||
other.joined_ = true; |
|
||||||
other.func_ = NULL; |
|
||||||
} |
|
||||||
void join() { |
|
||||||
gpr_thd_join(thd_); |
|
||||||
joined_ = true; |
|
||||||
} |
|
||||||
|
|
||||||
private: |
|
||||||
void start() { |
|
||||||
gpr_thd_options options = gpr_thd_options_default(); |
|
||||||
gpr_thd_options_set_joinable(&options); |
|
||||||
gpr_thd_new(&thd_, thread_func, (void *)func_, &options); |
|
||||||
} |
|
||||||
static void thread_func(void *arg) { |
|
||||||
thread_function_base *func = (thread_function_base *)arg; |
|
||||||
func->call(); |
|
||||||
} |
|
||||||
class thread_function_base { |
|
||||||
public: |
|
||||||
virtual ~thread_function_base() {} |
|
||||||
virtual void call() = 0; |
|
||||||
}; |
|
||||||
template <class T> |
|
||||||
class thread_function : public thread_function_base { |
|
||||||
public: |
|
||||||
thread_function(void (T::*fptr)(), T *obj) : fptr_(fptr), obj_(obj) {} |
|
||||||
virtual void call() { (obj_->*fptr_)(); } |
|
||||||
|
|
||||||
private: |
|
||||||
void (T::*fptr_)(); |
|
||||||
T *obj_; |
|
||||||
}; |
|
||||||
template <class T, class U> |
|
||||||
class thread_function_arg : public thread_function_base { |
|
||||||
public: |
|
||||||
thread_function_arg(void (T::*fptr)(U arg), T *obj, U arg) |
|
||||||
: fptr_(fptr), obj_(obj), arg_(arg) {} |
|
||||||
virtual void call() { (obj_->*fptr_)(arg_); } |
|
||||||
|
|
||||||
private: |
|
||||||
void (T::*fptr_)(U arg); |
|
||||||
T *obj_; |
|
||||||
U arg_; |
|
||||||
}; |
|
||||||
thread_function_base *func_; |
|
||||||
gpr_thd_id thd_; |
|
||||||
bool joined_; |
|
||||||
|
|
||||||
// Disallow copy and assign.
|
|
||||||
thread(const thread &); |
|
||||||
void operator=(const thread &); |
|
||||||
}; |
|
||||||
|
|
||||||
} // namespace grpc
|
|
||||||
|
|
||||||
#endif // GRPCXX_IMPL_THD_NO_CXX11_H
|
|
File diff suppressed because it is too large
Load Diff
@ -1,97 +0,0 @@ |
|||||||
/*
|
|
||||||
* |
|
||||||
* Copyright 2015, Google Inc. |
|
||||||
* All rights reserved. |
|
||||||
* |
|
||||||
* Redistribution and use in source and binary forms, with or without |
|
||||||
* modification, are permitted provided that the following conditions are |
|
||||||
* met: |
|
||||||
* |
|
||||||
* * Redistributions of source code must retain the above copyright |
|
||||||
* notice, this list of conditions and the following disclaimer. |
|
||||||
* * Redistributions in binary form must reproduce the above |
|
||||||
* copyright notice, this list of conditions and the following disclaimer |
|
||||||
* in the documentation and/or other materials provided with the |
|
||||||
* distribution. |
|
||||||
* * Neither the name of Google Inc. nor the names of its |
|
||||||
* contributors may be used to endorse or promote products derived from |
|
||||||
* this software without specific prior written permission. |
|
||||||
* |
|
||||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|
||||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|
||||||
* A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
|
||||||
* OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
|
||||||
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
|
||||||
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
|
||||||
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
|
||||||
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
|
||||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
|
||||||
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|
||||||
* |
|
||||||
*/ |
|
||||||
|
|
||||||
|
|
||||||
// Generated by tools/codegen/extensions/gen_reflection_proto.sh
|
|
||||||
// If you make any local change, they will be lost.
|
|
||||||
// source: reflection.proto
|
|
||||||
|
|
||||||
#include <grpc++/ext/reflection.pb.h> |
|
||||||
#include <grpc++/ext/reflection.grpc.pb.h> |
|
||||||
|
|
||||||
#include <grpc++/impl/codegen/async_stream.h> |
|
||||||
#include <grpc++/impl/codegen/async_unary_call.h> |
|
||||||
#include <grpc++/impl/codegen/channel_interface.h> |
|
||||||
#include <grpc++/impl/codegen/client_unary_call.h> |
|
||||||
#include <grpc++/impl/codegen/method_handler_impl.h> |
|
||||||
#include <grpc++/impl/codegen/rpc_service_method.h> |
|
||||||
#include <grpc++/impl/codegen/service_type.h> |
|
||||||
#include <grpc++/impl/codegen/sync_stream.h> |
|
||||||
namespace grpc { |
|
||||||
namespace reflection { |
|
||||||
namespace v1alpha { |
|
||||||
|
|
||||||
static const char* ServerReflection_method_names[] = { |
|
||||||
"/grpc.reflection.v1alpha.ServerReflection/ServerReflectionInfo", |
|
||||||
}; |
|
||||||
|
|
||||||
std::unique_ptr< ServerReflection::Stub> ServerReflection::NewStub(const std::shared_ptr< ::grpc::ChannelInterface>& channel, const ::grpc::StubOptions& options) { |
|
||||||
std::unique_ptr< ServerReflection::Stub> stub(new ServerReflection::Stub(channel)); |
|
||||||
return stub; |
|
||||||
} |
|
||||||
|
|
||||||
ServerReflection::Stub::Stub(const std::shared_ptr< ::grpc::ChannelInterface>& channel) |
|
||||||
: channel_(channel), rpcmethod_ServerReflectionInfo_(ServerReflection_method_names[0], ::grpc::RpcMethod::BIDI_STREAMING, channel) |
|
||||||
{} |
|
||||||
|
|
||||||
::grpc::ClientReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>* ServerReflection::Stub::ServerReflectionInfoRaw(::grpc::ClientContext* context) { |
|
||||||
return new ::grpc::ClientReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>(channel_.get(), rpcmethod_ServerReflectionInfo_, context); |
|
||||||
} |
|
||||||
|
|
||||||
::grpc::ClientAsyncReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>* ServerReflection::Stub::AsyncServerReflectionInfoRaw(::grpc::ClientContext* context, ::grpc::CompletionQueue* cq, void* tag) { |
|
||||||
return new ::grpc::ClientAsyncReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>(channel_.get(), cq, rpcmethod_ServerReflectionInfo_, context, tag); |
|
||||||
} |
|
||||||
|
|
||||||
ServerReflection::Service::Service() { |
|
||||||
(void)ServerReflection_method_names; |
|
||||||
AddMethod(new ::grpc::RpcServiceMethod( |
|
||||||
ServerReflection_method_names[0], |
|
||||||
::grpc::RpcMethod::BIDI_STREAMING, |
|
||||||
new ::grpc::BidiStreamingHandler< ServerReflection::Service, ::grpc::reflection::v1alpha::ServerReflectionRequest, ::grpc::reflection::v1alpha::ServerReflectionResponse>( |
|
||||||
std::mem_fn(&ServerReflection::Service::ServerReflectionInfo), this))); |
|
||||||
} |
|
||||||
|
|
||||||
ServerReflection::Service::~Service() { |
|
||||||
} |
|
||||||
|
|
||||||
::grpc::Status ServerReflection::Service::ServerReflectionInfo(::grpc::ServerContext* context, ::grpc::ServerReaderWriter< ::grpc::reflection::v1alpha::ServerReflectionResponse, ::grpc::reflection::v1alpha::ServerReflectionRequest>* stream) { |
|
||||||
(void) context; |
|
||||||
(void) stream; |
|
||||||
return ::grpc::Status(::grpc::StatusCode::UNIMPLEMENTED, ""); |
|
||||||
} |
|
||||||
|
|
||||||
|
|
||||||
} // namespace grpc
|
|
||||||
} // namespace reflection
|
|
||||||
} // namespace v1alpha
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,5 @@ |
|||||||
grpc.lb.v1.InitialLoadBalanceRequest.name max_size:128 |
grpc.lb.v1.InitialLoadBalanceRequest.name max_size:128 |
||||||
grpc.lb.v1.InitialLoadBalanceResponse.client_config max_size:64 |
|
||||||
grpc.lb.v1.InitialLoadBalanceResponse.load_balancer_delegate max_size:64 |
grpc.lb.v1.InitialLoadBalanceResponse.load_balancer_delegate max_size:64 |
||||||
grpc.lb.v1.Server.ip_address max_size:16 |
grpc.lb.v1.Server.ip_address max_size:16 |
||||||
grpc.lb.v1.Server.load_balance_token max_size:65 |
grpc.lb.v1.Server.load_balance_token max_size:50 |
||||||
load_balancer.proto no_unions:true |
load_balancer.proto no_unions:true |
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue