| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605 | <!DOCTYPE html><html lang="en"><head>    <meta charset="utf-8">    <title>JSDoc: Module: src/client</title>    <script src="scripts/prettify/prettify.js"> </script>    <script src="scripts/prettify/lang-css.js"> </script>    <!--[if lt IE 9]>      <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>    <![endif]-->    <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">    <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"></head><body><div id="main">    <h1 class="page-title">Module: src/client</h1>    <section><header>                                    </header><article>    <div class="container-overview">                        <div class="description">Client moduleThis module contains the factory method for creating Client classes, and themethod calling code for all types of methods.For example, to create a client and call a method on it:var proto_obj = grpc.load(proto_file_path);var Client = proto_obj.package.subpackage.ServiceName;var client = new Client(server_address, client_credentials);var call = client.unaryMethod(arguments, callback);</div>                            <dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line34">line 34</a>    </li></ul></dd>                </dl>                </div>                    <h3 class="subsection-title">Classes</h3>        <dl>            <dt><a href="module-src_client-ClientDuplexStream.html">ClientDuplexStream</a></dt>            <dd></dd>                    <dt><a href="module-src_client-ClientReadableStream.html">ClientReadableStream</a></dt>            <dd></dd>                    <dt><a href="module-src_client-ClientWritableStream.html">ClientWritableStream</a></dt>            <dd></dd>        </dl>                         <h3 class="subsection-title">Members</h3>                    <h4 class="name" id=".callError"><span class="type-signature">(static) </span>callError<span class="type-signature"></span></h4><div class="description">    See docs for client.callError</div><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line839">line 839</a>    </li></ul></dd>                </dl>                    <h4 class="name" id=".status"><span class="type-signature">(static) </span>status<span class="type-signature"></span></h4><div class="description">    Map of status code names to status codes</div><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line834">line 834</a>    </li></ul></dd>                </dl>                    <h4 class="name" id="~deprecated_request_wrap"><span class="type-signature">(inner) </span>deprecated_request_wrap<span class="type-signature"></span></h4><div class="description">    Map with wrappers for each type of requester function to make it use the oldargument order with optional arguments after the callback.</div><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line664">line 664</a>    </li></ul></dd>                </dl>                    <h4 class="name" id="~requester_makers"><span class="type-signature">(inner) </span>requester_makers<span class="type-signature"></span></h4><div class="description">    Map with short names for each of the requester maker functions. Used inmakeClientConstructor</div><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line646">line 646</a>    </li></ul></dd>                </dl>                        <h3 class="subsection-title">Methods</h3>                            <h4 class="name" id=".getClientChannel"><span class="type-signature">(static) </span>getClientChannel<span class="signature">(client)</span><span class="type-signature"> → {Channel}</span></h4>    <div class="description">    Return the underlying channel object for the specified client</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>client</code></td>                        <td class="type">                            <span class="param-type">Client</span>                        </td>                                    <td class="description last"></td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line776">line 776</a>    </li></ul></dd>                </dl><h5>Returns:</h5>        <div class="param-desc">    The channel</div><dl>    <dt>        Type    </dt>    <dd>        <span class="param-type">Channel</span>    </dd></dl>                                <h4 class="name" id=".makeClientConstructor"><span class="type-signature">(static) </span>makeClientConstructor<span class="signature">(methods, serviceName, class_options)</span><span class="type-signature"> → {function}</span></h4>    <div class="description">    Creates a constructor for a client with the given methods. The methods objectmaps method name to an object with the following keys:path: The path on the server for accessing the method. For example, for    protocol buffers, we use "/service_name/method_name"requestStream: bool indicating whether the client sends a streamresonseStream: bool indicating whether the server sends a streamrequestSerialize: function to serialize request objectsresponseDeserialize: function to deserialize response objects</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>methods</code></td>                        <td class="type">                            <span class="param-type">Object</span>                        </td>                                    <td class="description last">An object mapping method names to method attributes</td>        </tr>            <tr>                            <td class="name"><code>serviceName</code></td>                        <td class="type">                            <span class="param-type">string</span>                        </td>                                    <td class="description last">The fully qualified name of the service</td>        </tr>            <tr>                            <td class="name"><code>class_options</code></td>                        <td class="type">                            <span class="param-type">Object</span>                        </td>                                    <td class="description last">An options object. Currently only uses the key    deprecatedArgumentOrder, a boolean that Indicates that the old argument    order should be used for methods, with optional arguments at the end    instead of the callback at the end. Defaults to false. This option is    only a temporary stopgap measure to smooth an API breakage.    It is deprecated, and new code should not use it.</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line706">line 706</a>    </li></ul></dd>                </dl><h5>Returns:</h5>        <div class="param-desc">    New client constructor</div><dl>    <dt>        Type    </dt>    <dd>        <span class="param-type">function</span>    </dd></dl>                                <h4 class="name" id=".makeProtobufClientConstructor"><span class="type-signature">(static) </span>makeProtobufClientConstructor<span class="signature">(service, options<span class="signature-attributes">opt</span>)</span><span class="type-signature"> → {function}</span></h4>    <div class="description">    Creates a constructor for clients for the given service</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                <th>Attributes</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>service</code></td>                        <td class="type">                            <span class="param-type">ProtoBuf.Reflect.Service</span>                        </td>                            <td class="attributes">                                                                </td>                                    <td class="description last">The service to generate a client    for</td>        </tr>            <tr>                            <td class="name"><code>options</code></td>                        <td class="type">                            <span class="param-type">Object</span>                        </td>                            <td class="attributes">                                    <optional><br>                                                                </td>                                    <td class="description last">Options to apply to the client</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line817">line 817</a>    </li></ul></dd>                </dl><h5>Returns:</h5>        <div class="param-desc">    New client constructor</div><dl>    <dt>        Type    </dt>    <dd>        <span class="param-type">function</span>    </dd></dl>                                <h4 class="name" id=".waitForClientReady"><span class="type-signature">(static) </span>waitForClientReady<span class="signature">(client, deadline, callback)</span><span class="type-signature"></span></h4>    <div class="description">    Wait for the client to be ready. The callback will be called when theclient has successfully connected to the server, and it will be calledwith an error if the attempt to connect to the server has unrecoverabllyfailed or if the deadline expires. This function will make the channelstart connecting if it has not already done so.</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>client</code></td>                        <td class="type">                            <span class="param-type">Client</span>                        </td>                                    <td class="description last">The client to wait on</td>        </tr>            <tr>                            <td class="name"><code>deadline</code></td>                        <td class="type">                            <span class="param-type">Date</span>|<span class="param-type">Number</span>                        </td>                                    <td class="description last">When to stop waiting for a connection. Pass    Infinity to wait forever.</td>        </tr>            <tr>                            <td class="name"><code>callback</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The callback to call when done attempting    to connect.</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line792">line 792</a>    </li></ul></dd>                </dl>                            <h4 class="name" id="~_emitStatusIfDone"><span class="type-signature">(inner) </span>_emitStatusIfDone<span class="signature">()</span><span class="type-signature"></span></h4>    <div class="description">    If we have both processed all incoming messages and received the status fromthe server, emit the status. Otherwise, do nothing.</div><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line178">line 178</a>    </li></ul></dd>                </dl>                            <h4 class="name" id="~_readsDone"><span class="type-signature">(inner) </span>_readsDone<span class="signature">(status<span class="signature-attributes">non-null</span>)</span><span class="type-signature"></span></h4>    <div class="description">    Called when all messages from the server have been processed. The statusparameter indicates that the call should end with that status. statusdefaults to OK if not provided.</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>status</code></td>                        <td class="type">                            <span class="param-type">Object</span>                        </td>                                    <td class="description last">The status that the call should end with</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line148">line 148</a>    </li></ul></dd>                </dl>                            <h4 class="name" id="~_receiveStatus"><span class="type-signature">(inner) </span>_receiveStatus<span class="signature">()</span><span class="type-signature"></span></h4>    <div class="description">    Called to indicate that we have received a status from the server.</div><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line166">line 166</a>    </li></ul></dd>                </dl>                            <h4 class="name" id="~cancel"><span class="type-signature">(inner) </span>cancel<span class="signature">()</span><span class="type-signature"></span></h4>    <div class="description">    Cancel the ongoing call</div><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line290">line 290</a>    </li></ul></dd>                </dl>                            <h4 class="name" id="~getCall"><span class="type-signature">(inner) </span>getCall<span class="signature">(options)</span><span class="type-signature"></span></h4>    <div class="description">    Get a call object built with the provided options. Keys for options are'deadline', which takes a date or number, and 'host', which takes a stringand overrides the hostname to connect to.</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>options</code></td>                        <td class="type">                            <span class="param-type">Object</span>                        </td>                                    <td class="description last">Options map.</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line318">line 318</a>    </li></ul></dd>                </dl>                            <h4 class="name" id="~getPeer"><span class="type-signature">(inner) </span>getPeer<span class="signature">()</span><span class="type-signature"> → {string}</span></h4>    <div class="description">    Get the endpoint this call/stream is connected to.</div><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line303">line 303</a>    </li></ul></dd>                </dl><h5>Returns:</h5>        <div class="param-desc">    The URI of the endpoint</div><dl>    <dt>        Type    </dt>    <dd>        <span class="param-type">string</span>    </dd></dl>                                <h4 class="name" id="~makeBidiStreamRequestFunction"><span class="type-signature">(inner) </span>makeBidiStreamRequestFunction<span class="signature">(method, serialize, deserialize)</span><span class="type-signature"> → {function}</span></h4>    <div class="description">    Get a function that can make bidirectional stream requests to the specifiedmethod.</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>method</code></td>                        <td class="type">                            <span class="param-type">string</span>                        </td>                                    <td class="description last">The name of the method to request</td>        </tr>            <tr>                            <td class="name"><code>serialize</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The serialization function for inputs</td>        </tr>            <tr>                            <td class="name"><code>deserialize</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The deserialization function for    outputs</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line593">line 593</a>    </li></ul></dd>                </dl><h5>Returns:</h5>        <div class="param-desc">    makeBidiStreamRequest</div><dl>    <dt>        Type    </dt>    <dd>        <span class="param-type">function</span>    </dd></dl>                                <h4 class="name" id="~makeClientStreamRequestFunction"><span class="type-signature">(inner) </span>makeClientStreamRequestFunction<span class="signature">(method, serialize, deserialize)</span><span class="type-signature"> → {function}</span></h4>    <div class="description">    Get a function that can make client stream requests to the specified method.</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>method</code></td>                        <td class="type">                            <span class="param-type">string</span>                        </td>                                    <td class="description last">The name of the method to request</td>        </tr>            <tr>                            <td class="name"><code>serialize</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The serialization function for inputs</td>        </tr>            <tr>                            <td class="name"><code>deserialize</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The deserialization function for    outputs</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line441">line 441</a>    </li></ul></dd>                </dl><h5>Returns:</h5>        <div class="param-desc">    makeClientStreamRequest</div><dl>    <dt>        Type    </dt>    <dd>        <span class="param-type">function</span>    </dd></dl>                                <h4 class="name" id="~makeServerStreamRequestFunction"><span class="type-signature">(inner) </span>makeServerStreamRequestFunction<span class="signature">(method, serialize, deserialize)</span><span class="type-signature"> → {function}</span></h4>    <div class="description">    Get a function that can make server stream requests to the specified method.</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>method</code></td>                        <td class="type">                            <span class="param-type">string</span>                        </td>                                    <td class="description last">The name of the method to request</td>        </tr>            <tr>                            <td class="name"><code>serialize</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The serialization function for inputs</td>        </tr>            <tr>                            <td class="name"><code>deserialize</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The deserialization function for    outputs</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line527">line 527</a>    </li></ul></dd>                </dl><h5>Returns:</h5>        <div class="param-desc">    makeServerStreamRequest</div><dl>    <dt>        Type    </dt>    <dd>        <span class="param-type">function</span>    </dd></dl>                                <h4 class="name" id="~makeUnaryRequestFunction"><span class="type-signature">(inner) </span>makeUnaryRequestFunction<span class="signature">(method, serialize, deserialize)</span><span class="type-signature"> → {function}</span></h4>    <div class="description">    Get a function that can make unary requests to the specified method.</div>    <h5>Parameters:</h5>    <table class="params">    <thead>    <tr>                <th>Name</th>                <th>Type</th>                        <th class="last">Description</th>    </tr>    </thead>    <tbody>            <tr>                            <td class="name"><code>method</code></td>                        <td class="type">                            <span class="param-type">string</span>                        </td>                                    <td class="description last">The name of the method to request</td>        </tr>            <tr>                            <td class="name"><code>serialize</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The serialization function for inputs</td>        </tr>            <tr>                            <td class="name"><code>deserialize</code></td>                        <td class="type">                            <span class="param-type">function</span>                        </td>                                    <td class="description last">The deserialization function for    outputs</td>        </tr>        </tbody></table><dl class="details">                                                        <dt class="tag-source">Source:</dt>    <dd class="tag-source"><ul class="dummy"><li>        <a href="src_client.js.html">src/client.js</a>, <a href="src_client.js.html#line350">line 350</a>    </li></ul></dd>                </dl><h5>Returns:</h5>        <div class="param-desc">    makeUnaryRequest</div><dl>    <dt>        Type    </dt>    <dd>        <span class="param-type">function</span>    </dd></dl>                        </article></section></div><nav>    <h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-src_client.html">src/client</a></li><li><a href="module-src_common.html">src/common</a></li><li><a href="module-src_credentials.html">src/credentials</a></li><li><a href="module-src_metadata.html">src/metadata</a></li><li><a href="module-src_server.html">src/server</a></li></ul><h3>Classes</h3><ul><li><a href="module-src_client.makeClientConstructor-Client.html">Client</a></li><li><a href="module-src_client-ClientDuplexStream.html">ClientDuplexStream</a></li><li><a href="module-src_client-ClientReadableStream.html">ClientReadableStream</a></li><li><a href="module-src_client-ClientWritableStream.html">ClientWritableStream</a></li><li><a href="module-src_metadata-Metadata.html">Metadata</a></li><li><a href="module-src_server-Server.html">Server</a></li><li><a href="module-src_server-ServerDuplexStream.html">ServerDuplexStream</a></li><li><a href="module-src_server-ServerReadableStream.html">ServerReadableStream</a></li><li><a href="module-src_server-ServerWritableStream.html">ServerWritableStream</a></li></ul><h3>Global</h3><ul><li><a href="global.html#callError">callError</a></li><li><a href="global.html#credentials">credentials</a></li><li><a href="global.html#getClientChannel">getClientChannel</a></li><li><a href="global.html#load">load</a></li><li><a href="global.html#loadObject">loadObject</a></li><li><a href="global.html#logVerbosity">logVerbosity</a></li><li><a href="global.html#makeGenericClientConstructor">makeGenericClientConstructor</a></li><li><a href="global.html#Metadata">Metadata</a></li><li><a href="global.html#propagate">propagate</a></li><li><a href="global.html#Server">Server</a></li><li><a href="global.html#ServerCredentials">ServerCredentials</a></li><li><a href="global.html#setLogger">setLogger</a></li><li><a href="global.html#setLogVerbosity">setLogVerbosity</a></li><li><a href="global.html#status">status</a></li><li><a href="global.html#waitForClientReady">waitForClientReady</a></li><li><a href="global.html#writeFlags">writeFlags</a></li></ul></nav><br class="clear"><footer>    Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.0</a> on Thu Aug 18 2016 12:19:14 GMT-0700 (PDT)</footer><script> prettyPrint(); </script><script src="scripts/linenumber.js"> </script></body></html>
 |