| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 | 
							- /*
 
-  *
 
-  * Copyright 2015 gRPC authors.
 
-  *
 
-  * Licensed under the Apache License, Version 2.0 (the "License");
 
-  * you may not use this file except in compliance with the License.
 
-  * You may obtain a copy of the License at
 
-  *
 
-  *     http://www.apache.org/licenses/LICENSE-2.0
 
-  *
 
-  * Unless required by applicable law or agreed to in writing, software
 
-  * distributed under the License is distributed on an "AS IS" BASIS,
 
-  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
-  * See the License for the specific language governing permissions and
 
-  * limitations under the License.
 
-  *
 
-  */
 
- #ifndef GRPC_TEST_CPP_INTEROP_SERVER_HELPER_H
 
- #define GRPC_TEST_CPP_INTEROP_SERVER_HELPER_H
 
- #include <condition_variable>
 
- #include <memory>
 
- #include <grpc/compression.h>
 
- #include <grpc/impl/codegen/atm.h>
 
- #include <grpcpp/security/server_credentials.h>
 
- #include <grpcpp/server.h>
 
- #include <grpcpp/server_builder.h>
 
- #include <grpcpp/server_context.h>
 
- namespace grpc {
 
- namespace testing {
 
- std::shared_ptr<ServerCredentials> CreateInteropServerCredentials();
 
- class InteropServerContextInspector {
 
-  public:
 
-   InteropServerContextInspector(const ::grpc::ServerContext& context);
 
-   // Inspector methods, able to peek inside ServerContext, follow.
 
-   std::shared_ptr<const AuthContext> GetAuthContext() const;
 
-   bool IsCancelled() const;
 
-   grpc_compression_algorithm GetCallCompressionAlgorithm() const;
 
-   uint32_t GetEncodingsAcceptedByClient() const;
 
-   uint32_t GetMessageFlags() const;
 
-  private:
 
-   const ::grpc::ServerContext& context_;
 
- };
 
- namespace interop {
 
- extern gpr_atm g_got_sigint;
 
- struct ServerStartedCondition {
 
-   std::mutex mutex;
 
-   std::condition_variable condition;
 
-   bool server_started = false;
 
- };
 
- /// Run gRPC interop server using port FLAGS_port.
 
- ///
 
- /// \param creds The credentials associated with the server.
 
- void RunServer(std::shared_ptr<ServerCredentials> creds);
 
- /// Run gRPC interop server.
 
- ///
 
- /// \param creds The credentials associated with the server.
 
- /// \param port Port to use for the server.
 
- /// \param server_started_condition (optional) Struct holding mutex, condition
 
- ///     variable, and condition used to notify when the server has started.
 
- void RunServer(std::shared_ptr<ServerCredentials> creds, int port,
 
-                ServerStartedCondition* server_started_condition);
 
- /// Run gRPC interop server.
 
- ///
 
- /// \param creds The credentials associated with the server.
 
- /// \param server_options List of options to set when building the server.
 
- void RunServer(
 
-     std::shared_ptr<ServerCredentials> creds,
 
-     std::unique_ptr<std::vector<std::unique_ptr<ServerBuilderOption>>>
 
-         server_options);
 
- /// Run gRPC interop server.
 
- ///
 
- /// \param creds The credentials associated with the server.
 
- /// \param port Port to use for the server.
 
- /// \param server_options List of options to set when building the server.
 
- /// \param server_started_condition (optional) Struct holding mutex, condition
 
- //     variable, and condition used to notify when the server has started.
 
- void RunServer(
 
-     std::shared_ptr<ServerCredentials> creds, const int port,
 
-     ServerStartedCondition* server_started_condition,
 
-     std::unique_ptr<std::vector<std::unique_ptr<grpc::ServerBuilderOption>>>
 
-         server_options);
 
- }  // namespace interop
 
- }  // namespace testing
 
- }  // namespace grpc
 
- #endif  // GRPC_TEST_CPP_INTEROP_SERVER_HELPER_H
 
 
  |