123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <meta http-equiv="X-UA-Compatible" content="IE=9"/>
- <meta name="generator" content="Doxygen 1.8.13"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <title>GRPC C++: grpc::Server Class Reference</title>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="dynsections.js"></script>
- <link href="search/search.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="search/searchdata.js"></script>
- <script type="text/javascript" src="search/search.js"></script>
- <link href="doxygen.css" rel="stylesheet" type="text/css" />
- <script type="text/javascript"> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-60127042-1', 'auto'); ga('send', 'pageview'); </script></head>
- <body>
- <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
- <div id="titlearea">
- <table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
- <td id="projectalign" style="padding-left: 0.5em;">
- <div id="projectname">GRPC C++
-  <span id="projectnumber">1.13.0-dev</span>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.8.13 -->
- <script type="text/javascript">
- var searchBox = new SearchBox("searchBox", "search",false,'Search');
- </script>
- <script type="text/javascript" src="menudata.js"></script>
- <script type="text/javascript" src="menu.js"></script>
- <script type="text/javascript">
- $(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
- });
- </script>
- <div id="main-nav"></div>
- <!-- window showing the filter options -->
- <div id="MSearchSelectWindow"
- onmouseover="return searchBox.OnSearchSelectShow()"
- onmouseout="return searchBox.OnSearchSelectHide()"
- onkeydown="return searchBox.OnSearchSelectKey(event)">
- </div>
- <!-- iframe showing the search results (closed by default) -->
- <div id="MSearchResultsWindow">
- <iframe src="javascript:void(0)" frameborder="0"
- name="MSearchResults" id="MSearchResults">
- </iframe>
- </div>
- <div id="nav-path" class="navpath">
- <ul>
- <li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server.html">Server</a></li> </ul>
- </div>
- </div><!-- top -->
- <div class="header">
- <div class="summary">
- <a href="#nested-classes">Data Structures</a> |
- <a href="#pub-methods">Public Member Functions</a> |
- <a href="#pub-static-methods">Static Public Member Functions</a> |
- <a href="#pro-methods">Protected Member Functions</a> |
- <a href="#friends">Friends</a> </div>
- <div class="headertitle">
- <div class="title">grpc::Server Class Reference</div> </div>
- </div><!--header-->
- <div class="contents">
- <p>Represents a gRPC server.
- <a href="classgrpc_1_1_server.html#details">More...</a></p>
- <p><code>#include <<a class="el" href="grpcpp_2server_8h_source.html">server.h</a>></code></p>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
- Data Structures</h2></td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_1_1_global_callbacks.html">GlobalCallbacks</a></td></tr>
- <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Global callbacks are a set of hooks that are called when server events occur. <a href="classgrpc_1_1_server_1_1_global_callbacks.html#details">More...</a><br /></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
- Public Member Functions</h2></td></tr>
- <tr class="memitem:aa13591ff1bb2c5d871778189b391feb2"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#aa13591ff1bb2c5d871778189b391feb2">~Server</a> ()</td></tr>
- <tr class="separator:aa13591ff1bb2c5d871778189b391feb2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a79f3e43452fd885df4002ed541d8ca7c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a79f3e43452fd885df4002ed541d8ca7c">Wait</a> () override</td></tr>
- <tr class="memdesc:a79f3e43452fd885df4002ed541d8ca7c"><td class="mdescLeft"> </td><td class="mdescRight">Block until the server shuts down. <a href="#a79f3e43452fd885df4002ed541d8ca7c">More...</a><br /></td></tr>
- <tr class="separator:a79f3e43452fd885df4002ed541d8ca7c"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7ff9f4e7ef7d51747dc362dcae9483fd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a7ff9f4e7ef7d51747dc362dcae9483fd">c_server</a> ()</td></tr>
- <tr class="memdesc:a7ff9f4e7ef7d51747dc362dcae9483fd"><td class="mdescLeft"> </td><td class="mdescRight">Returns a <em>raw</em> pointer to the underlying <em>grpc_server</em> instance. <a href="#a7ff9f4e7ef7d51747dc362dcae9483fd">More...</a><br /></td></tr>
- <tr class="separator:a7ff9f4e7ef7d51747dc362dcae9483fd"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a8ca33dab1210bf57468e44d000b138ee"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_health_check_service_interface.html">HealthCheckServiceInterface</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a8ca33dab1210bf57468e44d000b138ee">GetHealthCheckService</a> () const</td></tr>
- <tr class="memdesc:a8ca33dab1210bf57468e44d000b138ee"><td class="mdescLeft"> </td><td class="mdescRight">Returns the health check service. <a href="#a8ca33dab1210bf57468e44d000b138ee">More...</a><br /></td></tr>
- <tr class="separator:a8ca33dab1210bf57468e44d000b138ee"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ad48818dac08e28a2ea3694d1f5462c6b"><td class="memItemLeft" align="right" valign="top">std::shared_ptr< <a class="el" href="classgrpc_1_1_channel.html">Channel</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#ad48818dac08e28a2ea3694d1f5462c6b">InProcessChannel</a> (const <a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &args)</td></tr>
- <tr class="memdesc:ad48818dac08e28a2ea3694d1f5462c6b"><td class="mdescLeft"> </td><td class="mdescRight">Establish a channel for in-process communication. <a href="#ad48818dac08e28a2ea3694d1f5462c6b">More...</a><br /></td></tr>
- <tr class="separator:ad48818dac08e28a2ea3694d1f5462c6b"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="inherit_header pub_methods_classgrpc_1_1_server_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_server_interface')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classgrpc_1_1_server_interface.html">grpc::ServerInterface</a></td></tr>
- <tr class="memitem:a9908106bf62f6146eedbfa0dcce21b1a inherit pub_methods_classgrpc_1_1_server_interface"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_interface.html#a9908106bf62f6146eedbfa0dcce21b1a">~ServerInterface</a> ()</td></tr>
- <tr class="separator:a9908106bf62f6146eedbfa0dcce21b1a inherit pub_methods_classgrpc_1_1_server_interface"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a644772d11101318f1424e595dee73ccf inherit pub_methods_classgrpc_1_1_server_interface"><td class="memTemplParams" colspan="2">template<class T > </td></tr>
- <tr class="memitem:a644772d11101318f1424e595dee73ccf inherit pub_methods_classgrpc_1_1_server_interface"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_interface.html#a644772d11101318f1424e595dee73ccf">Shutdown</a> (const T &deadline)</td></tr>
- <tr class="memdesc:a644772d11101318f1424e595dee73ccf inherit pub_methods_classgrpc_1_1_server_interface"><td class="mdescLeft"> </td><td class="mdescRight">Shutdown the server, blocking until all rpc processing finishes. <a href="classgrpc_1_1_server_interface.html#a644772d11101318f1424e595dee73ccf">More...</a><br /></td></tr>
- <tr class="separator:a644772d11101318f1424e595dee73ccf inherit pub_methods_classgrpc_1_1_server_interface"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a6a1d337270116c95f387e0abf01f6c6c inherit pub_methods_classgrpc_1_1_server_interface"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_interface.html#a6a1d337270116c95f387e0abf01f6c6c">Shutdown</a> ()</td></tr>
- <tr class="memdesc:a6a1d337270116c95f387e0abf01f6c6c inherit pub_methods_classgrpc_1_1_server_interface"><td class="mdescLeft"> </td><td class="mdescRight">Shutdown the server, waiting for all rpc processing to finish. <a href="classgrpc_1_1_server_interface.html#a6a1d337270116c95f387e0abf01f6c6c">More...</a><br /></td></tr>
- <tr class="separator:a6a1d337270116c95f387e0abf01f6c6c inherit pub_methods_classgrpc_1_1_server_interface"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="inherit_header pub_methods_classgrpc_1_1internal_1_1_call_hook"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1internal_1_1_call_hook')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classgrpc_1_1internal_1_1_call_hook.html">grpc::internal::CallHook</a></td></tr>
- <tr class="memitem:a351f3060b7d6378dabcec53d21842487 inherit pub_methods_classgrpc_1_1internal_1_1_call_hook"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1internal_1_1_call_hook.html#a351f3060b7d6378dabcec53d21842487">~CallHook</a> ()</td></tr>
- <tr class="separator:a351f3060b7d6378dabcec53d21842487 inherit pub_methods_classgrpc_1_1internal_1_1_call_hook"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
- Static Public Member Functions</h2></td></tr>
- <tr class="memitem:a929329bdc505ebb7968132b2c34ffc78"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a929329bdc505ebb7968132b2c34ffc78">SetGlobalCallbacks</a> (<a class="el" href="classgrpc_1_1_server_1_1_global_callbacks.html">GlobalCallbacks</a> *callbacks)</td></tr>
- <tr class="memdesc:a929329bdc505ebb7968132b2c34ffc78"><td class="mdescLeft"> </td><td class="mdescRight">Set the global callback object. <a href="#a929329bdc505ebb7968132b2c34ffc78">More...</a><br /></td></tr>
- <tr class="separator:a929329bdc505ebb7968132b2c34ffc78"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
- Protected Member Functions</h2></td></tr>
- <tr class="memitem:a715df719c9ef4db88a3d4ef10eb8f423"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a715df719c9ef4db88a3d4ef10eb8f423">RegisterService</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> *host, <a class="el" href="classgrpc_1_1_service.html">Service</a> *service) override</td></tr>
- <tr class="memdesc:a715df719c9ef4db88a3d4ef10eb8f423"><td class="mdescLeft"> </td><td class="mdescRight">Register a service. <a href="#a715df719c9ef4db88a3d4ef10eb8f423">More...</a><br /></td></tr>
- <tr class="separator:a715df719c9ef4db88a3d4ef10eb8f423"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a8b8678faf043eaecc0fda4ebf526d5db"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a8b8678faf043eaecc0fda4ebf526d5db">AddListeningPort</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &addr, <a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a> *creds) override</td></tr>
- <tr class="memdesc:a8b8678faf043eaecc0fda4ebf526d5db"><td class="mdescLeft"> </td><td class="mdescRight">Try binding the server to the given <em>addr</em> endpoint (port, and optionally including IP address to bind to). <a href="#a8b8678faf043eaecc0fda4ebf526d5db">More...</a><br /></td></tr>
- <tr class="separator:a8b8678faf043eaecc0fda4ebf526d5db"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ab7c814470486b256eef7c202de2ef9f7"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#ab7c814470486b256eef7c202de2ef9f7">Server</a> (int max_message_size, <a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> *args, std::shared_ptr< std::vector< std::unique_ptr< <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> >>> sync_server_cqs, int min_pollers, int max_pollers, int sync_cq_timeout_msec)</td></tr>
- <tr class="memdesc:ab7c814470486b256eef7c202de2ef9f7"><td class="mdescLeft"> </td><td class="mdescRight"><a class="el" href="classgrpc_1_1_server.html" title="Represents a gRPC server. ">Server</a> constructors. <a href="#ab7c814470486b256eef7c202de2ef9f7">More...</a><br /></td></tr>
- <tr class="separator:ab7c814470486b256eef7c202de2ef9f7"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:affff5d179b3a71617cbb02062f49eea4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#affff5d179b3a71617cbb02062f49eea4">Start</a> (<a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> **cqs, size_t num_cqs) override</td></tr>
- <tr class="memdesc:affff5d179b3a71617cbb02062f49eea4"><td class="mdescLeft"> </td><td class="mdescRight">Start the server. <a href="#affff5d179b3a71617cbb02062f49eea4">More...</a><br /></td></tr>
- <tr class="separator:affff5d179b3a71617cbb02062f49eea4"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a01bdfb4554d12a10bdc9cf875ffa74dd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a01bdfb4554d12a10bdc9cf875ffa74dd">server</a> () override</td></tr>
- <tr class="separator:a01bdfb4554d12a10bdc9cf875ffa74dd"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="inherit_header pro_methods_classgrpc_1_1_server_interface"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classgrpc_1_1_server_interface')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="classgrpc_1_1_server_interface.html">grpc::ServerInterface</a></td></tr>
- <tr class="memitem:a9e786d4bd3956e420c08a8f9671cbc00 inherit pro_methods_classgrpc_1_1_server_interface"><td class="memTemplParams" colspan="2">template<class Message > </td></tr>
- <tr class="memitem:a9e786d4bd3956e420c08a8f9671cbc00 inherit pro_methods_classgrpc_1_1_server_interface"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_interface.html#a9e786d4bd3956e420c08a8f9671cbc00">RequestAsyncCall</a> (<a class="el" href="classgrpc_1_1internal_1_1_rpc_service_method.html">internal::RpcServiceMethod</a> *method, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *context, <a class="el" href="classgrpc_1_1internal_1_1_server_async_streaming_interface.html">internal::ServerAsyncStreamingInterface</a> *stream, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *call_cq, <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *notification_cq, void *tag, Message *message)</td></tr>
- <tr class="separator:a9e786d4bd3956e420c08a8f9671cbc00 inherit pro_methods_classgrpc_1_1_server_interface"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a3967d9d5d9eb3e622c7703093e2cfcca inherit pro_methods_classgrpc_1_1_server_interface"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_interface.html#a3967d9d5d9eb3e622c7703093e2cfcca">RequestAsyncCall</a> (<a class="el" href="classgrpc_1_1internal_1_1_rpc_service_method.html">internal::RpcServiceMethod</a> *method, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *context, <a class="el" href="classgrpc_1_1internal_1_1_server_async_streaming_interface.html">internal::ServerAsyncStreamingInterface</a> *stream, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *call_cq, <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *notification_cq, void *tag)</td></tr>
- <tr class="separator:a3967d9d5d9eb3e622c7703093e2cfcca inherit pro_methods_classgrpc_1_1_server_interface"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af25fd8b6fe3818ca67210f0a96b3076a inherit pro_methods_classgrpc_1_1_server_interface"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_interface.html#af25fd8b6fe3818ca67210f0a96b3076a">RequestAsyncGenericCall</a> (<a class="el" href="classgrpc_1_1_generic_server_context.html">GenericServerContext</a> *context, <a class="el" href="classgrpc_1_1internal_1_1_server_async_streaming_interface.html">internal::ServerAsyncStreamingInterface</a> *stream, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *call_cq, <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *notification_cq, void *tag)</td></tr>
- <tr class="separator:af25fd8b6fe3818ca67210f0a96b3076a inherit pro_methods_classgrpc_1_1_server_interface"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
- Friends</h2></td></tr>
- <tr class="memitem:afa12bc5912105e1966887391881de595"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#afa12bc5912105e1966887391881de595">AsyncGenericService</a></td></tr>
- <tr class="separator:afa12bc5912105e1966887391881de595"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a8c2db91f514d534f06396d90c1b1f2c4"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a8c2db91f514d534f06396d90c1b1f2c4">ServerBuilder</a></td></tr>
- <tr class="separator:a8c2db91f514d534f06396d90c1b1f2c4"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a3531f118e1eafdfb790596dad66c8ed9"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a3531f118e1eafdfb790596dad66c8ed9">ServerInitializer</a></td></tr>
- <tr class="separator:a3531f118e1eafdfb790596dad66c8ed9"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <div class="textblock"><p>Represents a gRPC server. </p>
- <p>Use a <em><a class="el" href="classgrpc_1_1_server_builder.html" title="A builder class for the creation and startup of grpc::Server instances. ">grpc::ServerBuilder</a></em> to create, configure, and start <em><a class="el" href="classgrpc_1_1_server.html" title="Represents a gRPC server. ">Server</a></em> instances. </p>
- </div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
- <a id="aa13591ff1bb2c5d871778189b391feb2"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa13591ff1bb2c5d871778189b391feb2">◆ </a></span>~Server()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Server::~Server </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- </div>
- </div>
- <a id="ab7c814470486b256eef7c202de2ef9f7"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ab7c814470486b256eef7c202de2ef9f7">◆ </a></span>Server()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">grpc::Server::Server </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>max_message_size</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> * </td>
- <td class="paramname"><em>args</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">std::shared_ptr< std::vector< std::unique_ptr< <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> >>> </td>
- <td class="paramname"><em>sync_server_cqs</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>min_pollers</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>max_pollers</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>sync_cq_timeout_msec</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">protected</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p><a class="el" href="classgrpc_1_1_server.html" title="Represents a gRPC server. ">Server</a> constructors. </p>
- <p>To be used by <em><a class="el" href="classgrpc_1_1_server_builder.html" title="A builder class for the creation and startup of grpc::Server instances. ">ServerBuilder</a></em> only.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">max_message_size</td><td>Maximum message length that the channel can receive.</td></tr>
- <tr><td class="paramname">args</td><td>The channel args</td></tr>
- <tr><td class="paramname">sync_server_cqs</td><td>The completion queues to use if the server is a synchronous server (or a hybrid server). The server polls for new RPCs on these queues</td></tr>
- <tr><td class="paramname">min_pollers</td><td>The minimum number of polling threads per server completion queue (in param sync_server_cqs) to use for listening to incoming requests (used only in case of sync server)</td></tr>
- <tr><td class="paramname">max_pollers</td><td>The maximum number of polling threads per server completion queue (in param sync_server_cqs) to use for listening to incoming requests (used only in case of sync server)</td></tr>
- <tr><td class="paramname">sync_cq_timeout_msec</td><td>The timeout to use when calling AsyncNext() on server completion queues passed via sync_server_cqs param. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <h2 class="groupheader">Member Function Documentation</h2>
- <a id="a8b8678faf043eaecc0fda4ebf526d5db"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a8b8678faf043eaecc0fda4ebf526d5db">◆ </a></span>AddListeningPort()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">int grpc::Server::AddListeningPort </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> & </td>
- <td class="paramname"><em>addr</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a> * </td>
- <td class="paramname"><em>creds</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Try binding the server to the given <em>addr</em> endpoint (port, and optionally including IP address to bind to). </p>
- <p>It can be invoked multiple times. Should be used before starting the server.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">addr</td><td>The address to try to bind to the server (eg, localhost:1234, 192.168.1.1:31416, [::1]:27182, etc.). </td></tr>
- <tr><td class="paramname">creds</td><td>The credentials associated with the server.</td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>bound port number on success, 0 on failure.</dd></dl>
- <dl class="section warning"><dt>Warning</dt><dd>It is an error to call this method on an already started server. </dd></dl>
- <p>Implements <a class="el" href="classgrpc_1_1_server_interface.html#ae3716834f7d4aec1883e36e99c9c5123">grpc::ServerInterface</a>.</p>
- </div>
- </div>
- <a id="a7ff9f4e7ef7d51747dc362dcae9483fd"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a7ff9f4e7ef7d51747dc362dcae9483fd">◆ </a></span>c_server()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a>* grpc::Server::c_server </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns a <em>raw</em> pointer to the underlying <em>grpc_server</em> instance. </p>
- <p>EXPERIMENTAL: for internal/test use only </p>
- </div>
- </div>
- <a id="a8ca33dab1210bf57468e44d000b138ee"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a8ca33dab1210bf57468e44d000b138ee">◆ </a></span>GetHealthCheckService()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classgrpc_1_1_health_check_service_interface.html">HealthCheckServiceInterface</a>* grpc::Server::GetHealthCheckService </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td> const</td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns the health check service. </p>
- </div>
- </div>
- <a id="ad48818dac08e28a2ea3694d1f5462c6b"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ad48818dac08e28a2ea3694d1f5462c6b">◆ </a></span>InProcessChannel()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">std::shared_ptr<<a class="el" href="classgrpc_1_1_channel.html">Channel</a>> grpc::Server::InProcessChannel </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> & </td>
- <td class="paramname"><em>args</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Establish a channel for in-process communication. </p>
- </div>
- </div>
- <a id="a715df719c9ef4db88a3d4ef10eb8f423"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a715df719c9ef4db88a3d4ef10eb8f423">◆ </a></span>RegisterService()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">bool grpc::Server::RegisterService </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> * </td>
- <td class="paramname"><em>host</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_service.html">Service</a> * </td>
- <td class="paramname"><em>service</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Register a service. </p>
- <p>This call does not take ownership of the service. The service must exist for the lifetime of the <a class="el" href="classgrpc_1_1_server.html" title="Represents a gRPC server. ">Server</a> instance. </p>
- <p>Implements <a class="el" href="classgrpc_1_1_server_interface.html#af51988df89cdcc8ad7b0b1d528717dad">grpc::ServerInterface</a>.</p>
- </div>
- </div>
- <a id="a01bdfb4554d12a10bdc9cf875ffa74dd"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a01bdfb4554d12a10bdc9cf875ffa74dd">◆ </a></span>server()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a>* grpc::Server::server </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Implements <a class="el" href="classgrpc_1_1_server_interface.html#a8e9cf80377d3fd1f110089ad16ec79e7">grpc::ServerInterface</a>.</p>
- </div>
- </div>
- <a id="a929329bdc505ebb7968132b2c34ffc78"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a929329bdc505ebb7968132b2c34ffc78">◆ </a></span>SetGlobalCallbacks()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void grpc::Server::SetGlobalCallbacks </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_server_1_1_global_callbacks.html">GlobalCallbacks</a> * </td>
- <td class="paramname"><em>callbacks</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Set the global callback object. </p>
- <p>Can only be called once per application. Does not take ownership of callbacks, and expects the pointed to object to be alive until all server objects in the process have been destroyed. The same <em><a class="el" href="classgrpc_1_1_server_1_1_global_callbacks.html" title="Global callbacks are a set of hooks that are called when server events occur. ">GlobalCallbacks</a></em> object will be used throughout the application and is shared among all <em><a class="el" href="classgrpc_1_1_server.html" title="Represents a gRPC server. ">Server</a></em> objects. </p>
- </div>
- </div>
- <a id="affff5d179b3a71617cbb02062f49eea4"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#affff5d179b3a71617cbb02062f49eea4">◆ </a></span>Start()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void grpc::Server::Start </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> ** </td>
- <td class="paramname"><em>cqs</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">size_t </td>
- <td class="paramname"><em>num_cqs</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Start the server. </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">cqs</td><td>Completion queues for handling asynchronous services. The caller is required to keep all completion queues live until the server is destroyed. </td></tr>
- <tr><td class="paramname">num_cqs</td><td>How many completion queues does <em>cqs</em> hold. </td></tr>
- </table>
- </dd>
- </dl>
- <p>Implements <a class="el" href="classgrpc_1_1_server_interface.html#aa3931522a05cd6b2783b550b4066a7d9">grpc::ServerInterface</a>.</p>
- </div>
- </div>
- <a id="a79f3e43452fd885df4002ed541d8ca7c"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a79f3e43452fd885df4002ed541d8ca7c">◆ </a></span>Wait()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void grpc::Server::Wait </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Block until the server shuts down. </p>
- <dl class="section warning"><dt>Warning</dt><dd>The server must be either shutting down or some other thread must call <em>Shutdown</em> for this function to ever return. </dd></dl>
- <p>Implements <a class="el" href="classgrpc_1_1_server_interface.html#ac36477b6a7593a4e4608c7eb712b0d70">grpc::ServerInterface</a>.</p>
- </div>
- </div>
- <h2 class="groupheader">Friends And Related Function Documentation</h2>
- <a id="afa12bc5912105e1966887391881de595"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#afa12bc5912105e1966887391881de595">◆ </a></span>AsyncGenericService</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">friend class <a class="el" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">friend</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- </div>
- </div>
- <a id="a8c2db91f514d534f06396d90c1b1f2c4"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a8c2db91f514d534f06396d90c1b1f2c4">◆ </a></span>ServerBuilder</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">friend class <a class="el" href="classgrpc_1_1_server_builder.html">ServerBuilder</a></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">friend</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- </div>
- </div>
- <a id="a3531f118e1eafdfb790596dad66c8ed9"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a3531f118e1eafdfb790596dad66c8ed9">◆ </a></span>ServerInitializer</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">friend class <a class="el" href="classgrpc_1_1_server_initializer.html">ServerInitializer</a></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">friend</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- </div>
- </div>
- <hr/>The documentation for this class was generated from the following file:<ul>
- <li>include/grpcpp/<a class="el" href="grpcpp_2server_8h_source.html">server.h</a></li>
- </ul>
- </div><!-- contents -->
- <!-- start footer part -->
- <hr class="footer"/><address class="footer"><small>
- Generated on Tue May 15 2018 17:01:01 for GRPC C++ by  <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/>
- </a> 1.8.13
- </small></address>
- </body>
- </html>
|