http://git-wip-us.apache.org/repos/asf/mesos-site/blob/0dd5f4c3/content/api/latest/c++/namespacemembers_func_s.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/namespacemembers_func_s.html b/content/api/latest/c++/namespacemembers_func_s.html index 3e41740..aacd591 100644 --- a/content/api/latest/c++/namespacemembers_func_s.html +++ b/content/api/latest/c++/namespacemembers_func_s.html @@ -173,7 +173,7 @@ : <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a9a6cb4d8955449287db2981675dbde24">mesos::internal::xfs</a> </li> <li>setProjectQuota() -: <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#aabad116194769a67636d572b63ae7ad1">mesos::internal::xfs</a> +: <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a9b4dff7c681ba649e68493db79e163d6">mesos::internal::xfs</a> </li> <li>setPromises() : <a class="el" href="namespaceprocess.html#ac263ad6d2909a96a948ee94594013847">process</a> @@ -216,7 +216,7 @@ : <a class="el" href="namespaceprocess_1_1metrics.html#ae84bcc44d0cc377941ccab88b9cecdc7">process::metrics</a> </li> <li>socket() -: <a class="el" href="namespacenet.html#a4cfca6331034dc0a6dc6077fc048843b">net</a> +: <a class="el" href="namespacenet.html#a1a28d65fc659da0fd236f2641cd07f8d">net</a> , <a class="el" href="namespacerouting.html#aee51d4e36a57bab7d6ada56e15467370">routing</a> </li> <li>soft_limit_in_bytes() @@ -224,7 +224,7 @@ </li> <li>spawn() : <a class="el" href="namespaceos.html#a18f614e5bdf40984c33888a5fa9599ca">os</a> -, <a class="el" href="namespaceprocess.html#a271f92d7aab3c157b237ac5c48a0f6be">process</a> +, <a class="el" href="namespaceprocess.html#aa3e3f539080a94857e07401dd26b2f8f">process</a> </li> <li>split() : <a class="el" href="namespacestrings.html#a1f86a4a73f20056475dc065ec984eb7a">strings</a> @@ -248,7 +248,7 @@ , <a class="el" href="namespacerouting_1_1queueing_1_1internal.html#a91cfc1e150fcd66e41ce327b7e1908de">routing::queueing::internal</a> </li> <li>status() -: <a class="el" href="namespaceproc.html#a1bf2b02dcb579ebc87a75d4bccce97b1">proc</a> +: <a class="el" href="namespaceproc.html#a34396c6140a28f583dc13fee3c3c35d4">proc</a> </li> <li>streamingMediaType() : <a class="el" href="namespacemesos_1_1internal.html#a1fe4afb9bc1a9f2688b39fdcc8818199">mesos::internal</a> @@ -269,7 +269,7 @@ : <a class="el" href="namespaceos.html#acae67fc8bd809c609bf1ffb281d921c6">os</a> </li> <li>subprocess() -: <a class="el" href="namespaceprocess.html#aabc8d31889b5a325275d13d7bcef6a9c">process</a> +: <a class="el" href="namespaceprocess.html#acd3d31ab4db7e39286a689b69ff8be3e">process</a> </li> <li>subsystems() : <a class="el" href="namespacecgroups.html#a155d0ce30a15e5b8b3ca02b189a7ead8">cgroups</a>
http://git-wip-us.apache.org/repos/asf/mesos-site/blob/0dd5f4c3/content/api/latest/c++/namespacemembers_s.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/namespacemembers_s.html b/content/api/latest/c++/namespacemembers_s.html index 5f84331..28f051b 100644 --- a/content/api/latest/c++/namespacemembers_s.html +++ b/content/api/latest/c++/namespacemembers_s.html @@ -188,7 +188,7 @@ : <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a9a6cb4d8955449287db2981675dbde24">mesos::internal::xfs</a> </li> <li>setProjectQuota() -: <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#aabad116194769a67636d572b63ae7ad1">mesos::internal::xfs</a> +: <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a9b4dff7c681ba649e68493db79e163d6">mesos::internal::xfs</a> </li> <li>setPromises() : <a class="el" href="namespaceprocess.html#ac263ad6d2909a96a948ee94594013847">process</a> @@ -237,7 +237,7 @@ : <a class="el" href="namespaceprocess_1_1metrics.html#ae84bcc44d0cc377941ccab88b9cecdc7">process::metrics</a> </li> <li>socket() -: <a class="el" href="namespacenet.html#a1a28d65fc659da0fd236f2641cd07f8d">net</a> +: <a class="el" href="namespacenet.html#a4cfca6331034dc0a6dc6077fc048843b">net</a> </li> <li>Socket : <a class="el" href="namespaceprocess_1_1network_1_1inet.html#a891ec97cdaf1fa184350945b7233eaa4">process::network::inet</a> @@ -258,7 +258,7 @@ </li> <li>spawn() : <a class="el" href="namespaceos.html#a18f614e5bdf40984c33888a5fa9599ca">os</a> -, <a class="el" href="namespaceprocess.html#aff22904a83567125d3b4d0d88e5a2270">process</a> +, <a class="el" href="namespaceprocess.html#a0458ac577eb50d91c829967c1d7ca3dd">process</a> </li> <li>split() : <a class="el" href="namespacestrings.html#a1f86a4a73f20056475dc065ec984eb7a">strings</a> @@ -273,7 +273,7 @@ : <a class="el" href="namespacesystemd_1_1slices.html#a95aa197d8eed9f20dacb44f433b15f01">systemd::slices</a> </li> <li>startsWith() -: <a class="el" href="namespacestrings.html#ad7fa64549fd2974c79b288e5a30293f0">strings</a> +: <a class="el" href="namespacestrings.html#aa5513faacb213c7e097c0d43af43d9c7">strings</a> </li> <li>stat() : <a class="el" href="namespacecgroups_1_1cpuacct.html#a0aa25320dd324ad06619c2d650020102">cgroups::cpuacct</a> @@ -324,10 +324,10 @@ : <a class="el" href="namespaceos.html#acae67fc8bd809c609bf1ffb281d921c6">os</a> </li> <li>subprocess() -: <a class="el" href="namespaceprocess.html#aabc8d31889b5a325275d13d7bcef6a9c">process</a> +: <a class="el" href="namespaceprocess.html#acd3d31ab4db7e39286a689b69ff8be3e">process</a> </li> <li>subsystems() -: <a class="el" href="namespacecgroups.html#a43ff5aa5dec5f24b0a3620847e9dd6b6">cgroups</a> +: <a class="el" href="namespacecgroups.html#a155d0ce30a15e5b8b3ca02b189a7ead8">cgroups</a> </li> <li>SUCCESS : <a class="el" href="namespaceprocess_1_1http__parsing.html#aafd4f335653a52c4c13fa094d8943969">process::http_parsing</a> http://git-wip-us.apache.org/repos/asf/mesos-site/blob/0dd5f4c3/content/api/latest/c++/namespacemesos_1_1internal_1_1xfs.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/namespacemesos_1_1internal_1_1xfs.html b/content/api/latest/c++/namespacemesos_1_1internal_1_1xfs.html index 204fa5a..428c63b 100644 --- a/content/api/latest/c++/namespacemesos_1_1internal_1_1xfs.html +++ b/content/api/latest/c++/namespacemesos_1_1internal_1_1xfs.html @@ -66,8 +66,9 @@ Classes</h2></td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> Enumerations</h2></td></tr> -<tr class="memitem:a50dd94c22d32cfc0d00c7468b3bd7edb"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb">QuotaPolicy</a> { <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edbafb0bfbfae87223b83e0689560d4c268e">QuotaPolicy::ENFORCING</a>, -<a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62">QuotaPolicy::ACCOUNTING</a> +<tr class="memitem:a50dd94c22d32cfc0d00c7468b3bd7edb"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb">QuotaPolicy</a> { <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62">QuotaPolicy::ACCOUNTING</a>, +<a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edbadf980bd9359aae8af8a7a8ec553b1ac7">QuotaPolicy::ENFORCING_ACTIVE</a>, +<a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba9c38181a3a4b243c6a59c40eedf9b474">QuotaPolicy::ENFORCING_PASSIVE</a> }</td></tr> <tr class="separator:a50dd94c22d32cfc0d00c7468b3bd7edb"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> @@ -83,8 +84,10 @@ Functions</h2></td></tr> <tr class="separator:ae8c9917f4e16c6ab0da9f75ea29ae5f5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa733e5e8162e69f52e99eaca1975a1a5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classResult.html">Result</a>< <a class="el" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html">QuotaInfo</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#aa733e5e8162e69f52e99eaca1975a1a5">getProjectQuota</a> (const std::string &path, prid_t projectId)</td></tr> <tr class="separator:aa733e5e8162e69f52e99eaca1975a1a5"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:aabad116194769a67636d572b63ae7ad1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#aabad116194769a67636d572b63ae7ad1">setProjectQuota</a> (const std::string &path, prid_t projectId, <a class="el" href="classBytes.html">Bytes</a> limit)</td></tr> -<tr class="separator:aabad116194769a67636d572b63ae7ad1"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9b4dff7c681ba649e68493db79e163d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a9b4dff7c681ba649e68493db79e163d6">setProjectQuota</a> (const std::string &path, prid_t projectId, <a class="el" href="classBytes.html">Bytes</a> softLimit, <a class="el" href="classBytes.html">Bytes</a> hardLimit)</td></tr> +<tr class="separator:a9b4dff7c681ba649e68493db79e163d6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ab4eaca8354cf5b771bfae8c97006799c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#ab4eaca8354cf5b771bfae8c97006799c">setProjectQuota</a> (const std::string &path, prid_t projectId, <a class="el" href="classBytes.html">Bytes</a> hardLimit)</td></tr> +<tr class="separator:ab4eaca8354cf5b771bfae8c97006799c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a02c77f8c98b1d1764a5a638e4a27e712"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a02c77f8c98b1d1764a5a638e4a27e712">clearProjectQuota</a> (const std::string &path, prid_t projectId)</td></tr> <tr class="separator:a02c77f8c98b1d1764a5a638e4a27e712"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2faab4664eacd0de5147cfc3289bd976"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classResult.html">Result</a>< prid_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a2faab4664eacd0de5147cfc3289bd976">getProjectId</a> (const std::string &directory)</td></tr> @@ -113,9 +116,11 @@ Functions</h2></td></tr> </table> </div><div class="memdoc"> <table class="fieldtable"> -<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a50dd94c22d32cfc0d00c7468b3bd7edbafb0bfbfae87223b83e0689560d4c268e"></a>ENFORCING </td><td class="fielddoc"> +<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62"></a>ACCOUNTING </td><td class="fielddoc"> </td></tr> -<tr><td class="fieldname"><a class="anchor" id="a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62"></a>ACCOUNTING </td><td class="fielddoc"> +<tr><td class="fieldname"><a class="anchor" id="a50dd94c22d32cfc0d00c7468b3bd7edbadf980bd9359aae8af8a7a8ec553b1ac7"></a>ENFORCING_ACTIVE </td><td class="fielddoc"> +</td></tr> +<tr><td class="fieldname"><a class="anchor" id="a50dd94c22d32cfc0d00c7468b3bd7edba9c38181a3a4b243c6a59c40eedf9b474"></a>ENFORCING_PASSIVE </td><td class="fielddoc"> </td></tr> </table> @@ -298,7 +303,45 @@ Functions</h2></td></tr> </div> </div> -<a class="anchor" id="aabad116194769a67636d572b63ae7ad1"></a> +<a class="anchor" id="a9b4dff7c681ba649e68493db79e163d6"></a> +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="classTry.html">Try</a><<a class="el" href="structNothing.html">Nothing</a>> mesos::internal::xfs::setProjectQuota </td> + <td>(</td> + <td class="paramtype">const std::string & </td> + <td class="paramname"><em>path</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">prid_t </td> + <td class="paramname"><em>projectId</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classBytes.html">Bytes</a> </td> + <td class="paramname"><em>softLimit</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="classBytes.html">Bytes</a> </td> + <td class="paramname"><em>hardLimit</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +</div> +</div> +<a class="anchor" id="ab4eaca8354cf5b771bfae8c97006799c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> @@ -318,7 +361,7 @@ Functions</h2></td></tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classBytes.html">Bytes</a> </td> - <td class="paramname"><em>limit</em> </td> + <td class="paramname"><em>hardLimit</em> </td> </tr> <tr> <td></td> http://git-wip-us.apache.org/repos/asf/mesos-site/blob/0dd5f4c3/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp.html b/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp.html index d4d4f42..20af825 100644 --- a/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp.html +++ b/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp.html @@ -84,8 +84,9 @@ Namespaces</h2></td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> Enumerations</h2></td></tr> -<tr class="memitem:a50dd94c22d32cfc0d00c7468b3bd7edb"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb">mesos::internal::xfs::QuotaPolicy</a> { <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edbafb0bfbfae87223b83e0689560d4c268e">mesos::internal::xfs::QuotaPolicy::ENFORCING</a>, -<a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62">mesos::internal::xfs::QuotaPolicy::ACCOUNTING</a> +<tr class="memitem:a50dd94c22d32cfc0d00c7468b3bd7edb"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb">mesos::internal::xfs::QuotaPolicy</a> { <a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62">mesos::internal::xfs::QuotaPolicy::ACCOUNTING</a>, +<a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edbadf980bd9359aae8af8a7a8ec553b1ac7">mesos::internal::xfs::QuotaPolicy::ENFORCING_ACTIVE</a>, +<a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba9c38181a3a4b243c6a59c40eedf9b474">mesos::internal::xfs::QuotaPolicy::ENFORCING_PASSIVE</a> }</td></tr> <tr class="separator:a50dd94c22d32cfc0d00c7468b3bd7edb"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> @@ -101,8 +102,10 @@ Functions</h2></td></tr> <tr class="separator:ae8c9917f4e16c6ab0da9f75ea29ae5f5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa733e5e8162e69f52e99eaca1975a1a5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classResult.html">Result</a>< QuotaInfo > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#aa733e5e8162e69f52e99eaca1975a1a5">mesos::internal::xfs::getProjectQuota</a> (const std::string &path, prid_t projectId)</td></tr> <tr class="separator:aa733e5e8162e69f52e99eaca1975a1a5"><td class="memSeparator" colspan="2"> </td></tr> -<tr class="memitem:aabad116194769a67636d572b63ae7ad1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#aabad116194769a67636d572b63ae7ad1">mesos::internal::xfs::setProjectQuota</a> (const std::string &path, prid_t projectId, <a class="el" href="classBytes.html">Bytes</a> limit)</td></tr> -<tr class="separator:aabad116194769a67636d572b63ae7ad1"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:a9b4dff7c681ba649e68493db79e163d6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a9b4dff7c681ba649e68493db79e163d6">mesos::internal::xfs::setProjectQuota</a> (const std::string &path, prid_t projectId, <a class="el" href="classBytes.html">Bytes</a> softLimit, <a class="el" href="classBytes.html">Bytes</a> hardLimit)</td></tr> +<tr class="separator:a9b4dff7c681ba649e68493db79e163d6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ab4eaca8354cf5b771bfae8c97006799c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#ab4eaca8354cf5b771bfae8c97006799c">mesos::internal::xfs::setProjectQuota</a> (const std::string &path, prid_t projectId, <a class="el" href="classBytes.html">Bytes</a> hardLimit)</td></tr> +<tr class="separator:ab4eaca8354cf5b771bfae8c97006799c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a02c77f8c98b1d1764a5a638e4a27e712"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classTry.html">Try</a>< <a class="el" href="structNothing.html">Nothing</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a02c77f8c98b1d1764a5a638e4a27e712">mesos::internal::xfs::clearProjectQuota</a> (const std::string &path, prid_t projectId)</td></tr> <tr class="separator:a02c77f8c98b1d1764a5a638e4a27e712"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2faab4664eacd0de5147cfc3289bd976"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classResult.html">Result</a>< prid_t > </td><td class="memItemRight" valign="bottom"><a class="el" href="namespacemesos_1_1internal_1_1xfs.html#a2faab4664eacd0de5147cfc3289bd976">mesos::internal::xfs::getProjectId</a> (const std::string &directory)</td></tr> http://git-wip-us.apache.org/repos/asf/mesos-site/blob/0dd5f4c3/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp_source.html ---------------------------------------------------------------------- diff --git a/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp_source.html b/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp_source.html index 2b39f90..64fdc8c 100644 --- a/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp_source.html +++ b/content/api/latest/c++/src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp_source.html @@ -52,41 +52,43 @@ <div class="title">utils.hpp</div> </div> </div><!--header--> <div class="contents"> -<a href="src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// to you under the Apache License, Version 2.0 (the</span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">// "License"); you may not use this file except in compliance</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// with 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> <span class="comment">//</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <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> <span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <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"> 1 2</span> <span class="comment">// distributed under the License is distributed on an "AS IS" BASIS,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <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> <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> <span class="comment">// limitations under the License.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> </div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#ifndef __XFS_UTILS_HPP__</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#define __XFS_UTILS_H PP__</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <string></span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <<a class="code" href="bytes_8hpp.html">stout/bytes.hpp</a>></span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <<a class="code" href="interval_8hpp.html">stout/interval.hpp</a>></span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <<a class="code" href="nothing_8hpp.html">stout/nothing.hpp</a>></span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <spa n class="preprocessor">#include <<a class="code" href="try_8hpp.html">stout/try.hpp</a>></span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <xfs/xfs_types.h></span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">namespace </span><a class="code" href="namespacemesos.html">mesos</a> {</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">namespace </span><a class="code" href="namespaceinternal.html">internal</a> {</div><div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1xfs.html"> 31</a></span> <span class="keyword">namespace </span>xfs {</div><div class="line"> <a name="l00032"></a><span class="lineno"> 32</span> </div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html"> 33</a></span> <span class="keyword">struct </span><a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html">QuotaInfo</a></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6becf14bf4942e6bea1e0e6dbf71a22f"> 35</a></span>  <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6becf14bf4942e6bea1e0e6dbf71a22f">limit</a>;</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc"> 36</a></span>  <a class="code " href="classBytes.html">Bytes</a> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc">used</a>;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> };</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">// Quota operations are defined in terms of basic blocks (512 byte units).</span></div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html"> 41</a></span> <span class="keyword">class </span><a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html">BasicBlocks</a></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> {</div><div class="line"><a name="l000 43"></a><span class="lineno"> 43</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <span class="comment">// Convert from Bytes to basic blocks. Note that we round up since a partial</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="comment">// block costs a full block to store on disk.</span></div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a64bf2ffa7d3f6a6281d1f971a35945a5"> 46</a></span>  <span class="keyword">explicit</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a64bf2ffa7d3f6a6281d1f971a35945a5">BasicBlocks</a>(<span class="keyword">const</span> <a class="code" href="classBytes.html">Bytes</a>& bytes)</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  : blockCount((bytes.by tes() + BASIC_BLOCK_SIZE - 1) / BASIC_BLOCK_SIZE) {}</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a426296f975d7559f7b6ee629af905616"> 49</a></span>  <span class="keyword">explicit</span> constexpr <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a426296f975d7559f7b6ee629af905616">BasicBlocks</a>(uint64_t _blockCount)</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  : blockCount(_blockCount) {}</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div><div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#aa479383d7a5d5d14bd3a78c82e694bca"> 52</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classmesos_1_1i nternal_1_1xfs_1_1BasicBlocks.html#aa479383d7a5d5d14bd3a78c82e694bca">operator==</a>(<span class="keyword">const</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html">BasicBlocks</a>& that)<span class="keyword"> const</span></div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keyword"> </span>{</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordflow">return</span> blockCount == that.blockCount;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  }</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a34f52c69afd6743630e8e04f906c2ab4"> 57</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlo cks.html#a34f52c69afd6743630e8e04f906c2ab4">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html">BasicBlocks</a>& that)<span class="keyword"> const</span></div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keyword"> </span>{</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordflow">return</span> blockCount != that.blockCount;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  }</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div><div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#af756bab080806ee8cae4bd6ad122c39f"> 62</a></span>  uint64_t <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#af756bab080806ee8cae4bd6ad122c39f">blocks</a>( )<span class="keyword"> const </span>{ <span class="keywordflow">return</span> blockCount; }</div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a76d5d9b0feed93901d86b85a8d1ef6c7"> 63</a></span>  <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a76d5d9b0feed93901d86b85a8d1ef6c7">bytes</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classBytes.html">Bytes</a>(BASIC_BLOCK_SIZE) * blockCount; }</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  uint64_t blockCount;</div><div class="line"><a name="l00067"></a><span class="lineno"> 6 7</span> </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  <span class="keyword">static</span> constexpr <span class="keywordtype">unsigned</span> BASIC_BLOCK_SIZE = 512;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span> };</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb"> 72</a></span> <span class="keyword">enum class</span> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb">QuotaPolicy</a> {</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edbafb0bfbfae87223 b83e0689560d4c268e">ENFORCING</a>,</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62">ACCOUNTING</a>,</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span> };</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1xfs.html#ae68b6cb89b0b81fe5604f0464c3f7513"> 78</a></span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#ae68b6cb89b0b81fe5604f0464c3f7513">operator==</a>(<span class="keyword">const</span> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html">Quo taInfo</a>& left, <span class="keyword">const</span> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html">QuotaInfo</a>& right)</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span> {</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keywordflow">return</span> left.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6becf14bf4942e6bea1e0e6dbf71a22f">limit</a> == right.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6becf14bf4942e6bea1e0e6dbf71a22f">limit</a> && left.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc">used</a> == right.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc">used</a>;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> }</div><div class="line"><a name="l00082"></a>< span class="lineno"> 82</span> </div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <a class="code" href="classOption.html">Option<Error></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a66c651d8d2d24b42b449fa43273a37e0">validateProjectIds</a>(<span class="keyword">const</span> <a class="code" href="classIntervalSet.html">IntervalSet<prid_t></a>& projectRange);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">bool</span> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a3be2dffb9483b203330c29cff99bf8bd">isPathXfs</a>(<span class="keyword">const</span> std::string& <a class="code" href="names pacepath.html">path</a>);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="comment">// Test whether XFS project quotas are enabled on the filesystem at the</span></div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// given path. This does not imply that quotas are being enforced, just</span></div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="comment">// that they are enabled.</span></div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <a class="code" href="classTry.html">Try<bool></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#ae8c9917f4e16c6ab0da9f75ea29ae5f5">isQuotaEnabled</a>(<span class="keyword">const</span> std::st ring& path);</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <a class="code" href="classResult.html">Result<QuotaInfo></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#aa733e5e8162e69f52e99eaca1975a1a5">getProjectQuota</a>(</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="keyword">const</span> std::string& path,</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  prid_t projectId);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <a class="code" href="classTry.html">Try&l t;Nothing></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#aabad116194769a67636d572b63ae7ad1">setProjectQuota</a>(</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keyword">const</span> std::string& path,</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  prid_t projectId,</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6becf14bf4942e6bea1e0e6dbf71a22f">limit</a>);</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespacemesos_1_1interna l_1_1xfs.html#a02c77f8c98b1d1764a5a638e4a27e712">clearProjectQuota</a>(</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  <span class="keyword">const</span> std::string& path,</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  prid_t projectId);</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <a class="code" href="classResult.html">Result<prid_t></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a2faab4664eacd0de5147cfc3289bd976">getProjectId</a>(</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  <span class="keyword">const</span> std::string& directory);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span> </div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a9a6cb4d8955449287db2981675dbde24">setProjectId</a>(</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keyword">const</span> std::string& directory,</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  prid_t projectId);</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a12b38538bbe7711b214ae98544b5cf94">cl earProjectId</a>(</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>  <span class="keyword">const</span> std::string& directory);</div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> } <span class="comment">// namespace xfs {</span></div><div class="line"><a name="l00125"></a><span class="lineno"> 125</span> } <span class="comment">// namespace internal {</span></div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span> } <span class="comment">// namespace mesos {</span></div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="preprocessor">#endif // __XFS_UTILS_HPP__</span></div><div class="ttc" id="namespacepath_html"><div class="ttname"><a href="namespacepath.html">path</a></div> <div class="ttdef"><b>Definition:</b> path.hpp:26</div></div> -<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_a64bf2ffa7d3f6a6281d1f971a35945a5"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a64bf2ffa7d3f6a6281d1f971a35945a5">mesos::internal::xfs::BasicBlocks::BasicBlocks</a></div><div class="ttdeci">BasicBlocks(const Bytes &bytes)</div><div class="ttdef"><b>Definition:</b> utils.hpp:46</div></div> +<a href="src_2slave_2containerizer_2mesos_2isolators_2xfs_2utils_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">// Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// distributed with this work for additional information</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// to you under the Apache License, Version 2.0 (the</span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">// "License"); you may not use this file except in compliance</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">// with 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> <span class="comment">//</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <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> <span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <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"> 1 2</span> <span class="comment">// distributed under the License is distributed on an "AS IS" BASIS,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <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> <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> <span class="comment">// limitations under the License.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span> </div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="preprocessor">#ifndef __XFS_UTILS_HPP__</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#define __XFS_UTILS_H PP__</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> </div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <string></span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <<a class="code" href="bytes_8hpp.html">stout/bytes.hpp</a>></span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <<a class="code" href="interval_8hpp.html">stout/interval.hpp</a>></span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <<a class="code" href="nothing_8hpp.html">stout/nothing.hpp</a>></span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <spa n class="preprocessor">#include <<a class="code" href="try_8hpp.html">stout/try.hpp</a>></span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <xfs/xfs_types.h></span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">namespace </span><a class="code" href="namespacemesos.html">mesos</a> {</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">namespace </span><a class="code" href="namespaceinternal.html">internal</a> {</div><div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1xfs.html"> 31</a></span> <span class="keyword">namespace </span>xfs {</div><div class="line"> <a name="l00032"></a><span class="lineno"> 32</span> </div><div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html"> 33</a></span> <span class="keyword">struct </span><a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html">QuotaInfo</a></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a05361b6efb49517c5c14793769c5ce0f"> 35</a></span>  <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a05361b6efb49517c5c14793769c5ce0f">softLimit</a>;</div><div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6ac7cce741e6d21abed56b729028884a"> 36</a></span>  <a class=" code" href="classBytes.html">Bytes</a> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6ac7cce741e6d21abed56b729028884a">hardLimit</a>;</div><div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc"> 37</a></span>  <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc">used</a>;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span> };</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">// Quota operations are defined in terms of basic blocks (512 byte units).</span></div><div class="line"><a name="l000 42"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html"> 42</a></span> <span class="keyword">class </span><a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html">BasicBlocks</a></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> {</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">public</span>:</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="comment">// Convert from Bytes to basic blocks. Note that we round up since a partial</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="comment">// block costs a full block to store on disk.</span></div><div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a64bf2ffa7d3f6a6281d1f971a35945a5"> 47</a></span>  ; <span class="keyword">explicit</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a64bf2ffa7d3f6a6281d1f971a35945a5">BasicBlocks</a>(<span class="keyword">const</span> <a class="code" href="classBytes.html">Bytes</a>& bytes)</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  : blockCount((bytes.bytes() + BASIC_BLOCK_SIZE - 1) / BASIC_BLOCK_SIZE) {}</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a426296f975d7559f7b6ee629af905616"> 50</a></span>  <span class="keyword">explicit</span> constexpr <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a426296f975d7559f7b6ee629af905616">BasicBlocks</a>(uint64_t _blockCount)</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  : blockCount(_b lockCount) {}</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#aa479383d7a5d5d14bd3a78c82e694bca"> 53</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#aa479383d7a5d5d14bd3a78c82e694bca">operator==</a>(<span class="keyword">const</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html">BasicBlocks</a>& that)<span class="keyword"> const</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keyword"> </span>{</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordflow">return</span> blockCount == that.blockCount;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  }</div><div cl ass="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a34f52c69afd6743630e8e04f906c2ab4"> 58</a></span>  <span class="keywordtype">bool</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a34f52c69afd6743630e8e04f906c2ab4">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html">BasicBlocks</a>& that)<span class="keyword"> const</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keyword"> </span>{</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordflow">return</span> blockCount != that.blockCount;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  }</div><div class="line"><a name="l00062 "></a><span class="lineno"> 62</span> </div><div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#af756bab080806ee8cae4bd6ad122c39f"> 63</a></span>  uint64_t <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#af756bab080806ee8cae4bd6ad122c39f">blocks</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> blockCount; }</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a76d5d9b0feed93901d86b85a8d1ef6c7"> 64</a></span>  <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a76d5d9b0feed93901d86b85a8d1ef6c7">bytes</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classBytes.html">Bytes</a>(BASIC_BLOCK_SIZE) * blockCount; }</div><div c lass="line"><a name="l00065"></a><span class="lineno"> 65</span> </div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">private</span>:</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  uint64_t blockCount;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="keyword">static</span> constexpr <span class="keywordtype">unsigned</span> BASIC_BLOCK_SIZE = 512;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> };</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div><div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb"> 73</a></span> <span class="keyword">enum class</span> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb">QuotaPolicy</a> {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62">ACCOUNTING</a>,</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edbadf980bd9359aae8af8a7a8ec553b1ac7">ENFORCING_ACTIVE</a>,</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba9c38181a3a4b243c6a59c40eedf9b474">ENFORCING_PASSIVE</a></div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span> };</div><div class="line"><a name="l0 0078"></a><span class="lineno"> 78</span> </div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div><div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="namespacemesos_1_1internal_1_1xfs.html#ae68b6cb89b0b81fe5604f0464c3f7513"> 80</a></span> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#ae68b6cb89b0b81fe5604f0464c3f7513">operator==</a>(<span class="keyword">const</span> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html">QuotaInfo</a>& left, <span class="keyword">const</span> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html">QuotaInfo</a>& right)</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> {</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="keywordflow">return</span></div><div class="lin e"><a name="l00083"></a><span class="lineno"> 83</span>  left.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6ac7cce741e6d21abed56b729028884a">hardLimit</a> == right.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6ac7cce741e6d21abed56b729028884a">hardLimit</a> &&</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  left.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a05361b6efb49517c5c14793769c5ce0f">softLimit</a> == right.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a05361b6efb49517c5c14793769c5ce0f">softLimit</a> &&</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  left.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc">used</a> == right.<a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c33 1ccefcc">used</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span> }</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <a class="code" href="classOption.html">Option<Error></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a66c651d8d2d24b42b449fa43273a37e0">validateProjectIds</a>(<span class="keyword">const</span> <a class="code" href="classIntervalSet.html">IntervalSet<prid_t></a>& projectRange);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">bool</span> <a class="code" href="namespacemesos_1_1 internal_1_1xfs.html#a3be2dffb9483b203330c29cff99bf8bd">isPathXfs</a>(<span class="keyword">const</span> std::string& <a class="code" href="namespacepath.html">path</a>);</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="comment">// Test whether XFS project quotas are enabled on the filesystem at the</span></div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="comment">// given path. This does not imply that quotas are being enforced, just</span></div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="comment">// that they are enabled.</span></div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <a class="code" href="classTry.html">Try<bool></a> <a class ="code" href="namespacemesos_1_1internal_1_1xfs.html#ae8c9917f4e16c6ab0da9f75ea29ae5f5">isQuotaEnabled</a>(<span class="keyword">const</span> std::string& path);</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <a class="code" href="classResult.html">Result<QuotaInfo></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#aa733e5e8162e69f52e99eaca1975a1a5">getProjectQuota</a>(</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keyword">const</span> std::string& path,</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  prid_t projectId);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div><div class="line"><a name="l00105"></a><span class="lin eno"> 105</span> </div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a9b4dff7c681ba649e68493db79e163d6">setProjectQuota</a>(</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  <span class="keyword">const</span> std::string& path,</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  prid_t projectId,</div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a05361b6efb49517c5c14793769c5ce0f">softLimit</a>,</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>  <a class="code" href="classBytes.html">Bytes</a> <a class="code" href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html #a6ac7cce741e6d21abed56b729028884a">hardLimit</a>);</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a9b4dff7c681ba649e68493db79e163d6">setProjectQuota</a>(</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keyword">const</span> std::string& path,</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  prid_t projectId,</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <a class="code" href="classBytes.html">Bytes</a> hardLimit);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div><div class="line"><a name="l00 118"></a><span class="lineno"> 118</span> </div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a02c77f8c98b1d1764a5a638e4a27e712">clearProjectQuota</a>(</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  <span class="keyword">const</span> std::string& path,</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  prid_t projectId);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div><div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <a class="code" href="classResult.html">Result<prid_t></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a2faab4664eacd0de5147cfc3289bd976">getProjectId</a>(</div> <div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <span class="keyword">const</span> std::string& directory);</div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a9a6cb4d8955449287db2981675dbde24">setProjectId</a>(</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span>  <span class="keyword">const</span> std::string& directory,</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  prid_t projectId);</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </d iv><div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <a class="code" href="classTry.html">Try<Nothing></a> <a class="code" href="namespacemesos_1_1internal_1_1xfs.html#a12b38538bbe7711b214ae98544b5cf94">clearProjectId</a>(</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="keyword">const</span> std::string& directory);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span> } <span class="comment">// namespace xfs {</span></div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span> } <span class="comment">// namespace internal {</span></div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span> } <span class="comment">// namespace mesos {</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div><div class ="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor">#endif // __XFS_UTILS_HPP__</span></div><div class="ttc" id="namespacepath_html"><div class="ttname"><a href="namespacepath.html">path</a></div><div class="ttdef"><b>Definition:</b> path.hpp:26</div></div> +<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_a64bf2ffa7d3f6a6281d1f971a35945a5"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a64bf2ffa7d3f6a6281d1f971a35945a5">mesos::internal::xfs::BasicBlocks::BasicBlocks</a></div><div class="ttdeci">BasicBlocks(const Bytes &bytes)</div><div class="ttdef"><b>Definition:</b> utils.hpp:47</div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_aa733e5e8162e69f52e99eaca1975a1a5"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#aa733e5e8162e69f52e99eaca1975a1a5">mesos::internal::xfs::getProjectQuota</a></div><div class="ttdeci">Result< QuotaInfo > getProjectQuota(const std::string &path, prid_t projectId)</div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba0cc1ed309be6d32f09cebeaf1d378c62">mesos::internal::xfs::QuotaPolicy::ACCOUNTING</a></div></div> <div class="ttc" id="classOption_html"><div class="ttname"><a href="classOption.html">Option< Error ></a></div></div> -<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html">mesos::internal::xfs::BasicBlocks</a></div><div class="ttdef"><b>Definition:</b> utils.hpp:41</div></div> -<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_a76d5d9b0feed93901d86b85a8d1ef6c7"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a76d5d9b0feed93901d86b85a8d1ef6c7">mesos::internal::xfs::BasicBlocks::bytes</a></div><div class="ttdeci">Bytes bytes() const </div><div class="ttdef"><b>Definition:</b> utils.hpp:63</div></div> +<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html">mesos::internal::xfs::BasicBlocks</a></div><div class="ttdef"><b>Definition:</b> utils.hpp:42</div></div> +<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_a76d5d9b0feed93901d86b85a8d1ef6c7"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a76d5d9b0feed93901d86b85a8d1ef6c7">mesos::internal::xfs::BasicBlocks::bytes</a></div><div class="ttdeci">Bytes bytes() const </div><div class="ttdef"><b>Definition:</b> utils.hpp:64</div></div> <div class="ttc" id="classTry_html"><div class="ttname"><a href="classTry.html">Try</a></div><div class="ttdef"><b>Definition:</b> check.hpp:33</div></div> -<div class="ttc" id="structmesos_1_1internal_1_1xfs_1_1QuotaInfo_html_a6becf14bf4942e6bea1e0e6dbf71a22f"><div class="ttname"><a href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6becf14bf4942e6bea1e0e6dbf71a22f">mesos::internal::xfs::QuotaInfo::limit</a></div><div class="ttdeci">Bytes limit</div><div class="ttdef"><b>Definition:</b> utils.hpp:35</div></div> -<div class="ttc" id="structmesos_1_1internal_1_1xfs_1_1QuotaInfo_html_a2afa7846a2048a9f425353c331ccefcc"><div class="ttname"><a href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc">mesos::internal::xfs::QuotaInfo::used</a></div><div class="ttdeci">Bytes used</div><div class="ttdef"><b>Definition:</b> utils.hpp:36</div></div> -<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_aa479383d7a5d5d14bd3a78c82e694bca"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#aa479383d7a5d5d14bd3a78c82e694bca">mesos::internal::xfs::BasicBlocks::operator==</a></div><div class="ttdeci">bool operator==(const BasicBlocks &that) const </div><div class="ttdef"><b>Definition:</b> utils.hpp:52</div></div> +<div class="ttc" id="structmesos_1_1internal_1_1xfs_1_1QuotaInfo_html_a2afa7846a2048a9f425353c331ccefcc"><div class="ttname"><a href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a2afa7846a2048a9f425353c331ccefcc">mesos::internal::xfs::QuotaInfo::used</a></div><div class="ttdeci">Bytes used</div><div class="ttdef"><b>Definition:</b> utils.hpp:37</div></div> +<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_aa479383d7a5d5d14bd3a78c82e694bca"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#aa479383d7a5d5d14bd3a78c82e694bca">mesos::internal::xfs::BasicBlocks::operator==</a></div><div class="ttdeci">bool operator==(const BasicBlocks &that) const </div><div class="ttdef"><b>Definition:</b> utils.hpp:53</div></div> <div class="ttc" id="classIntervalSet_html"><div class="ttname"><a href="classIntervalSet.html">IntervalSet< prid_t ></a></div></div> <div class="ttc" id="classResult_html"><div class="ttname"><a href="classResult.html">Result</a></div><div class="ttdef"><b>Definition:</b> check.hpp:30</div></div> -<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_ae68b6cb89b0b81fe5604f0464c3f7513"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#ae68b6cb89b0b81fe5604f0464c3f7513">mesos::internal::xfs::operator==</a></div><div class="ttdeci">bool operator==(const QuotaInfo &left, const QuotaInfo &right)</div><div class="ttdef"><b>Definition:</b> utils.hpp:78</div></div> +<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_ae68b6cb89b0b81fe5604f0464c3f7513"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#ae68b6cb89b0b81fe5604f0464c3f7513">mesos::internal::xfs::operator==</a></div><div class="ttdeci">bool operator==(const QuotaInfo &left, const QuotaInfo &right)</div><div class="ttdef"><b>Definition:</b> utils.hpp:80</div></div> +<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a9b4dff7c681ba649e68493db79e163d6"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a9b4dff7c681ba649e68493db79e163d6">mesos::internal::xfs::setProjectQuota</a></div><div class="ttdeci">Try< Nothing > setProjectQuota(const std::string &path, prid_t projectId, Bytes softLimit, Bytes hardLimit)</div></div> <div class="ttc" id="nothing_8hpp_html"><div class="ttname"><a href="nothing_8hpp.html">nothing.hpp</a></div></div> +<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a50dd94c22d32cfc0d00c7468b3bd7edbadf980bd9359aae8af8a7a8ec553b1ac7"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edbadf980bd9359aae8af8a7a8ec553b1ac7">mesos::internal::xfs::QuotaPolicy::ENFORCING_ACTIVE</a></div></div> <div class="ttc" id="bytes_8hpp_html"><div class="ttname"><a href="bytes_8hpp.html">bytes.hpp</a></div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a02c77f8c98b1d1764a5a638e4a27e712"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a02c77f8c98b1d1764a5a638e4a27e712">mesos::internal::xfs::clearProjectQuota</a></div><div class="ttdeci">Try< Nothing > clearProjectQuota(const std::string &path, prid_t projectId)</div></div> <div class="ttc" id="namespacemesos_html"><div class="ttname"><a href="namespacemesos.html">mesos</a></div><div class="ttdef"><b>Definition:</b> spec.hpp:30</div></div> +<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a50dd94c22d32cfc0d00c7468b3bd7edba9c38181a3a4b243c6a59c40eedf9b474"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edba9c38181a3a4b243c6a59c40eedf9b474">mesos::internal::xfs::QuotaPolicy::ENFORCING_PASSIVE</a></div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a2faab4664eacd0de5147cfc3289bd976"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a2faab4664eacd0de5147cfc3289bd976">mesos::internal::xfs::getProjectId</a></div><div class="ttdeci">Result< prid_t > getProjectId(const std::string &directory)</div></div> -<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a50dd94c22d32cfc0d00c7468b3bd7edb"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb">mesos::internal::xfs::QuotaPolicy</a></div><div class="ttdeci">QuotaPolicy</div><div class="ttdef"><b>Definition:</b> utils.hpp:72</div></div> +<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a50dd94c22d32cfc0d00c7468b3bd7edb"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edb">mesos::internal::xfs::QuotaPolicy</a></div><div class="ttdeci">QuotaPolicy</div><div class="ttdef"><b>Definition:</b> utils.hpp:73</div></div> <div class="ttc" id="interval_8hpp_html"><div class="ttname"><a href="interval_8hpp.html">interval.hpp</a></div></div> -<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a50dd94c22d32cfc0d00c7468b3bd7edbafb0bfbfae87223b83e0689560d4c268e"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a50dd94c22d32cfc0d00c7468b3bd7edbafb0bfbfae87223b83e0689560d4c268e">mesos::internal::xfs::QuotaPolicy::ENFORCING</a></div></div> <div class="ttc" id="namespaceinternal_html"><div class="ttname"><a href="namespaceinternal.html">internal</a></div><div class="ttdef"><b>Definition:</b> attributes.hpp:24</div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a3be2dffb9483b203330c29cff99bf8bd"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a3be2dffb9483b203330c29cff99bf8bd">mesos::internal::xfs::isPathXfs</a></div><div class="ttdeci">bool isPathXfs(const std::string &path)</div></div> +<div class="ttc" id="structmesos_1_1internal_1_1xfs_1_1QuotaInfo_html_a05361b6efb49517c5c14793769c5ce0f"><div class="ttname"><a href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a05361b6efb49517c5c14793769c5ce0f">mesos::internal::xfs::QuotaInfo::softLimit</a></div><div class="ttdeci">Bytes softLimit</div><div class="ttdef"><b>Definition:</b> utils.hpp:35</div></div> <div class="ttc" id="structmesos_1_1internal_1_1xfs_1_1QuotaInfo_html"><div class="ttname"><a href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html">mesos::internal::xfs::QuotaInfo</a></div><div class="ttdef"><b>Definition:</b> utils.hpp:33</div></div> <div class="ttc" id="try_8hpp_html"><div class="ttname"><a href="try_8hpp.html">try.hpp</a></div></div> -<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_af756bab080806ee8cae4bd6ad122c39f"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#af756bab080806ee8cae4bd6ad122c39f">mesos::internal::xfs::BasicBlocks::blocks</a></div><div class="ttdeci">uint64_t blocks() const </div><div class="ttdef"><b>Definition:</b> utils.hpp:62</div></div> +<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_af756bab080806ee8cae4bd6ad122c39f"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#af756bab080806ee8cae4bd6ad122c39f">mesos::internal::xfs::BasicBlocks::blocks</a></div><div class="ttdeci">uint64_t blocks() const </div><div class="ttdef"><b>Definition:</b> utils.hpp:63</div></div> <div class="ttc" id="classBytes_html"><div class="ttname"><a href="classBytes.html">Bytes</a></div><div class="ttdef"><b>Definition:</b> bytes.hpp:30</div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_ae8c9917f4e16c6ab0da9f75ea29ae5f5"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#ae8c9917f4e16c6ab0da9f75ea29ae5f5">mesos::internal::xfs::isQuotaEnabled</a></div><div class="ttdeci">Try< bool > isQuotaEnabled(const std::string &path)</div></div> -<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_a34f52c69afd6743630e8e04f906c2ab4"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a34f52c69afd6743630e8e04f906c2ab4">mesos::internal::xfs::BasicBlocks::operator!=</a></div><div class="ttdeci">bool operator!=(const BasicBlocks &that) const </div><div class="ttdef"><b>Definition:</b> utils.hpp:57</div></div> +<div class="ttc" id="structmesos_1_1internal_1_1xfs_1_1QuotaInfo_html_a6ac7cce741e6d21abed56b729028884a"><div class="ttname"><a href="structmesos_1_1internal_1_1xfs_1_1QuotaInfo.html#a6ac7cce741e6d21abed56b729028884a">mesos::internal::xfs::QuotaInfo::hardLimit</a></div><div class="ttdeci">Bytes hardLimit</div><div class="ttdef"><b>Definition:</b> utils.hpp:36</div></div> +<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_a34f52c69afd6743630e8e04f906c2ab4"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a34f52c69afd6743630e8e04f906c2ab4">mesos::internal::xfs::BasicBlocks::operator!=</a></div><div class="ttdeci">bool operator!=(const BasicBlocks &that) const </div><div class="ttdef"><b>Definition:</b> utils.hpp:58</div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a12b38538bbe7711b214ae98544b5cf94"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a12b38538bbe7711b214ae98544b5cf94">mesos::internal::xfs::clearProjectId</a></div><div class="ttdeci">Try< Nothing > clearProjectId(const std::string &directory)</div></div> -<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_a426296f975d7559f7b6ee629af905616"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a426296f975d7559f7b6ee629af905616">mesos::internal::xfs::BasicBlocks::BasicBlocks</a></div><div class="ttdeci">constexpr BasicBlocks(uint64_t _blockCount)</div><div class="ttdef"><b>Definition:</b> utils.hpp:49</div></div> +<div class="ttc" id="classmesos_1_1internal_1_1xfs_1_1BasicBlocks_html_a426296f975d7559f7b6ee629af905616"><div class="ttname"><a href="classmesos_1_1internal_1_1xfs_1_1BasicBlocks.html#a426296f975d7559f7b6ee629af905616">mesos::internal::xfs::BasicBlocks::BasicBlocks</a></div><div class="ttdeci">constexpr BasicBlocks(uint64_t _blockCount)</div><div class="ttdef"><b>Definition:</b> utils.hpp:50</div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a9a6cb4d8955449287db2981675dbde24"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a9a6cb4d8955449287db2981675dbde24">mesos::internal::xfs::setProjectId</a></div><div class="ttdeci">Try< Nothing > setProjectId(const std::string &directory, prid_t projectId)</div></div> <div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_a66c651d8d2d24b42b449fa43273a37e0"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#a66c651d8d2d24b42b449fa43273a37e0">mesos::internal::xfs::validateProjectIds</a></div><div class="ttdeci">Option< Error > validateProjectIds(const IntervalSet< prid_t > &projectRange)</div></div> -<div class="ttc" id="namespacemesos_1_1internal_1_1xfs_html_aabad116194769a67636d572b63ae7ad1"><div class="ttname"><a href="namespacemesos_1_1internal_1_1xfs.html#aabad116194769a67636d572b63ae7ad1">mesos::internal::xfs::setProjectQuota</a></div><div class="ttdeci">Try< Nothing > setProjectQuota(const std::string &path, prid_t projectId, Bytes limit)</div></div> </div><!-- fragment --></div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small>