grpc.credentials.html 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width">
  6. <title>Documentation Namespace: credentials</title>
  7. <!--[if lt IE 9]>
  8. <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
  9. <![endif]-->
  10. <link type="text/css" rel="stylesheet" href="styles/sunlight.default.css">
  11. <link type="text/css" rel="stylesheet" href="styles/site.simplex.css">
  12. </head>
  13. <body>
  14. <div class="navbar navbar-default navbar-fixed-top ">
  15. <div class="container">
  16. <div class="navbar-header">
  17. <a class="navbar-brand" href="index.html">Documentation</a>
  18. <button class="navbar-toggle" type="button" data-toggle="collapse" data-target="#topNavigation">
  19. <span class="icon-bar"></span>
  20. <span class="icon-bar"></span>
  21. <span class="icon-bar"></span>
  22. </button>
  23. </div>
  24. <div class="navbar-collapse collapse" id="topNavigation">
  25. <ul class="nav navbar-nav">
  26. <li class="dropdown">
  27. <a href="namespaces.list.html" class="dropdown-toggle" data-toggle="dropdown">Namespaces<b class="caret"></b></a>
  28. <ul class="dropdown-menu ">
  29. <li><a href="grpc.html">grpc</a></li><li><a href="grpc.credentials.html">grpc.credentials</a></li>
  30. </ul>
  31. </li>
  32. <li class="dropdown">
  33. <a href="modules.list.html" class="dropdown-toggle" data-toggle="dropdown">Modules<b class="caret"></b></a>
  34. <ul class="dropdown-menu ">
  35. <li><a href="module-src_client_interceptors.html">src/client_interceptors</a></li>
  36. </ul>
  37. </li>
  38. <li class="dropdown">
  39. <a href="classes.list.html" class="dropdown-toggle" data-toggle="dropdown">Classes<b class="caret"></b></a>
  40. <ul class="dropdown-menu ">
  41. <li><a href="grpc.Channel.html">grpc.Channel</a></li><li><a href="grpc.Client.html">grpc.Client</a></li><li><a href="grpc.credentials-CallCredentials.html">grpc.credentials~CallCredentials</a></li><li><a href="grpc.credentials-ChannelCredentials.html">grpc.credentials~ChannelCredentials</a></li><li><a href="grpc.Metadata.html">grpc.Metadata</a></li><li><a href="grpc.Server.html">grpc.Server</a></li><li><a href="grpc.ServerCredentials.html">grpc.ServerCredentials</a></li><li><a href="grpc-Call.html">grpc~Call</a></li><li><a href="grpc-ClientDuplexStream.html">grpc~ClientDuplexStream</a></li><li><a href="grpc-ClientReadableStream.html">grpc~ClientReadableStream</a></li><li><a href="grpc-ClientUnaryCall.html">grpc~ClientUnaryCall</a></li><li><a href="grpc-ClientWritableStream.html">grpc~ClientWritableStream</a></li><li><a href="grpc-ServerDuplexStream.html">grpc~ServerDuplexStream</a></li><li><a href="grpc-ServerReadableStream.html">grpc~ServerReadableStream</a></li><li><a href="grpc-ServerUnaryCall.html">grpc~ServerUnaryCall</a></li><li><a href="grpc-ServerWritableStream.html">grpc~ServerWritableStream</a></li><li><a href="module-src_client_interceptors-EndListener.html">src/client_interceptors~EndListener</a></li><li><a href="module-src_client_interceptors-InterceptingCall.html">src/client_interceptors~InterceptingCall</a></li><li><a href="module-src_client_interceptors-InterceptingListener.html">src/client_interceptors~InterceptingListener</a></li><li><a href="module-src_client_interceptors-InterceptorConfigurationError.html">src/client_interceptors~InterceptorConfigurationError</a></li><li><a href="module-src_client_interceptors-ListenerBuilder.html">src/client_interceptors~ListenerBuilder</a></li><li><a href="module-src_client_interceptors-RequesterBuilder.html">src/client_interceptors~RequesterBuilder</a></li><li><a href="module-src_client_interceptors-StatusBuilder.html">src/client_interceptors~StatusBuilder</a></li>
  42. </ul>
  43. </li>
  44. <li class="dropdown">
  45. <a href="events.list.html" class="dropdown-toggle" data-toggle="dropdown">Events<b class="caret"></b></a>
  46. <ul class="dropdown-menu ">
  47. <li><a href="grpc-ClientDuplexStream.html#event:metadata">grpc~ClientDuplexStream#metadata</a></li><li><a href="grpc-ClientDuplexStream.html#event:status">grpc~ClientDuplexStream#status</a></li><li><a href="grpc-ClientReadableStream.html#event:metadata">grpc~ClientReadableStream#metadata</a></li><li><a href="grpc-ClientReadableStream.html#event:status">grpc~ClientReadableStream#status</a></li><li><a href="grpc-ClientUnaryCall.html#event:metadata">grpc~ClientUnaryCall#event:metadata</a></li><li><a href="grpc-ClientUnaryCall.html#event:status">grpc~ClientUnaryCall#event:status</a></li><li><a href="grpc-ClientWritableStream.html#event:metadata">grpc~ClientWritableStream#metadata</a></li><li><a href="grpc-ClientWritableStream.html#event:status">grpc~ClientWritableStream#status</a></li><li><a href="grpc-ServerDuplexStream.html#~event:cancelled">grpc~ServerDuplexStream~event:cancelled</a></li><li><a href="grpc-ServerReadableStream.html#~event:cancelled">grpc~ServerReadableStream~event:cancelled</a></li><li><a href="grpc-ServerUnaryCall.html#~event:cancelled">grpc~ServerUnaryCall~event:cancelled</a></li><li><a href="grpc-ServerWritableStream.html#~event:cancelled">grpc~ServerWritableStream~event:cancelled</a></li>
  48. </ul>
  49. </li>
  50. <li class="dropdown">
  51. <a href="global.html" class="dropdown-toggle" data-toggle="dropdown">Global<b class="caret"></b></a>
  52. <ul class="dropdown-menu ">
  53. <li><a href="global.html#CancelRequester">CancelRequester</a></li><li><a href="global.html#CloseRequester">CloseRequester</a></li><li><a href="global.html#createStatusError">createStatusError</a></li><li><a href="global.html#getClientInterceptors">getClientInterceptors</a></li><li><a href="global.html#getMethodType">getMethodType</a></li><li><a href="global.html#GetPeerRequester">GetPeerRequester</a></li><li><a href="global.html#Interceptor">Interceptor</a></li><li><a href="global.html#InterceptorProvider">InterceptorProvider</a></li><li><a href="global.html#loadPackageDefinition">loadPackageDefinition</a></li><li><a href="global.html#MessageListener">MessageListener</a></li><li><a href="global.html#MessageRequester">MessageRequester</a></li><li><a href="global.html#MetadataListener">MetadataListener</a></li><li><a href="global.html#MetadataRequester">MetadataRequester</a></li><li><a href="global.html#NextCall">NextCall</a></li><li><a href="global.html#StatusListener">StatusListener</a></li>
  54. </ul>
  55. </li>
  56. <li class="dropdown">
  57. <a href="externals.list.html" class="dropdown-toggle" data-toggle="dropdown">Externals<b class="caret"></b></a>
  58. <ul class="dropdown-menu ">
  59. <li><a href="external-Duplex.html">Duplex</a></li><li><a href="external-EventEmitter.html">EventEmitter</a></li><li><a href="external-GoogleCredential.html">GoogleCredential</a></li><li><a href="external-Readable.html">Readable</a></li><li><a href="external-Writable.html">Writable</a></li>
  60. </ul>
  61. </li>
  62. </ul>
  63. <div class="col-sm-3 col-md-3">
  64. <form class="navbar-form" role="search">
  65. <div class="input-group">
  66. <input type="text" class="form-control" placeholder="Search" name="q" id="search-input">
  67. <div class="input-group-btn">
  68. <button class="btn btn-default" id="search-submit"><i class="glyphicon glyphicon-search"></i></button>
  69. </div>
  70. </div>
  71. </form>
  72. </div>
  73. </div>
  74. </div>
  75. </div>
  76. <div class="container" id="toc-content">
  77. <div class="row">
  78. <div class="col-md-8">
  79. <div id="main">
  80. <h1 class="page-title">Namespace: credentials</h1>
  81. <section>
  82. <header>
  83. <h2>
  84. <span class="ancestors"><a href="grpc.html">grpc</a>.</span>
  85. credentials
  86. </h2>
  87. </header>
  88. <article>
  89. <div class="container-overview">
  90. <div class="description"><p>Credentials module</p>
  91. <p>This module contains factory methods for two different credential types:
  92. CallCredentials and ChannelCredentials. ChannelCredentials are things like
  93. SSL credentials that can be used to secure a connection, and are used to
  94. construct a Client object. CallCredentials genrally modify metadata, so they
  95. can be attached to an individual method call.</p>
  96. <p>CallCredentials can be composed with other CallCredentials to create
  97. CallCredentials. ChannelCredentials can be composed with CallCredentials
  98. to create ChannelCredentials. No combined credential can have more than
  99. one ChannelCredentials.</p>
  100. <p>For example, to create a client secured with SSL that uses Google
  101. default application credentials to authenticate:</p></div>
  102. <dl class="details">
  103. </dl>
  104. <h3>Example</h3>
  105. <pre class="sunlight-highlight-javascript">var channel_creds = credentials.createSsl(root_certs);
  106. (new GoogleAuth()).getApplicationDefault(function(err, credential) {
  107. var call_creds = credentials.createFromGoogleCredential(credential);
  108. var combined_creds = credentials.combineChannelCredentials(
  109. channel_creds, call_creds);
  110. var client = new Client(address, combined_creds);
  111. });</pre>
  112. </div>
  113. <h3 class="subsection-title">Classes</h3>
  114. <dl>
  115. <dt><a href="grpc.credentials-CallCredentials.html">CallCredentials</a></dt>
  116. <dd></dd>
  117. <dt><a href="grpc.credentials-ChannelCredentials.html">ChannelCredentials</a></dt>
  118. <dd></dd>
  119. </dl>
  120. <h3 class="subsection-title">Methods</h3>
  121. <dl>
  122. <hr>
  123. <dt>
  124. <h4 class="name" id=".combineCallCredentials"><span class="type-signature">&lt;static> </span>combineCallCredentials(credentials)</h4>
  125. </dt>
  126. <dd>
  127. <div class="description">
  128. <p>Combine any number of CallCredentials into a single CallCredentials object</p>
  129. </div>
  130. <h5>Parameters:</h5>
  131. <table class="params table table-striped">
  132. <thead>
  133. <tr>
  134. <th>Name</th>
  135. <th>Type</th>
  136. <th>Argument</th>
  137. <th class="last">Description</th>
  138. </tr>
  139. </thead>
  140. <tbody>
  141. <tr>
  142. <td class="name"><code>credentials</code></td>
  143. <td class="type">
  144. <span class="param-type"><a href="grpc.credentials-CallCredentials.html">grpc.credentials~CallCredentials</a></span>
  145. </td>
  146. <td class="attributes">
  147. &lt;repeatable><br>
  148. </td>
  149. <td class="description last"><p>The CallCredentials to compose</p></td>
  150. </tr>
  151. </tbody>
  152. </table>
  153. <dl class="details">
  154. </dl>
  155. <h5>Returns:</h5>
  156. <div class="param-desc">
  157. <p>A credentials object that combines all of the input
  158. credentials</p>
  159. </div>
  160. <dl>
  161. <dt>
  162. Type
  163. </dt>
  164. <dd>
  165. <span class="param-type"><a href="grpc.credentials-CallCredentials.html">grpc.credentials~CallCredentials</a></span>
  166. </dd>
  167. </dl>
  168. </dd>
  169. <hr>
  170. <dt>
  171. <h4 class="name" id=".combineChannelCredentials"><span class="type-signature">&lt;static> </span>combineChannelCredentials(channel_credential, credentials)</h4>
  172. </dt>
  173. <dd>
  174. <div class="description">
  175. <p>Combine a ChannelCredentials with any number of CallCredentials into a single
  176. ChannelCredentials object.</p>
  177. </div>
  178. <h5>Parameters:</h5>
  179. <table class="params table table-striped">
  180. <thead>
  181. <tr>
  182. <th>Name</th>
  183. <th>Type</th>
  184. <th>Argument</th>
  185. <th class="last">Description</th>
  186. </tr>
  187. </thead>
  188. <tbody>
  189. <tr>
  190. <td class="name"><code>channel_credential</code></td>
  191. <td class="type">
  192. <span class="param-type"><a href="grpc.credentials-ChannelCredentials.html">grpc.credentials~ChannelCredentials</a></span>
  193. </td>
  194. <td class="attributes">
  195. </td>
  196. <td class="description last"><p>The ChannelCredentials to
  197. start with</p></td>
  198. </tr>
  199. <tr>
  200. <td class="name"><code>credentials</code></td>
  201. <td class="type">
  202. <span class="param-type"><a href="grpc.credentials-CallCredentials.html">grpc.credentials~CallCredentials</a></span>
  203. </td>
  204. <td class="attributes">
  205. &lt;repeatable><br>
  206. </td>
  207. <td class="description last"><p>The CallCredentials to compose</p></td>
  208. </tr>
  209. </tbody>
  210. </table>
  211. <dl class="details">
  212. </dl>
  213. <h5>Returns:</h5>
  214. <div class="param-desc">
  215. <p>A credentials object that combines all of the
  216. input credentials</p>
  217. </div>
  218. <dl>
  219. <dt>
  220. Type
  221. </dt>
  222. <dd>
  223. <span class="param-type"><a href="grpc.credentials-ChannelCredentials.html">grpc.credentials~ChannelCredentials</a></span>
  224. </dd>
  225. </dl>
  226. </dd>
  227. <hr>
  228. <dt>
  229. <h4 class="name" id=".createFromGoogleCredential"><span class="type-signature">&lt;static> </span>createFromGoogleCredential(google_credential)</h4>
  230. </dt>
  231. <dd>
  232. <div class="description">
  233. <p>Create a gRPC credential from a Google credential object.</p>
  234. </div>
  235. <h5>Parameters:</h5>
  236. <table class="params table table-striped">
  237. <thead>
  238. <tr>
  239. <th>Name</th>
  240. <th>Type</th>
  241. <th class="last">Description</th>
  242. </tr>
  243. </thead>
  244. <tbody>
  245. <tr>
  246. <td class="name"><code>google_credential</code></td>
  247. <td class="type">
  248. <span class="param-type"><a href="external-GoogleCredential.html">external:GoogleCredential</a></span>
  249. </td>
  250. <td class="description last"><p>The Google credential
  251. object to use</p></td>
  252. </tr>
  253. </tbody>
  254. </table>
  255. <dl class="details">
  256. </dl>
  257. <h5>Returns:</h5>
  258. <div class="param-desc">
  259. <p>The resulting credentials object</p>
  260. </div>
  261. <dl>
  262. <dt>
  263. Type
  264. </dt>
  265. <dd>
  266. <span class="param-type"><a href="grpc.credentials-CallCredentials.html">grpc.credentials~CallCredentials</a></span>
  267. </dd>
  268. </dl>
  269. </dd>
  270. <hr>
  271. <dt>
  272. <h4 class="name" id=".createFromMetadataGenerator"><span class="type-signature">&lt;static> </span>createFromMetadataGenerator(metadata_generator)</h4>
  273. </dt>
  274. <dd>
  275. <div class="description">
  276. <p>Create a gRPC credentials object from a metadata generation function. This
  277. function gets the service URL and a callback as parameters. The error
  278. passed to the callback can optionally have a 'code' value attached to it,
  279. which corresponds to a status code that this library uses.</p>
  280. </div>
  281. <h5>Parameters:</h5>
  282. <table class="params table table-striped">
  283. <thead>
  284. <tr>
  285. <th>Name</th>
  286. <th>Type</th>
  287. <th class="last">Description</th>
  288. </tr>
  289. </thead>
  290. <tbody>
  291. <tr>
  292. <td class="name"><code>metadata_generator</code></td>
  293. <td class="type">
  294. <span class="param-type"><a href="grpc.credentials.html#~generateMetadata">grpc.credentials~generateMetadata</a></span>
  295. </td>
  296. <td class="description last"><p>The function
  297. that generates metadata</p></td>
  298. </tr>
  299. </tbody>
  300. </table>
  301. <dl class="details">
  302. </dl>
  303. <h5>Returns:</h5>
  304. <div class="param-desc">
  305. <p>The credentials object</p>
  306. </div>
  307. <dl>
  308. <dt>
  309. Type
  310. </dt>
  311. <dd>
  312. <span class="param-type"><a href="grpc.credentials-CallCredentials.html">grpc.credentials~CallCredentials</a></span>
  313. </dd>
  314. </dl>
  315. </dd>
  316. <hr>
  317. <dt>
  318. <h4 class="name" id=".createInsecure"><span class="type-signature">&lt;static> </span>createInsecure()</h4>
  319. </dt>
  320. <dd>
  321. <div class="description">
  322. <p>Create an insecure credentials object. This is used to create a channel that
  323. does not use SSL. This cannot be composed with anything.</p>
  324. </div>
  325. <dl class="details">
  326. </dl>
  327. <h5>Returns:</h5>
  328. <div class="param-desc">
  329. <p>The insecure credentials object</p>
  330. </div>
  331. <dl>
  332. <dt>
  333. Type
  334. </dt>
  335. <dd>
  336. <span class="param-type"><a href="grpc.credentials-ChannelCredentials.html">grpc.credentials~ChannelCredentials</a></span>
  337. </dd>
  338. </dl>
  339. </dd>
  340. <hr>
  341. <dt>
  342. <h4 class="name" id=".createSsl"><span class="type-signature">&lt;static> </span>createSsl( [root_certs] [, private_key] [, cert_chain])</h4>
  343. </dt>
  344. <dd>
  345. <div class="description">
  346. <p>Create an SSL Credentials object. If using a client-side certificate, both
  347. the second and third arguments must be passed. Additional peer verification
  348. options can be passed in the fourth argument as described below.</p>
  349. </div>
  350. <h5>Parameters:</h5>
  351. <table class="params table table-striped">
  352. <thead>
  353. <tr>
  354. <th>Name</th>
  355. <th>Type</th>
  356. <th>Argument</th>
  357. <th class="last">Description</th>
  358. </tr>
  359. </thead>
  360. <tbody>
  361. <tr>
  362. <td class="name"><code>root_certs</code></td>
  363. <td class="type">
  364. <span class="param-type">Buffer</span>
  365. </td>
  366. <td class="attributes">
  367. &lt;optional><br>
  368. </td>
  369. <td class="description last"><p>The root certificate data</p></td>
  370. </tr>
  371. <tr>
  372. <td class="name"><code>private_key</code></td>
  373. <td class="type">
  374. <span class="param-type">Buffer</span>
  375. </td>
  376. <td class="attributes">
  377. &lt;optional><br>
  378. </td>
  379. <td class="description last"><p>The client certificate private key, if
  380. applicable</p></td>
  381. </tr>
  382. <tr>
  383. <td class="name"><code>cert_chain</code></td>
  384. <td class="type">
  385. <span class="param-type">Buffer</span>
  386. </td>
  387. <td class="attributes">
  388. &lt;optional><br>
  389. </td>
  390. <td class="description last"><p>The client certificate cert chain, if applicable</p></td>
  391. </tr>
  392. <tr>
  393. <td class="name"><code>verify_options.checkServerIdentity</code></td>
  394. <td class="type">
  395. <span class="param-type">function</span>
  396. </td>
  397. <td class="attributes">
  398. </td>
  399. <td class="description last"><p>Optional callback
  400. receiving the expected hostname and peer certificate for additional
  401. verification. The callback should return an Error if verification
  402. fails and otherwise return undefined.</p></td>
  403. </tr>
  404. </tbody>
  405. </table>
  406. <dl class="details">
  407. </dl>
  408. <h5>Returns:</h5>
  409. <div class="param-desc">
  410. <p>The SSL Credentials object</p>
  411. </div>
  412. <dl>
  413. <dt>
  414. Type
  415. </dt>
  416. <dd>
  417. <span class="param-type"><a href="grpc.credentials-ChannelCredentials.html">grpc.credentials~ChannelCredentials</a></span>
  418. </dd>
  419. </dl>
  420. </dd>
  421. </dl>
  422. <h3 class="subsection-title">Type Definitions</h3>
  423. <dl>
  424. <hr>
  425. <dt>
  426. <h4 class="name" id="~generateMetadata"><span class="type-signature"></span>generateMetadata(params, callback)</h4>
  427. </dt>
  428. <dd>
  429. <h5>Parameters:</h5>
  430. <table class="params table table-striped">
  431. <thead>
  432. <tr>
  433. <th>Name</th>
  434. <th>Type</th>
  435. <th class="last">Description</th>
  436. </tr>
  437. </thead>
  438. <tbody>
  439. <tr>
  440. <td class="name"><code>params</code></td>
  441. <td class="type">
  442. <span class="param-type">Object</span>
  443. </td>
  444. <td class="description last"><p>Parameters that can modify metadata generation</p>
  445. <h6 class="method-params-label method-subparams-label">Properties</h6>
  446. <table class="params table table-striped">
  447. <thead>
  448. <tr>
  449. <th>Name</th>
  450. <th>Type</th>
  451. <th class="last">Description</th>
  452. </tr>
  453. </thead>
  454. <tbody>
  455. <tr>
  456. <td class="name"><code>service_url</code></td>
  457. <td class="type">
  458. <span class="param-type">string</span>
  459. </td>
  460. <td class="description last"><p>The URL of the service that the call is
  461. going to</p></td>
  462. </tr>
  463. </tbody>
  464. </table>
  465. </td>
  466. </tr>
  467. <tr>
  468. <td class="name"><code>callback</code></td>
  469. <td class="type">
  470. <span class="param-type"><a href="grpc.credentials.html#~metadataCallback">grpc.credentials~metadataCallback</a></span>
  471. </td>
  472. <td class="description last"></td>
  473. </tr>
  474. </tbody>
  475. </table>
  476. <dl class="details">
  477. </dl>
  478. </dd>
  479. <hr>
  480. <dt>
  481. <h4 class="name" id="~metadataCallback"><span class="type-signature"></span>metadataCallback(error, metadata)</h4>
  482. </dt>
  483. <dd>
  484. <h5>Parameters:</h5>
  485. <table class="params table table-striped">
  486. <thead>
  487. <tr>
  488. <th>Name</th>
  489. <th>Type</th>
  490. <th class="last">Description</th>
  491. </tr>
  492. </thead>
  493. <tbody>
  494. <tr>
  495. <td class="name"><code>error</code></td>
  496. <td class="type">
  497. <span class="param-type">Error</span>
  498. </td>
  499. <td class="description last"><p>The error, if getting metadata failed</p></td>
  500. </tr>
  501. <tr>
  502. <td class="name"><code>metadata</code></td>
  503. <td class="type">
  504. <span class="param-type"><a href="grpc.Metadata.html">grpc.Metadata</a></span>
  505. </td>
  506. <td class="description last"><p>The metadata</p></td>
  507. </tr>
  508. </tbody>
  509. </table>
  510. <dl class="details">
  511. </dl>
  512. </dd>
  513. </dl>
  514. </article>
  515. </section>
  516. </div>
  517. </div>
  518. <div class="clearfix"></div>
  519. <div class="col-md-3">
  520. <div id="toc" class="col-md-3 hidden-xs hidden-sm hidden-md"></div>
  521. </div>
  522. </div>
  523. </div>
  524. <div class="modal fade" id="searchResults">
  525. <div class="modal-dialog">
  526. <div class="modal-content">
  527. <div class="modal-header">
  528. <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  529. <h4 class="modal-title">Search results</h4>
  530. </div>
  531. <div class="modal-body"></div>
  532. <div class="modal-footer">
  533. <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
  534. </div>
  535. </div><!-- /.modal-content -->
  536. </div><!-- /.modal-dialog -->
  537. </div>
  538. <footer>
  539. <span class="jsdoc-message">
  540. Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a>
  541. on 2019-07-15T16:38:16-07:00
  542. using the <a href="https://github.com/docstrap/docstrap">DocStrap template</a>.
  543. </span>
  544. </footer>
  545. <script src="scripts/docstrap.lib.js"></script>
  546. <script src="scripts/toc.js"></script>
  547. <script type="text/javascript" src="scripts/fulltext-search-ui.js"></script>
  548. <script>
  549. $( function () {
  550. $( "[id*='$']" ).each( function () {
  551. var $this = $( this );
  552. $this.attr( "id", $this.attr( "id" ).replace( "$", "__" ) );
  553. } );
  554. $( ".tutorial-section pre, .readme-section pre, pre.prettyprint.source" ).each( function () {
  555. var $this = $( this );
  556. var example = $this.find( "code" );
  557. exampleText = example.html();
  558. var lang = /{@lang (.*?)}/.exec( exampleText );
  559. if ( lang && lang[1] ) {
  560. exampleText = exampleText.replace( lang[0], "" );
  561. example.html( exampleText );
  562. lang = lang[1];
  563. } else {
  564. var langClassMatch = example.parent()[0].className.match(/lang\-(\S+)/);
  565. lang = langClassMatch ? langClassMatch[1] : "javascript";
  566. }
  567. if ( lang ) {
  568. $this
  569. .addClass( "sunlight-highlight-" + lang )
  570. .addClass( "linenums" )
  571. .html( example.html() );
  572. }
  573. } );
  574. Sunlight.highlightAll( {
  575. lineNumbers : false,
  576. showMenu : true,
  577. enableDoclinks : true
  578. } );
  579. $.catchAnchorLinks( {
  580. navbarOffset: 10
  581. } );
  582. $( "#toc" ).toc( {
  583. anchorName : function ( i, heading, prefix ) {
  584. return $( heading ).attr( "id" ) || ( prefix + i );
  585. },
  586. selectors : "#toc-content h1,#toc-content h2,#toc-content h3,#toc-content h4",
  587. showAndHide : false,
  588. smoothScrolling: true
  589. } );
  590. $( "#main span[id^='toc']" ).addClass( "toc-shim" );
  591. $( '.dropdown-toggle' ).dropdown();
  592. $( "table" ).each( function () {
  593. var $this = $( this );
  594. $this.addClass('table');
  595. } );
  596. } );
  597. </script>
  598. <!--Navigation and Symbol Display-->
  599. <!--Google Analytics-->
  600. <script type="text/javascript">
  601. $(document).ready(function() {
  602. SearcherDisplay.init();
  603. });
  604. </script>
  605. </body>
  606. </html>