blob: 9c1ef128bd4214059dff3ef82e0eaf13a91d33b0 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Apache Geode Native C++ Reference: PoolFactory.hpp Source File</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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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" />
</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">Apache Geode Native C++ Reference
&#160;<span id="projectnumber">1.13.1</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('a00188_source.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- 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 class="header">
<div class="headertitle">
<div class="title">PoolFactory.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="a00188.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one or more</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * contributor license agreements. See the NOTICE file distributed with</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * this work for additional information regarding copyright ownership.</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * The ASF licenses this file to You under the Apache License, Version 2.0</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * (the &quot;License&quot;); you may not use this file except in compliance with</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * the License. You may obtain a copy of the License at</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * Unless required by applicable law or agreed to in writing, software</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * See the License for the specific language governing permissions and</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * limitations under the License.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#pragma once</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#ifndef GEODE_POOLFACTORY_H_</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#define GEODE_POOLFACTORY_H_</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &lt;chrono&gt;</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="a00185.html">Pool.hpp</a>&quot;</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#include &quot;internal/chrono/duration.hpp&quot;</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#include &quot;internal/geode_globals.hpp&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keyword">namespace </span>apache {</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="keyword">namespace </span>geode {</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="keyword">namespace </span>client {</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keyword">class </span>CacheImpl;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keyword">class </span>PoolAttributes;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">class </span>Pool;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="a00791.html"> 68</a></span>&#160;<span class="keyword">class </span>APACHE_GEODE_EXPORT <a class="code" href="a00791.html">PoolFactory</a> {</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="a00791.html#af9697e12851d81c2fa78a8db4f02e2dc"> 75</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds <a class="code" href="a00791.html#af9697e12851d81c2fa78a8db4f02e2dc">DEFAULT_FREE_CONNECTION_TIMEOUT</a>;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div><div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="a00791.html#a90ef0091634fd937f08824515e24c82f"> 83</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds <a class="code" href="a00791.html#a90ef0091634fd937f08824515e24c82f">DEFAULT_LOAD_CONDITIONING_INTERVAL</a>;</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="a00791.html#a5a77de086f1733ab83e43a265b37a0a6"> 90</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_SOCKET_BUFFER_SIZE = 32768;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="a00791.html#a60c1ed6cea592346b491db157fc98885"> 96</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds <a class="code" href="a00791.html#a60c1ed6cea592346b491db157fc98885">DEFAULT_READ_TIMEOUT</a>;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="a00791.html#afba2d8f4c32c8b6ba3eeb59fa4dff414"> 102</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_MIN_CONNECTIONS = 1;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="a00791.html#ab6a38df8ec53d4e6213928f9e239a589"> 108</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_MAX_CONNECTIONS = -1;</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div><div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="a00791.html#a7650a8dc0e646bb277264303e2a4e700"> 114</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds <a class="code" href="a00791.html#a7650a8dc0e646bb277264303e2a4e700">DEFAULT_IDLE_TIMEOUT</a>;</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="a00791.html#a969656d163eb9fe391441f8f8e39bdea"> 121</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_RETRY_ATTEMPTS = -1;</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="a00791.html#aef1297a70763cc4052b29bdcc3ffdcbf"> 127</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds <a class="code" href="a00791.html#aef1297a70763cc4052b29bdcc3ffdcbf">DEFAULT_PING_INTERVAL</a>;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div><div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="a00791.html#a31fe1c44abfb3093c3469d7cc51f146c"> 133</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds <a class="code" href="a00791.html#a31fe1c44abfb3093c3469d7cc51f146c">DEFAULT_UPDATE_LOCATOR_LIST_INTERVAL</a>;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="a00791.html#a7c5d3a61c8c8516fb8c11d959a59a51e"> 140</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds <a class="code" href="a00791.html#a7c5d3a61c8c8516fb8c11d959a59a51e">DEFAULT_STATISTIC_INTERVAL</a>;</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="a00791.html#a8fd46e658432db14d19d6bcd91324d9c"> 146</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">bool</span> DEFAULT_SUBSCRIPTION_ENABLED = <span class="keyword">false</span>;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="a00791.html#aa89b15a8b625d9d8b505e6bdd691ddd7"> 154</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">int</span> DEFAULT_SUBSCRIPTION_REDUNDANCY = 0;</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds</div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="a00791.html#a72e4fb624bdaf89a32cdcb7af74d9eb5"> 162</a></span>&#160; <a class="code" href="a00791.html#a72e4fb624bdaf89a32cdcb7af74d9eb5">DEFAULT_SUBSCRIPTION_MESSAGE_TRACKING_TIMEOUT</a>;</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="a00791.html#ae9a0b501cdb334e8b71366df89439b47"> 169</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::chrono::milliseconds <a class="code" href="a00791.html#ae9a0b501cdb334e8b71366df89439b47">DEFAULT_SUBSCRIPTION_ACK_INTERVAL</a>;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="a00791.html#a3ef17df9a2e1145e4c99052f4bcabb79"> 175</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> std::string <a class="code" href="a00791.html#a3ef17df9a2e1145e4c99052f4bcabb79">DEFAULT_SERVER_GROUP</a>;</div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="a00791.html#a1b86f01b9a88efe937730a399ef6753a"> 180</a></span>&#160; <span class="keyword">static</span> constexpr <span class="keywordtype">bool</span> DEFAULT_THREAD_LOCAL_CONN = <span class="keyword">false</span>;</div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="a00791.html#a9b6e74d9426c07ab610b4cd66f19e440"> 186</a></span>&#160; <span class="keyword">static</span> constexpr <span class="keywordtype">bool</span> DEFAULT_MULTIUSER_SECURE_MODE = <span class="keyword">false</span>;</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="a00791.html#a209612cdaf9a348c2b13c419a139df74"> 192</a></span>&#160; <span class="keyword">static</span> constexpr <span class="keywordtype">bool</span> DEFAULT_PR_SINGLE_HOP_ENABLED = <span class="keyword">true</span>;</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div><div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setFreeConnectionTimeout(</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; std::chrono::milliseconds connectionTimeout);</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setLoadConditioningInterval(</div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; std::chrono::milliseconds loadConditioningInterval);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setSocketBufferSize(<span class="keywordtype">int</span> bufferSize);</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setThreadLocalConnections(<span class="keywordtype">bool</span> threadLocalConnections);</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setReadTimeout(std::chrono::milliseconds timeout);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setMinConnections(<span class="keywordtype">int</span> minConnections);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setMaxConnections(<span class="keywordtype">int</span> maxConnections);</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setIdleTimeout(std::chrono::milliseconds);</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setRetryAttempts(<span class="keywordtype">int</span> retryAttempts);</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setPingInterval(std::chrono::milliseconds pingInterval);</div><div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setUpdateLocatorListInterval(</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; std::chrono::milliseconds updateLocatorListInterval);</div><div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setStatisticInterval(</div><div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; std::chrono::milliseconds statisticInterval);</div><div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setServerGroup(std::string group);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;</div><div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; addLocator(<span class="keyword">const</span> std::string&amp; host, <span class="keywordtype">int</span> port);</div><div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;</div><div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; addServer(<span class="keyword">const</span> std::string&amp; host, <span class="keywordtype">int</span> port);</div><div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;</div><div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setSubscriptionEnabled(<span class="keywordtype">bool</span> enabled);</div><div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;</div><div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setSubscriptionRedundancy(<span class="keywordtype">int</span> redundancy);</div><div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;</div><div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setSubscriptionMessageTrackingTimeout(</div><div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; std::chrono::milliseconds messageTrackingTimeout);</div><div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;</div><div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setSubscriptionAckInterval(</div><div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; std::chrono::milliseconds ackInterval);</div><div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;</div><div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setMultiuserAuthentication(<span class="keywordtype">bool</span> multiuserAuthentication);</div><div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;</div><div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; reset();</div><div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;</div><div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; std::shared_ptr&lt;Pool&gt; create(std::string name);</div><div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;</div><div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; setPRSingleHopEnabled(<span class="keywordtype">bool</span> enabled);</div><div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;</div><div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; ~<a class="code" href="a00791.html">PoolFactory</a>() = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;</div><div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>(<span class="keyword">const</span> <a class="code" href="a00791.html">PoolFactory</a>&amp;) = <span class="keywordflow">default</span>;</div><div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;</div><div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="keyword">explicit</span> <a class="code" href="a00791.html">PoolFactory</a>(<span class="keyword">const</span> <a class="code" href="a00287.html">Cache</a>&amp; cache);</div><div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <a class="code" href="a00791.html">PoolFactory</a>&amp; addCheck(<span class="keyword">const</span> std::string&amp; host, <span class="keywordtype">int</span> port);</div><div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; std::shared_ptr&lt;PoolAttributes&gt; m_attrs;</div><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordtype">bool</span> m_isSubscriptionRedundancy;</div><div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="keywordtype">bool</span> m_addedServerOrLocator;</div><div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keyword">const</span> <a class="code" href="a00287.html">Cache</a>&amp; m_cache;</div><div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;</div><div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="a00287.html">Cache</a>;</div><div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="a00795.html">PoolManager</a>;</div><div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span>PoolManagerImpl;</div><div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="a00371.html">CacheFactory</a>;</div><div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span>CacheXmlCreation;</div><div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;};</div><div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160;</div><div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;} <span class="comment">// namespace client</span></div><div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;} <span class="comment">// namespace geode</span></div><div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;} <span class="comment">// namespace apache</span></div><div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;</div><div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;<span class="preprocessor">#endif // GEODE_POOLFACTORY_H_</span></div><div class="ttc" id="a00791_html"><div class="ttname"><a href="a00791.html">apache::geode::client::PoolFactory</a></div><div class="ttdoc">This interface provides for the configuration and creation of instances of Pool.</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:68</div></div>
<div class="ttc" id="a00791_html_a3ef17df9a2e1145e4c99052f4bcabb79"><div class="ttname"><a href="a00791.html#a3ef17df9a2e1145e4c99052f4bcabb79">apache::geode::client::PoolFactory::DEFAULT_SERVER_GROUP</a></div><div class="ttdeci">static const std::string DEFAULT_SERVER_GROUP</div><div class="ttdoc">The default server group.</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:175</div></div>
<div class="ttc" id="a00791_html_ae9a0b501cdb334e8b71366df89439b47"><div class="ttname"><a href="a00791.html#ae9a0b501cdb334e8b71366df89439b47">apache::geode::client::PoolFactory::DEFAULT_SUBSCRIPTION_ACK_INTERVAL</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_SUBSCRIPTION_ACK_INTERVAL</div><div class="ttdoc">The default amount of time to wait before sending an acknowledgement to the server about events recei...</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:169</div></div>
<div class="ttc" id="a00287_html"><div class="ttname"><a href="a00287.html">apache::geode::client::Cache</a></div><div class="ttdoc">Caches are obtained from the create method on the CacheFactory#create class.</div><div class="ttdef"><b>Definition:</b> Cache.hpp:67</div></div>
<div class="ttc" id="a00795_html"><div class="ttname"><a href="a00795.html">apache::geode::client::PoolManager</a></div><div class="ttdoc">Manages creation and access to connection pools for clients.</div><div class="ttdef"><b>Definition:</b> PoolManager.hpp:61</div></div>
<div class="ttc" id="a00791_html_a7650a8dc0e646bb277264303e2a4e700"><div class="ttname"><a href="a00791.html#a7650a8dc0e646bb277264303e2a4e700">apache::geode::client::PoolFactory::DEFAULT_IDLE_TIMEOUT</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_IDLE_TIMEOUT</div><div class="ttdoc">The default amount of time to wait for a connection to become idle.</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:114</div></div>
<div class="ttc" id="a00791_html_a7c5d3a61c8c8516fb8c11d959a59a51e"><div class="ttname"><a href="a00791.html#a7c5d3a61c8c8516fb8c11d959a59a51e">apache::geode::client::PoolFactory::DEFAULT_STATISTIC_INTERVAL</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_STATISTIC_INTERVAL</div><div class="ttdoc">The default frequency that client statistics are sent to the server.</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:140</div></div>
<div class="ttc" id="a00791_html_a90ef0091634fd937f08824515e24c82f"><div class="ttname"><a href="a00791.html#a90ef0091634fd937f08824515e24c82f">apache::geode::client::PoolFactory::DEFAULT_LOAD_CONDITIONING_INTERVAL</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_LOAD_CONDITIONING_INTERVAL</div><div class="ttdoc">The default interval in which the pool will check to see if a connection to a given server should be ...</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:83</div></div>
<div class="ttc" id="a00791_html_a72e4fb624bdaf89a32cdcb7af74d9eb5"><div class="ttname"><a href="a00791.html#a72e4fb624bdaf89a32cdcb7af74d9eb5">apache::geode::client::PoolFactory::DEFAULT_SUBSCRIPTION_MESSAGE_TRACKING_TIMEOUT</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_SUBSCRIPTION_MESSAGE_TRACKING_TIMEOUT</div><div class="ttdoc">The default amount of time that messages sent from a server to a client will be tracked.</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:162</div></div>
<div class="ttc" id="a00791_html_a60c1ed6cea592346b491db157fc98885"><div class="ttname"><a href="a00791.html#a60c1ed6cea592346b491db157fc98885">apache::geode::client::PoolFactory::DEFAULT_READ_TIMEOUT</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_READ_TIMEOUT</div><div class="ttdoc">The default amount of time to wait for a response from a server.</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:96</div></div>
<div class="ttc" id="a00791_html_af9697e12851d81c2fa78a8db4f02e2dc"><div class="ttname"><a href="a00791.html#af9697e12851d81c2fa78a8db4f02e2dc">apache::geode::client::PoolFactory::DEFAULT_FREE_CONNECTION_TIMEOUT</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_FREE_CONNECTION_TIMEOUT</div><div class="ttdoc">The default amount of time which we will wait for a free connection if max connections is set and all...</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:75</div></div>
<div class="ttc" id="a00791_html_aef1297a70763cc4052b29bdcc3ffdcbf"><div class="ttname"><a href="a00791.html#aef1297a70763cc4052b29bdcc3ffdcbf">apache::geode::client::PoolFactory::DEFAULT_PING_INTERVAL</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_PING_INTERVAL</div><div class="ttdoc">The default frequency, to ping servers.</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:127</div></div>
<div class="ttc" id="a00185_html"><div class="ttname"><a href="a00185.html">Pool.hpp</a></div></div>
<div class="ttc" id="a00791_html_a31fe1c44abfb3093c3469d7cc51f146c"><div class="ttname"><a href="a00791.html#a31fe1c44abfb3093c3469d7cc51f146c">apache::geode::client::PoolFactory::DEFAULT_UPDATE_LOCATOR_LIST_INTERVAL</a></div><div class="ttdeci">static const std::chrono::milliseconds DEFAULT_UPDATE_LOCATOR_LIST_INTERVAL</div><div class="ttdoc">The default frequency to update the locator list.</div><div class="ttdef"><b>Definition:</b> PoolFactory.hpp:133</div></div>
<div class="ttc" id="a00371_html"><div class="ttname"><a href="a00371.html">apache::geode::client::CacheFactory</a></div><div class="ttdoc">Top level class for configuring and using Geode on a client.This should be called once to create Cach...</div><div class="ttdef"><b>Definition:</b> CacheFactory.hpp:48</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<HR><address style="align: right;"><small>Apache Geode C++ Cache API Documentation</small></address>