Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-updates > by-pkgid > 68c0c2ff89d8bf9051ff1b9773ed48e4 > files > 1831

libzypp-doc-17.9.0-1.1.mga7.noarch.rpm

<!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>libzypp: zypp/PluginFrame.cc 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="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">libzypp
   &#160;<span id="projectnumber">17.9.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<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('',false,false,'search.php','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('PluginFrame_8cc_source.html','');});
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">PluginFrame.cc</div>  </div>
</div><!--header-->
<div class="contents">
<a href="PluginFrame_8cc.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">|                          ____ _   __ __ ___                          |</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">|                         |__  / \ / / . \ . \                         |</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment">|                           / / \ V /|  _/  _/                         |</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment">|                          / /__ | | | | | |                           |</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment">|                         /_____||_| |_| |_|                           |</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">|                                                                      |</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="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;iostream&gt;</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="LogTools_8h.html">zypp/base/LogTools.h</a>&quot;</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="String_8h.html">zypp/base/String.h</a>&quot;</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;</div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="PluginFrame_8h.html">zypp/PluginFrame.h</a>&quot;</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="keyword">using</span> std::endl;</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">#undef  ZYPP_BASE_LOGGER_LOGGROUP</span></div><div class="line"><a name="l00021"></a><span class="lineno"><a class="line" href="PluginFrame_8cc.html#ad11ca1dc9757eafa29e9de2259388ff4">   21</a></span>&#160;<span class="preprocessor">#define ZYPP_BASE_LOGGER_LOGGROUP &quot;zypp::plugin&quot;</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacezypp.html">zypp</a></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;{ </div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;  <span class="comment">//    CLASS NAME : PluginFrame::Impl</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html">   32</a></span>&#160;<span class="comment"></span>  <span class="keyword">struct </span><a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">PluginFrame::Impl</a></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;  {</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00035"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a5390a5b3a1af39e2da64f02a9a9adabd">   35</a></span>&#160;      <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a5390a5b3a1af39e2da64f02a9a9adabd">Impl</a>()</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;</div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a7a2aa4c77c77f2190ca7f05f58657be4">   38</a></span>&#160;      <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a7a2aa4c77c77f2190ca7f05f58657be4">Impl</a>( <span class="keyword">const</span> std::string &amp; command_r )</div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;      { <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a170883912ebd53ff80d4cbc2ed873edd">setCommand</a>( command_r ); }</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#aef820b7435a770cd631ec4cc20e148e4">   41</a></span>&#160;      <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#aef820b7435a770cd631ec4cc20e148e4">Impl</a>( <span class="keyword">const</span> std::string &amp; command_r, <span class="keyword">const</span> std::string &amp; body_r )</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;        : <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">_body</a>( body_r )</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;      { <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a170883912ebd53ff80d4cbc2ed873edd">setCommand</a>( command_r ); }</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a1ab72481c7b5b474e730d7cee627a101">   45</a></span>&#160;      <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a1ab72481c7b5b474e730d7cee627a101">Impl</a>( <span class="keyword">const</span> std::string &amp; command_r, <a class="code" href="classzypp_1_1PluginFrame.html#a09fe2c6c79d5e8b820f410c05174cc13">HeaderInitializerList</a> contents_r )</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;      { <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a170883912ebd53ff80d4cbc2ed873edd">setCommand</a>( command_r ); <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">addHeader</a>( contents_r ); }</div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#abf2ccb495a176d51f2eb2bc1ea5cc226">   48</a></span>&#160;      <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#abf2ccb495a176d51f2eb2bc1ea5cc226">Impl</a>( <span class="keyword">const</span> std::string &amp; command_r, <span class="keyword">const</span> std::string &amp; body_r, <a class="code" href="classzypp_1_1PluginFrame.html#a09fe2c6c79d5e8b820f410c05174cc13">HeaderInitializerList</a> contents_r )</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        : <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">_body</a>( body_r )</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;      { <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a170883912ebd53ff80d4cbc2ed873edd">setCommand</a>( command_r ); <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">addHeader</a>( contents_r ); }</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;      <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a5390a5b3a1af39e2da64f02a9a9adabd">Impl</a>( std::istream &amp; stream_r );</div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#aad8c5bfbeb50eac6dd790c5195394f8d">   55</a></span>&#160;      <span class="keywordtype">bool</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#aad8c5bfbeb50eac6dd790c5195394f8d">empty</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keyword">      </span>{ <span class="keywordflow">return</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a3bf5f454060e3a8e547eb7c89f34c828">_command</a>.empty() &amp;&amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">_body</a>.empty(); }</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a29858e78acde6f3fec60d8891f353681">   58</a></span>&#160;      <span class="keyword">const</span> std::string &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a29858e78acde6f3fec60d8891f353681">command</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keyword">      </span>{ <span class="keywordflow">return</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a3bf5f454060e3a8e547eb7c89f34c828">_command</a>; }</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a170883912ebd53ff80d4cbc2ed873edd">   61</a></span>&#160;      <span class="keywordtype">void</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a170883912ebd53ff80d4cbc2ed873edd">setCommand</a>( <span class="keyword">const</span> std::string &amp; command_r )</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;      {</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;        <span class="keywordflow">if</span> ( command_r.find( <span class="charliteral">&#39;\n&#39;</span> ) != std::string::npos )</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;          <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Multiline command&quot;</span>, command_r ) );</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a3bf5f454060e3a8e547eb7c89f34c828">_command</a> = command_r;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;      }</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a4e66485247e71809218912d940c262c2">   68</a></span>&#160;      <span class="keyword">const</span> std::string &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a4e66485247e71809218912d940c262c2">body</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="keyword">      </span>{ <span class="keywordflow">return</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">_body</a>; }</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div><div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#ab0169793be9e6b663b84b8bdafc2e44a">   71</a></span>&#160;      std::string &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ab0169793be9e6b663b84b8bdafc2e44a">bodyRef</a>()</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;      { <span class="keywordflow">return</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">_body</a>; }</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a96cfcb33f41308f9063f93e7b9127082">   74</a></span>&#160;      <span class="keywordtype">void</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a96cfcb33f41308f9063f93e7b9127082">setBody</a>( <span class="keyword">const</span> std::string &amp; body_r )</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;      { <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">_body</a> = body_r; }</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a9ebeea54034700b182489900ce7ab171">   78</a></span>&#160;      <span class="keyword">typedef</span> std::pair&lt;HeaderListIterator,HeaderListIterator&gt; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a9ebeea54034700b182489900ce7ab171">constKeyRange</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#aab3f8ee81c37ca4beb020602af9a68eb">   79</a></span>&#160;      <span class="keyword">typedef</span> std::pair&lt;HeaderList::iterator,HeaderList::iterator&gt; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#aab3f8ee81c37ca4beb020602af9a68eb">KeyRange</a>;</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a9f40dee988284b7dc031e94d7d74b3f1">   81</a></span>&#160;      <a class="code" href="classzypp_1_1PluginFrame.html#aada34762e4bc66fab2612fb00dfa992f">HeaderList</a> &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a9f40dee988284b7dc031e94d7d74b3f1">headerList</a>()</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;      { <span class="keywordflow">return</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>; }</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;</div><div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#ae1f86681773a488bcf04f3087200d9bb">   84</a></span>&#160;      <span class="keyword">const</span> <a class="code" href="classzypp_1_1PluginFrame.html#aada34762e4bc66fab2612fb00dfa992f">HeaderList</a> &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ae1f86681773a488bcf04f3087200d9bb">headerList</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;<span class="keyword">      </span>{ <span class="keywordflow">return</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>; }</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;</div><div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#aa99d01b049fca7be2ee92581febb6763">   87</a></span>&#160;      <span class="keyword">const</span> std::string &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#aa99d01b049fca7be2ee92581febb6763">getHeader</a>( <span class="keyword">const</span> std::string &amp; key_r )<span class="keyword"> const</span></div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;<span class="keyword">      </span>{</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a9ebeea54034700b182489900ce7ab171">constKeyRange</a> r( <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>.equal_range( key_r ) );</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;        <span class="keywordflow">if</span> ( r.first == r.second )</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;          <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;No value for key&quot;</span>, key_r ) );</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        <span class="keyword">const</span> std::string &amp; ret( r.first-&gt;second );</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keywordflow">if</span> ( ++r.first != r.second )</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;          <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Multiple values for key&quot;</span>, key_r ) );</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;        <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;      }</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a15e3a71c725a6e14b4de67641736aa4d">   98</a></span>&#160;      <span class="keyword">const</span> std::string &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a15e3a71c725a6e14b4de67641736aa4d">getHeader</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; default_r )<span class="keyword"> const</span></div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;<span class="keyword">      </span>{</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;        <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a9ebeea54034700b182489900ce7ab171">constKeyRange</a> r( <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>.equal_range( key_r ) );</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;        <span class="keywordflow">if</span> ( r.first == r.second )</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;          <span class="keywordflow">return</span> default_r;</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        <span class="keyword">const</span> std::string &amp; ret( r.first-&gt;second );</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        <span class="keywordflow">if</span> ( ++r.first != r.second )</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;          <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Multiple values for key&quot;</span>, key_r ) );</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;      }</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;</div><div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a5f8168a186240dac3aa2e83d60545e37">  109</a></span>&#160;      <span class="keyword">const</span> std::string &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a5f8168a186240dac3aa2e83d60545e37">getHeaderNT</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; default_r )<span class="keyword"> const</span></div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;<span class="keyword">      </span>{</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        <a class="code" href="classzypp_1_1PluginFrame.html#a5164fac8f6aaa3ab239c23aa22025287">HeaderListIterator</a> iter( <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>.find( key_r ) );</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        <span class="keywordflow">return</span> iter != <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>.end() ? iter-&gt;second : default_r;</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;      }</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;</div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#ae3bd62fc4d3d1d948b10d9278bfe7d2d">  115</a></span>&#160;      HeaderList::value_type <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ae3bd62fc4d3d1d948b10d9278bfe7d2d">mkHeaderPair</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; value_r )</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;      {</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;        <span class="keywordflow">if</span> ( key_r.find_first_of( <span class="stringliteral">&quot;:\n&quot;</span> ) != std::string::npos )</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;          <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Illegal char in header key&quot;</span>, key_r ) );</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;        <span class="keywordflow">if</span> ( value_r.find_first_of( <span class="stringliteral">&quot;\n&quot;</span> ) != std::string::npos )</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;          <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Illegal char in header value&quot;</span>, value_r ) );</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        <span class="keywordflow">return</span> HeaderList::value_type( key_r, value_r );</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;      }</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#ab2b6572d7eb7272c34ba7ee71eb08334">  124</a></span>&#160;      <span class="keywordtype">void</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ab2b6572d7eb7272c34ba7ee71eb08334">setHeader</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; value_r )</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;      {</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;        <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ab7d196b41f4c443ed1e0197633b73ed9">clearHeader</a>( key_r );</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">addHeader</a>( key_r, value_r );</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;      }</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div><div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">  130</a></span>&#160;      <span class="keywordtype">void</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">addHeader</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; value_r )</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;      {</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;        <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>.insert( <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ae3bd62fc4d3d1d948b10d9278bfe7d2d">mkHeaderPair</a>( key_r, value_r ) );</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;      }</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#ae297a9183e03f0eaedb11520dfef6599">  135</a></span>&#160;      <span class="keywordtype">void</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ae297a9183e03f0eaedb11520dfef6599">addHeader</a>( <a class="code" href="classzypp_1_1PluginFrame.html#a09fe2c6c79d5e8b820f410c05174cc13">HeaderInitializerList</a> contents_r )</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;      {</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;        <span class="keywordflow">for</span> ( <span class="keyword">const</span> <span class="keyword">auto</span> &amp; el : contents_r )</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;          <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">addHeader</a>( el.first, el.second );</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;      }</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#ab7d196b41f4c443ed1e0197633b73ed9">  141</a></span>&#160;      <span class="keywordtype">void</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ab7d196b41f4c443ed1e0197633b73ed9">clearHeader</a>( <span class="keyword">const</span> std::string &amp; key_r )</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;      {</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>.erase( key_r );</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;      }</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;      std::ostream &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a06c88bc9835f6c1b1c6bf263fbb9a475">writeTo</a>( std::ostream &amp; stream_r ) <span class="keyword">const</span>;</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a3bf5f454060e3a8e547eb7c89f34c828">  150</a></span>&#160;      std::string <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a3bf5f454060e3a8e547eb7c89f34c828">_command</a>;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">  151</a></span>&#160;      std::string <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">_body</a>;</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">  152</a></span>&#160;      <a class="code" href="classzypp_1_1PluginFrame.html#aada34762e4bc66fab2612fb00dfa992f">HeaderList</a>  <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>;</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#aff295000ccad860c454daafcfe77db11">  156</a></span>&#160;      <span class="keyword">static</span> shared_ptr&lt;Impl&gt; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#aff295000ccad860c454daafcfe77db11">nullimpl</a>()</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;      {</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="keyword">static</span> shared_ptr&lt;Impl&gt; _nullimpl( <span class="keyword">new</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a> );</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;        <span class="keywordflow">return</span> _nullimpl;</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;      }</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;      <span class="keyword">friend</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a> * rwcowClone&lt;Impl&gt;( <span class="keyword">const</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a> * rhs );</div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#ab379ab08c91dab542d25bb54da2d11af">  164</a></span>&#160;      <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a> * <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ab379ab08c91dab542d25bb54da2d11af">clone</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;<span class="keyword">      </span>{ <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a5390a5b3a1af39e2da64f02a9a9adabd">Impl</a>( *<span class="keyword">this</span> ); }</div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;  };</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#af8fdc0a73fc3ed581c4d6b63f50dc3f0">  170</a></span>&#160;  <span class="keyword">inline</span> std::ostream &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#af8fdc0a73fc3ed581c4d6b63f50dc3f0">operator&lt;&lt;</a>( std::ostream &amp; <a class="code" href="namespacestr.html">str</a>, <span class="keyword">const</span> <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">PluginFrame::Impl</a> &amp; obj )</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;  {</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="namespacestr.html">str</a> &lt;&lt; <span class="stringliteral">&quot;PluginFrame[&quot;</span> &lt;&lt; obj.<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a29858e78acde6f3fec60d8891f353681">command</a>() &lt;&lt; <span class="stringliteral">&quot;](&quot;</span> &lt;&lt; obj.<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a9f40dee988284b7dc031e94d7d74b3f1">headerList</a>().size() &lt;&lt; <span class="stringliteral">&quot;){&quot;</span> &lt;&lt; obj.<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a4e66485247e71809218912d940c262c2">body</a>().size() &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;  }</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a946f87278a9a71fff5560cad1375f503">  175</a></span>&#160;  <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a5390a5b3a1af39e2da64f02a9a9adabd">PluginFrame::Impl::Impl</a>( std::istream &amp; stream_r )</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;  {</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    <span class="comment">//DBG &lt;&lt; &quot;Parse from &quot; &lt;&lt; stream_r &lt;&lt; endl;</span></div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    <span class="keywordflow">if</span> ( ! stream_r )</div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;      <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Bad Stream&quot;</span> ) );</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    <span class="comment">// JFYI: stream status after getline():</span></div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    <span class="comment">//  Bool  | Bits</span></div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;    <span class="comment">//  ------|---------------</span></div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    <span class="comment">//  true  | [g___] &gt;FOO&lt; : FOO line was \n-terminated</span></div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    <span class="comment">//  true  | [_e__] &gt;BAA&lt; : BAA before EOF, but not \n-terminated</span></div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="comment">//  false | [_eF_] &gt;&lt;    : No valid data to consume</span></div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    <span class="comment">//command</span></div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;    <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a3bf5f454060e3a8e547eb7c89f34c828">_command</a> = <a class="code" href="namespacezypp_1_1str.html#a65082648364fa4015d6f92fc7892ed84">str::getline</a>( stream_r );</div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    <span class="keywordflow">if</span> ( ! stream_r.good() )</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;      <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Missing NL after command&quot;</span> ) );</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;    <span class="comment">// header</span></div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keywordflow">do</span> {</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;      std::string data = <a class="code" href="namespacezypp_1_1str.html#a65082648364fa4015d6f92fc7892ed84">str::getline</a>( stream_r );</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;      <span class="keywordflow">if</span> ( ! stream_r.good() )</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Missing NL after header&quot;</span> ) );</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;      <span class="keywordflow">if</span> ( data.empty() )</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        <span class="keywordflow">break</span>;  <span class="comment">// --&gt; empty line sep. header and body</span></div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;      <a class="code" href="namespacezypp_1_1sat_1_1detail.html#ac0d3ca93132eee14b022898f23b49d07">std::string::size_type</a> sep( data.find( <span class="charliteral">&#39;:&#39;</span>) );</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;      <span class="keywordflow">if</span> ( sep ==  std::string::npos )</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Missing colon in header&quot;</span> ) );</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;      <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">_header</a>.insert( HeaderList::value_type( data.substr(0,sep), data.substr(sep+1) ) );</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;    } <span class="keywordflow">while</span> ( <span class="keyword">true</span> );</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;    <span class="comment">// data</span></div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">_body</a> = <a class="code" href="namespacezypp_1_1str.html#a7116cde967828e981894ee7caad38d3e">str::receiveUpTo</a>( stream_r, <span class="charliteral">&#39;\0&#39;</span> );</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;    <span class="keywordflow">if</span> ( ! stream_r.good() )</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;      <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Missing NUL after body&quot;</span> ) );</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;  }</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;</div><div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="structzypp_1_1PluginFrame_1_1Impl.html#a06c88bc9835f6c1b1c6bf263fbb9a475">  215</a></span>&#160;  std::ostream &amp; <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a06c88bc9835f6c1b1c6bf263fbb9a475">PluginFrame::Impl::writeTo</a>( std::ostream &amp; stream_r )<span class="keyword"> const</span></div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;<span class="keyword">  </span>{</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    <span class="comment">//DBG &lt;&lt; &quot;Write &quot; &lt;&lt; *this &lt;&lt; &quot; to &quot; &lt;&lt; stream_r &lt;&lt; endl;</span></div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;    <span class="keywordflow">if</span> ( ! stream_r )</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;      <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Bad Stream&quot;</span> ) );</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;    <span class="comment">// command</span></div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;    stream_r &lt;&lt; _command &lt;&lt; endl;</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;    <span class="comment">// header</span></div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;    <a class="code" href="Easy_8h.html#a7887338b8a0727becb37d8061fcbfc0e">for_</a>( it, _header.begin(), _header.end() )</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;      stream_r &lt;&lt; it-&gt;first &lt;&lt; <span class="charliteral">&#39;:&#39;</span> &lt;&lt; it-&gt;second &lt;&lt; endl;</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    <span class="comment">// body</span></div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;    stream_r &lt;&lt; endl</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;             &lt;&lt; _body &lt;&lt; <span class="charliteral">&#39;\0&#39;</span>;</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    if ( ! stream_r )</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;      <a class="code" href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a>( <a class="code" href="classzypp_1_1PluginFrameException.html">PluginFrameException</a>( <span class="stringliteral">&quot;Write error&quot;</span> ) );</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    <span class="keywordflow">return</span> stream_r;</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;  }</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;  <span class="comment">//    CLASS NAME : PluginFrame</span></div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;  <span class="comment">//</span></div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a0ec4b412b1e475468e79ff62043e1f80">  241</a></span>&#160;  <span class="keyword">const</span> std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#a0ec4b412b1e475468e79ff62043e1f80">PluginFrame::ackCommand</a>()</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;  {</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;    <span class="keyword">static</span> std::string _val( <span class="stringliteral">&quot;ACK&quot;</span> );</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;    <span class="keywordflow">return</span> _val;</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;  }</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#aa874d0d3f1d86e3ce160107544db9a4f">  247</a></span>&#160;  <span class="keyword">const</span> std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#aa874d0d3f1d86e3ce160107544db9a4f">PluginFrame::errorCommand</a>()</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;  {</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;    <span class="keyword">static</span> std::string _val( <span class="stringliteral">&quot;ERROR&quot;</span> );</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    <span class="keywordflow">return</span> _val;</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;  }</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;</div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a7e63b00a54daa9250c3e3b6e16e3765e">  253</a></span>&#160;  <span class="keyword">const</span> std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#a7e63b00a54daa9250c3e3b6e16e3765e">PluginFrame::enomethodCommand</a>()</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;  {</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;    <span class="keyword">static</span> std::string _val( <span class="stringliteral">&quot;_ENOMETHOD&quot;</span> );</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;    <span class="keywordflow">return</span> _val;</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;  }</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a342538d21229ce819bd9fbf54c8087cc">  259</a></span>&#160;  <a class="code" href="classzypp_1_1PluginFrame.html#a342538d21229ce819bd9fbf54c8087cc">PluginFrame::PluginFrame</a>()</div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    : <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>( <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a>::nullimpl() )</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;  {}</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;</div><div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a2a9c1a468f6092dd288c7d19bd930567">  263</a></span>&#160;  <a class="code" href="classzypp_1_1PluginFrame.html#a342538d21229ce819bd9fbf54c8087cc">PluginFrame::PluginFrame</a>( <span class="keyword">const</span> std::string &amp; command_r )</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;    : _pimpl( new <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a>( command_r ) )</div><div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;  {}</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;</div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#ada3fcca14b33e61bfe074d15a25887d7">  267</a></span>&#160;  <a class="code" href="classzypp_1_1PluginFrame.html#a342538d21229ce819bd9fbf54c8087cc">PluginFrame::PluginFrame</a>( <span class="keyword">const</span> std::string &amp; command_r, <span class="keyword">const</span> std::string &amp; body_r )</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    : _pimpl( new <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a>( command_r, body_r ) )</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;  {}</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;</div><div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#aa1b39e476130051c28993730766d05c6">  271</a></span>&#160;  <a class="code" href="classzypp_1_1PluginFrame.html#a342538d21229ce819bd9fbf54c8087cc">PluginFrame::PluginFrame</a>( <span class="keyword">const</span> std::string &amp; command_r, <a class="code" href="classzypp_1_1PluginFrame.html#a09fe2c6c79d5e8b820f410c05174cc13">HeaderInitializerList</a> contents_r )</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;    : _pimpl( new <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a>( command_r, contents_r ) )</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;  {}</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;</div><div class="line"><a name="l00275"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a5eaa40fc2b467ed5a72f4a56eb358723">  275</a></span>&#160;  <a class="code" href="classzypp_1_1PluginFrame.html#a342538d21229ce819bd9fbf54c8087cc">PluginFrame::PluginFrame</a>( <span class="keyword">const</span> std::string &amp; command_r, <span class="keyword">const</span> std::string &amp; body_r, <a class="code" href="classzypp_1_1PluginFrame.html#a09fe2c6c79d5e8b820f410c05174cc13">HeaderInitializerList</a> contents_r )</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;    : _pimpl( new <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a>( command_r, body_r, contents_r ) )</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;  {}</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a3bc2776d4bc095965d659dd40405bfac">  279</a></span>&#160;  <a class="code" href="classzypp_1_1PluginFrame.html#a342538d21229ce819bd9fbf54c8087cc">PluginFrame::PluginFrame</a>( std::istream &amp; stream_r )</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;    : _pimpl( new <a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html">Impl</a>( stream_r ) )</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;  {}</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a7066c8b9b40e735b41352eed22675d3f">  283</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classzypp_1_1PluginFrame.html#a7066c8b9b40e735b41352eed22675d3f">PluginFrame::empty</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;<span class="keyword">  </span>{ <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#aad8c5bfbeb50eac6dd790c5195394f8d">empty</a>(); }</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a9671c2fb3b1cd27635195b6519f9af92">  286</a></span>&#160;  <span class="keyword">const</span> std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#a9671c2fb3b1cd27635195b6519f9af92">PluginFrame::command</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;<span class="keyword">  </span>{ <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a29858e78acde6f3fec60d8891f353681">command</a>(); }</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;</div><div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a218d0c015a4c8a17a0cf58280a3c65cb">  289</a></span>&#160;  <span class="keywordtype">void</span>  <a class="code" href="classzypp_1_1PluginFrame.html#a218d0c015a4c8a17a0cf58280a3c65cb">PluginFrame::setCommand</a>( <span class="keyword">const</span> std::string &amp; command_r )</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;  { <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a170883912ebd53ff80d4cbc2ed873edd">setCommand</a>( command_r ); }</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;</div><div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a304c1ba099dd4ee15d1a0d16744b002e">  292</a></span>&#160;  <span class="keyword">const</span> std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#a304c1ba099dd4ee15d1a0d16744b002e">PluginFrame::body</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;<span class="keyword">  </span>{ <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a4e66485247e71809218912d940c262c2">body</a>(); }</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;</div><div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a41d2cebe9ca0468cf408ab63dc570572">  295</a></span>&#160;  std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#a41d2cebe9ca0468cf408ab63dc570572">PluginFrame::bodyRef</a>()</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;  { <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ab0169793be9e6b663b84b8bdafc2e44a">bodyRef</a>(); }</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a2f8e9117a3bed36ae95230753e14d8b6">  298</a></span>&#160;  <span class="keywordtype">void</span>  <a class="code" href="classzypp_1_1PluginFrame.html#a2f8e9117a3bed36ae95230753e14d8b6">PluginFrame::setBody</a>( <span class="keyword">const</span> std::string &amp; body_r )</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;  { <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a96cfcb33f41308f9063f93e7b9127082">setBody</a>( body_r ); }</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;</div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#afb6a945bb4f587464f83d00ce8010229">  301</a></span>&#160;  std::ostream &amp; <a class="code" href="classzypp_1_1PluginFrame.html#afb6a945bb4f587464f83d00ce8010229">PluginFrame::writeTo</a>( std::ostream &amp; stream_r )<span class="keyword"> const</span></div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;<span class="keyword">  </span>{ <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a06c88bc9835f6c1b1c6bf263fbb9a475">writeTo</a>( stream_r ); }</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;</div><div class="line"><a name="l00304"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#ae8c758affe36494d5baadb9742dc46de">  304</a></span>&#160;  <a class="code" href="classzypp_1_1PluginFrame.html#aada34762e4bc66fab2612fb00dfa992f">PluginFrame::HeaderList</a> &amp; <a class="code" href="classzypp_1_1PluginFrame.html#ae8c758affe36494d5baadb9742dc46de">PluginFrame::headerList</a>()</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;  { <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a9f40dee988284b7dc031e94d7d74b3f1">headerList</a>(); }</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a6c563d648637c4f02f591595f1ed9a3d">  307</a></span>&#160;  <span class="keyword">const</span> <a class="code" href="classzypp_1_1PluginFrame.html#aada34762e4bc66fab2612fb00dfa992f">PluginFrame::HeaderList</a> &amp; <a class="code" href="classzypp_1_1PluginFrame.html#ae8c758affe36494d5baadb9742dc46de">PluginFrame::headerList</a>()<span class="keyword"> const</span></div><div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="keyword">  </span>{ <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a9f40dee988284b7dc031e94d7d74b3f1">headerList</a>(); }</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;</div><div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#ad6e47b90b7dcf7979dfabc3054de784f">  310</a></span>&#160;  <span class="keyword">const</span> std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#ad6e47b90b7dcf7979dfabc3054de784f">PluginFrame::getHeader</a>( <span class="keyword">const</span> std::string &amp; key_r )<span class="keyword"> const</span></div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="keyword">  </span>{ <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#aa99d01b049fca7be2ee92581febb6763">getHeader</a>( key_r ); }</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#ad8cc38b70b25dc30be3d77861e5a4e26">  313</a></span>&#160;  <span class="keyword">const</span> std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#ad6e47b90b7dcf7979dfabc3054de784f">PluginFrame::getHeader</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; default_r )<span class="keyword"> const</span></div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="keyword">  </span>{ <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#aa99d01b049fca7be2ee92581febb6763">getHeader</a>( key_r, default_r ); }</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;</div><div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#aee78f91568da649c95532b04ce7bf44b">  316</a></span>&#160;  <span class="keyword">const</span> std::string &amp; <a class="code" href="classzypp_1_1PluginFrame.html#aee78f91568da649c95532b04ce7bf44b">PluginFrame::getHeaderNT</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; default_r )<span class="keyword"> const</span></div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="keyword">  </span>{ <span class="keywordflow">return</span> <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#a5f8168a186240dac3aa2e83d60545e37">getHeaderNT</a>( key_r, default_r ); }</div><div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;</div><div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#aed4289b675c2d7ea203feee6049108d0">  319</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classzypp_1_1PluginFrame.html#aed4289b675c2d7ea203feee6049108d0">PluginFrame::setHeader</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; value_r )</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;  { <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ab2b6572d7eb7272c34ba7ee71eb08334">setHeader</a>( key_r, value_r ); }</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;</div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a992e348f860dd93f9504287ff1adc601">  322</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classzypp_1_1PluginFrame.html#a992e348f860dd93f9504287ff1adc601">PluginFrame::addHeader</a>( <span class="keyword">const</span> std::string &amp; key_r, <span class="keyword">const</span> std::string &amp; value_r )</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;  { <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">addHeader</a>( key_r, value_r ); }</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;</div><div class="line"><a name="l00325"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a9fb98c741aee3f8025ec2a034988211a">  325</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classzypp_1_1PluginFrame.html#a992e348f860dd93f9504287ff1adc601">PluginFrame::addHeader</a>( <a class="code" href="classzypp_1_1PluginFrame.html#a09fe2c6c79d5e8b820f410c05174cc13">HeaderInitializerList</a> contents_r )</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;  { <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">addHeader</a>( contents_r ); }</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"><a class="line" href="classzypp_1_1PluginFrame.html#a4d93f8b447eeded4f82905188dd3b3e0">  328</a></span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classzypp_1_1PluginFrame.html#a4d93f8b447eeded4f82905188dd3b3e0">PluginFrame::clearHeader</a>( <span class="keyword">const</span> std::string &amp; key_r )</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;  { <a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>-&gt;<a class="code" href="structzypp_1_1PluginFrame_1_1Impl.html#ab7d196b41f4c443ed1e0197633b73ed9">clearHeader</a>( key_r ); }</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;</div><div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="namespacezypp.html#ae8496f3d1c37da89d204b8f86acab448">  333</a></span>&#160;  std::ostream &amp; <a class="code" href="namespacezypp.html#a736823673697753a9826f368fefff5f0">operator&lt;&lt;</a>( std::ostream &amp; <a class="code" href="namespacestr.html">str</a>, <span class="keyword">const</span> <a class="code" href="classzypp_1_1PluginFrame.html">PluginFrame</a> &amp; obj )</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;  { <span class="keywordflow">return</span> <a class="code" href="namespacestr.html">str</a> &lt;&lt; *obj.<a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a>; }</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;</div><div class="line"><a name="l00336"></a><span class="lineno"><a class="line" href="namespacezypp.html#a1832dfaa8c1199576f6d61e7d4cfd516">  336</a></span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="namespacezypp.html#a387264e1b3da7cf7555c490c322696e0">operator==</a>( <span class="keyword">const</span> <a class="code" href="classzypp_1_1PluginFrame.html">PluginFrame</a> &amp; lhs, <span class="keyword">const</span> <a class="code" href="classzypp_1_1PluginFrame.html">PluginFrame</a> &amp; rhs )</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;  {</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    <span class="keywordflow">return</span> ( lhs.<a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a> == rhs.<a class="code" href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">_pimpl</a> )</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;        || (( lhs.<a class="code" href="classzypp_1_1PluginFrame.html#a9671c2fb3b1cd27635195b6519f9af92">command</a>() ==  rhs.<a class="code" href="classzypp_1_1PluginFrame.html#a9671c2fb3b1cd27635195b6519f9af92">command</a>() ) &amp;&amp; ( lhs.<a class="code" href="classzypp_1_1PluginFrame.html#ae8c758affe36494d5baadb9742dc46de">headerList</a>() == rhs.<a class="code" href="classzypp_1_1PluginFrame.html#ae8c758affe36494d5baadb9742dc46de">headerList</a>() ) &amp;&amp; ( lhs.<a class="code" href="classzypp_1_1PluginFrame.html#a304c1ba099dd4ee15d1a0d16744b002e">body</a>() == rhs.<a class="code" href="classzypp_1_1PluginFrame.html#a304c1ba099dd4ee15d1a0d16744b002e">body</a>() ));</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;  }</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;} <span class="comment">// namespace zypp</span></div><div class="ttc" id="classzypp_1_1PluginFrame_html_afb6a945bb4f587464f83d00ce8010229"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#afb6a945bb4f587464f83d00ce8010229">zypp::PluginFrame::writeTo</a></div><div class="ttdeci">std::ostream &amp; writeTo(std::ostream &amp;stream_r) const</div><div class="ttdoc">Write frame to stream.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00301">PluginFrame.cc:301</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a342538d21229ce819bd9fbf54c8087cc"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a342538d21229ce819bd9fbf54c8087cc">zypp::PluginFrame::PluginFrame</a></div><div class="ttdeci">PluginFrame()</div><div class="ttdoc">Default ctor (empty frame)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00259">PluginFrame.cc:259</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_aff295000ccad860c454daafcfe77db11"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#aff295000ccad860c454daafcfe77db11">zypp::PluginFrame::Impl::nullimpl</a></div><div class="ttdeci">static shared_ptr&lt; Impl &gt; nullimpl()</div><div class="ttdoc">Offer default Impl.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00156">PluginFrame.cc:156</a></div></div>
<div class="ttc" id="group__ZYPP__THROW_html_gaf8c3a87d63dd4f26f059eddd62c22864"><div class="ttname"><a href="group__ZYPP__THROW.html#gaf8c3a87d63dd4f26f059eddd62c22864">ZYPP_THROW</a></div><div class="ttdeci">#define ZYPP_THROW(EXCPT)</div><div class="ttdoc">Drops a logline and throws the Exception.</div><div class="ttdef"><b>Definition:</b> <a href="Exception_8h_source.html#l00392">Exception.h:392</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html"><div class="ttname"><a href="classzypp_1_1PluginFrame.html">zypp::PluginFrame</a></div><div class="ttdoc">Command frame for communication with PluginScript.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8h_source.html#l00040">PluginFrame.h:40</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a0751b0a230b18ccbdaa1e583a7535599"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a0751b0a230b18ccbdaa1e583a7535599">zypp::PluginFrame::Impl::_body</a></div><div class="ttdeci">std::string _body</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00151">PluginFrame.cc:151</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a5390a5b3a1af39e2da64f02a9a9adabd"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a5390a5b3a1af39e2da64f02a9a9adabd">zypp::PluginFrame::Impl::Impl</a></div><div class="ttdeci">Impl()</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00035">PluginFrame.cc:35</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a218d0c015a4c8a17a0cf58280a3c65cb"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a218d0c015a4c8a17a0cf58280a3c65cb">zypp::PluginFrame::setCommand</a></div><div class="ttdeci">void setCommand(const std::string &amp;command_r)</div><div class="ttdoc">Set the frame command.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00289">PluginFrame.cc:289</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a9671c2fb3b1cd27635195b6519f9af92"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a9671c2fb3b1cd27635195b6519f9af92">zypp::PluginFrame::command</a></div><div class="ttdeci">const std::string &amp; command() const</div><div class="ttdoc">Return the frame command.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00286">PluginFrame.cc:286</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_ab7d196b41f4c443ed1e0197633b73ed9"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#ab7d196b41f4c443ed1e0197633b73ed9">zypp::PluginFrame::Impl::clearHeader</a></div><div class="ttdeci">void clearHeader(const std::string &amp;key_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00141">PluginFrame.cc:141</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_aee78f91568da649c95532b04ce7bf44b"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#aee78f91568da649c95532b04ce7bf44b">zypp::PluginFrame::getHeaderNT</a></div><div class="ttdeci">const std::string &amp; getHeaderNT(const std::string &amp;key_r, const std::string &amp;default_r=std::string()) const</div><div class="ttdoc">Not throwing version returing one of the matching header values or default_r string.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00316">PluginFrame.cc:316</a></div></div>
<div class="ttc" id="namespacestr_html"><div class="ttname"><a href="namespacestr.html">str</a></div><div class="ttdoc">String related utilities and Regular expression matching.</div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_aef820b7435a770cd631ec4cc20e148e4"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#aef820b7435a770cd631ec4cc20e148e4">zypp::PluginFrame::Impl::Impl</a></div><div class="ttdeci">Impl(const std::string &amp;command_r, const std::string &amp;body_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00041">PluginFrame.cc:41</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a7066c8b9b40e735b41352eed22675d3f"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a7066c8b9b40e735b41352eed22675d3f">zypp::PluginFrame::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdoc">Whether this is an empty frame.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00283">PluginFrame.cc:283</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a7a2aa4c77c77f2190ca7f05f58657be4"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a7a2aa4c77c77f2190ca7f05f58657be4">zypp::PluginFrame::Impl::Impl</a></div><div class="ttdeci">Impl(const std::string &amp;command_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00038">PluginFrame.cc:38</a></div></div>
<div class="ttc" id="Easy_8h_html_a7887338b8a0727becb37d8061fcbfc0e"><div class="ttname"><a href="Easy_8h.html#a7887338b8a0727becb37d8061fcbfc0e">for_</a></div><div class="ttdeci">#define for_(IT, BEG, END)</div><div class="ttdoc">Convenient for-loops using iterator.</div><div class="ttdef"><b>Definition:</b> <a href="Easy_8h_source.html#l00027">Easy.h:27</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a992e348f860dd93f9504287ff1adc601"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a992e348f860dd93f9504287ff1adc601">zypp::PluginFrame::addHeader</a></div><div class="ttdeci">void addHeader(const std::string &amp;key_r, const std::string &amp;value_r=std::string())</div><div class="ttdoc">Add header for key_r leaving already existing headers for key_r unchanged.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00322">PluginFrame.cc:322</a></div></div>
<div class="ttc" id="namespacezypp_html_a387264e1b3da7cf7555c490c322696e0"><div class="ttname"><a href="namespacezypp.html#a387264e1b3da7cf7555c490c322696e0">zypp::operator==</a></div><div class="ttdeci">bool operator==(const SetRelation::Enum &amp;lhs, const SetCompare &amp;rhs)</div><div class="ttdef"><b>Definition:</b> <a href="SetRelationMixin_8h_source.html#l00084">SetRelationMixin.h:84</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a3bf5f454060e3a8e547eb7c89f34c828"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a3bf5f454060e3a8e547eb7c89f34c828">zypp::PluginFrame::Impl::_command</a></div><div class="ttdeci">std::string _command</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00150">PluginFrame.cc:150</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_aa874d0d3f1d86e3ce160107544db9a4f"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#aa874d0d3f1d86e3ce160107544db9a4f">zypp::PluginFrame::errorCommand</a></div><div class="ttdeci">static const std::string &amp; errorCommand()</div><div class="ttdoc">&quot;ERROR&quot; command.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00247">PluginFrame.cc:247</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a170883912ebd53ff80d4cbc2ed873edd"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a170883912ebd53ff80d4cbc2ed873edd">zypp::PluginFrame::Impl::setCommand</a></div><div class="ttdeci">void setCommand(const std::string &amp;command_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00061">PluginFrame.cc:61</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a15e3a71c725a6e14b4de67641736aa4d"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a15e3a71c725a6e14b4de67641736aa4d">zypp::PluginFrame::Impl::getHeader</a></div><div class="ttdeci">const std::string &amp; getHeader(const std::string &amp;key_r, const std::string &amp;default_r) const</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00098">PluginFrame.cc:98</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a06c88bc9835f6c1b1c6bf263fbb9a475"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a06c88bc9835f6c1b1c6bf263fbb9a475">zypp::PluginFrame::Impl::writeTo</a></div><div class="ttdeci">std::ostream &amp; writeTo(std::ostream &amp;stream_r) const</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00215">PluginFrame.cc:215</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_abf2ccb495a176d51f2eb2bc1ea5cc226"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#abf2ccb495a176d51f2eb2bc1ea5cc226">zypp::PluginFrame::Impl::Impl</a></div><div class="ttdeci">Impl(const std::string &amp;command_r, const std::string &amp;body_r, HeaderInitializerList contents_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00048">PluginFrame.cc:48</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a9ebeea54034700b182489900ce7ab171"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a9ebeea54034700b182489900ce7ab171">zypp::PluginFrame::Impl::constKeyRange</a></div><div class="ttdeci">std::pair&lt; HeaderListIterator, HeaderListIterator &gt; constKeyRange</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00078">PluginFrame.cc:78</a></div></div>
<div class="ttc" id="namespacezypp_html_a736823673697753a9826f368fefff5f0"><div class="ttname"><a href="namespacezypp.html#a736823673697753a9826f368fefff5f0">zypp::operator&lt;&lt;</a></div><div class="ttdeci">std::ostream &amp; operator&lt;&lt;(std::ostream &amp;str, const Exception &amp;obj)</div><div class="ttdef"><b>Definition:</b> <a href="Exception_8cc_source.html#l00147">Exception.cc:147</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a7e63b00a54daa9250c3e3b6e16e3765e"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a7e63b00a54daa9250c3e3b6e16e3765e">zypp::PluginFrame::enomethodCommand</a></div><div class="ttdeci">static const std::string &amp; enomethodCommand()</div><div class="ttdoc">&quot;_ENOMETHOD&quot; command.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00253">PluginFrame.cc:253</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_ae297a9183e03f0eaedb11520dfef6599"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#ae297a9183e03f0eaedb11520dfef6599">zypp::PluginFrame::Impl::addHeader</a></div><div class="ttdeci">void addHeader(HeaderInitializerList contents_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00135">PluginFrame.cc:135</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a304c1ba099dd4ee15d1a0d16744b002e"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a304c1ba099dd4ee15d1a0d16744b002e">zypp::PluginFrame::body</a></div><div class="ttdeci">const std::string &amp; body() const</div><div class="ttdoc">Return the frame body.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00292">PluginFrame.cc:292</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrameException_html"><div class="ttname"><a href="classzypp_1_1PluginFrameException.html">zypp::PluginFrameException</a></div><div class="ttdoc">Base class for PluginFrame Exception.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrameException_8h_source.html#l00029">PluginFrameException.h:29</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a09fe2c6c79d5e8b820f410c05174cc13"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a09fe2c6c79d5e8b820f410c05174cc13">zypp::PluginFrame::HeaderInitializerList</a></div><div class="ttdeci">const std::initializer_list&lt; std::pair&lt; std::string, std::string &gt; &gt; &amp; HeaderInitializerList</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8h_source.html#l00045">PluginFrame.h:45</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_aab3f8ee81c37ca4beb020602af9a68eb"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#aab3f8ee81c37ca4beb020602af9a68eb">zypp::PluginFrame::Impl::KeyRange</a></div><div class="ttdeci">std::pair&lt; HeaderList::iterator, HeaderList::iterator &gt; KeyRange</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00079">PluginFrame.cc:79</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a1ab72481c7b5b474e730d7cee627a101"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a1ab72481c7b5b474e730d7cee627a101">zypp::PluginFrame::Impl::Impl</a></div><div class="ttdeci">Impl(const std::string &amp;command_r, HeaderInitializerList contents_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00045">PluginFrame.cc:45</a></div></div>
<div class="ttc" id="namespacezypp_1_1str_html_a65082648364fa4015d6f92fc7892ed84"><div class="ttname"><a href="namespacezypp_1_1str.html#a65082648364fa4015d6f92fc7892ed84">zypp::str::getline</a></div><div class="ttdeci">std::string getline(std::istream &amp;str, const Trim trim_r)</div><div class="ttdoc">Return stream content up to (but not returning) the next newline.</div><div class="ttdef"><b>Definition:</b> <a href="String_8cc_source.html#l00476">String.cc:476</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a0ec4b412b1e475468e79ff62043e1f80"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a0ec4b412b1e475468e79ff62043e1f80">zypp::PluginFrame::ackCommand</a></div><div class="ttdeci">static const std::string &amp; ackCommand()</div><div class="ttdoc">&quot;ACK&quot; command.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00241">PluginFrame.cc:241</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a30fca2b2ddbd46e666a94efd5bf25eb1"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a30fca2b2ddbd46e666a94efd5bf25eb1">zypp::PluginFrame::Impl::_header</a></div><div class="ttdeci">HeaderList _header</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00152">PluginFrame.cc:152</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a99701c9d68c205b0a3278b187420b0c1"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a99701c9d68c205b0a3278b187420b0c1">zypp::PluginFrame::_pimpl</a></div><div class="ttdeci">RWCOW_pointer&lt; Impl &gt; _pimpl</div><div class="ttdoc">Pointer to implementation.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8h_source.html#l00250">PluginFrame.h:250</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_ab2b6572d7eb7272c34ba7ee71eb08334"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#ab2b6572d7eb7272c34ba7ee71eb08334">zypp::PluginFrame::Impl::setHeader</a></div><div class="ttdeci">void setHeader(const std::string &amp;key_r, const std::string &amp;value_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00124">PluginFrame.cc:124</a></div></div>
<div class="ttc" id="namespacezypp_1_1sat_1_1detail_html_ac0d3ca93132eee14b022898f23b49d07"><div class="ttname"><a href="namespacezypp_1_1sat_1_1detail.html#ac0d3ca93132eee14b022898f23b49d07">zypp::sat::detail::size_type</a></div><div class="ttdeci">SolvableIdType size_type</div><div class="ttdef"><b>Definition:</b> <a href="PoolMember_8h_source.html#l00152">PoolMember.h:152</a></div></div>
<div class="ttc" id="LogTools_8h_html"><div class="ttname"><a href="LogTools_8h.html">LogTools.h</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a9f40dee988284b7dc031e94d7d74b3f1"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a9f40dee988284b7dc031e94d7d74b3f1">zypp::PluginFrame::Impl::headerList</a></div><div class="ttdeci">HeaderList &amp; headerList()</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00081">PluginFrame.cc:81</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a2f8e9117a3bed36ae95230753e14d8b6"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a2f8e9117a3bed36ae95230753e14d8b6">zypp::PluginFrame::setBody</a></div><div class="ttdeci">void setBody(const std::string &amp;body_r)</div><div class="ttdoc">Set the frame body.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00298">PluginFrame.cc:298</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_aada34762e4bc66fab2612fb00dfa992f"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#aada34762e4bc66fab2612fb00dfa992f">zypp::PluginFrame::HeaderList</a></div><div class="ttdeci">std::multimap&lt; std::string, std::string &gt; HeaderList</div><div class="ttdoc">The header list.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8h_source.html#l00135">PluginFrame.h:135</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_ab379ab08c91dab542d25bb54da2d11af"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#ab379ab08c91dab542d25bb54da2d11af">zypp::PluginFrame::Impl::clone</a></div><div class="ttdeci">Impl * clone() const</div><div class="ttdoc">clone for RWCOW_pointer</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00164">PluginFrame.cc:164</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_aad8c5bfbeb50eac6dd790c5195394f8d"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#aad8c5bfbeb50eac6dd790c5195394f8d">zypp::PluginFrame::Impl::empty</a></div><div class="ttdeci">bool empty() const</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00055">PluginFrame.cc:55</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_ae3bd62fc4d3d1d948b10d9278bfe7d2d"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#ae3bd62fc4d3d1d948b10d9278bfe7d2d">zypp::PluginFrame::Impl::mkHeaderPair</a></div><div class="ttdeci">HeaderList::value_type mkHeaderPair(const std::string &amp;key_r, const std::string &amp;value_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00115">PluginFrame.cc:115</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a5f8168a186240dac3aa2e83d60545e37"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a5f8168a186240dac3aa2e83d60545e37">zypp::PluginFrame::Impl::getHeaderNT</a></div><div class="ttdeci">const std::string &amp; getHeaderNT(const std::string &amp;key_r, const std::string &amp;default_r) const</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00109">PluginFrame.cc:109</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_abb692a04d15dff5017b966ee1e13fa22"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#abb692a04d15dff5017b966ee1e13fa22">zypp::PluginFrame::Impl::addHeader</a></div><div class="ttdeci">void addHeader(const std::string &amp;key_r, const std::string &amp;value_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00130">PluginFrame.cc:130</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a5164fac8f6aaa3ab239c23aa22025287"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a5164fac8f6aaa3ab239c23aa22025287">zypp::PluginFrame::HeaderListIterator</a></div><div class="ttdeci">HeaderList::const_iterator HeaderListIterator</div><div class="ttdoc">Header list iterator.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8h_source.html#l00138">PluginFrame.h:138</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_aa99d01b049fca7be2ee92581febb6763"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#aa99d01b049fca7be2ee92581febb6763">zypp::PluginFrame::Impl::getHeader</a></div><div class="ttdeci">const std::string &amp; getHeader(const std::string &amp;key_r) const</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00087">PluginFrame.cc:87</a></div></div>
<div class="ttc" id="namespacezypp_1_1str_html_a7116cde967828e981894ee7caad38d3e"><div class="ttname"><a href="namespacezypp_1_1str.html#a7116cde967828e981894ee7caad38d3e">zypp::str::receiveUpTo</a></div><div class="ttdeci">std::string receiveUpTo(std::istream &amp;str, const char delim_r, bool returnDelim_r)</div><div class="ttdoc">Return stream content up to the next ocurrence of delim_r or EOF delim_r, if found,...</div><div class="ttdef"><b>Definition:</b> <a href="String_8cc_source.html#l00486">String.cc:486</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_aed4289b675c2d7ea203feee6049108d0"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#aed4289b675c2d7ea203feee6049108d0">zypp::PluginFrame::setHeader</a></div><div class="ttdeci">void setHeader(const std::string &amp;key_r, const std::string &amp;value_r=std::string())</div><div class="ttdoc">Set header for key_r removing all other occurrences of key_r.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00319">PluginFrame.cc:319</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_ae8c758affe36494d5baadb9742dc46de"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#ae8c758affe36494d5baadb9742dc46de">zypp::PluginFrame::headerList</a></div><div class="ttdeci">HeaderList &amp; headerList()</div><div class="ttdoc">Modifyalble header list for internal use only.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00304">PluginFrame.cc:304</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_ad6e47b90b7dcf7979dfabc3054de784f"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#ad6e47b90b7dcf7979dfabc3054de784f">zypp::PluginFrame::getHeader</a></div><div class="ttdeci">const std::string &amp; getHeader(const std::string &amp;key_r) const</div><div class="ttdoc">Return header value for key_r.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00310">PluginFrame.cc:310</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_ae1f86681773a488bcf04f3087200d9bb"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#ae1f86681773a488bcf04f3087200d9bb">zypp::PluginFrame::Impl::headerList</a></div><div class="ttdeci">const HeaderList &amp; headerList() const</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00084">PluginFrame.cc:84</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_af8fdc0a73fc3ed581c4d6b63f50dc3f0"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#af8fdc0a73fc3ed581c4d6b63f50dc3f0">zypp::PluginFrame::Impl::operator&lt;&lt;</a></div><div class="ttdeci">std::ostream &amp; operator&lt;&lt;(std::ostream &amp;str, const PluginFrame::Impl &amp;obj)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00170">PluginFrame.cc:170</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html">zypp::PluginFrame::Impl</a></div><div class="ttdoc">PluginFrame implementation.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00032">PluginFrame.cc:32</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a41d2cebe9ca0468cf408ab63dc570572"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a41d2cebe9ca0468cf408ab63dc570572">zypp::PluginFrame::bodyRef</a></div><div class="ttdeci">std::string &amp; bodyRef()</div><div class="ttdoc">Return a reference to the frame body.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00295">PluginFrame.cc:295</a></div></div>
<div class="ttc" id="namespacezypp_html"><div class="ttname"><a href="namespacezypp.html">zypp</a></div><div class="ttdoc">Easy-to use interface to the ZYPP dependency resolver.</div><div class="ttdef"><b>Definition:</b> <a href="CodePitfalls_8doc_source.html#l00001">CodePitfalls.doc:1</a></div></div>
<div class="ttc" id="classzypp_1_1PluginFrame_html_a4d93f8b447eeded4f82905188dd3b3e0"><div class="ttname"><a href="classzypp_1_1PluginFrame.html#a4d93f8b447eeded4f82905188dd3b3e0">zypp::PluginFrame::clearHeader</a></div><div class="ttdeci">void clearHeader(const std::string &amp;key_r)</div><div class="ttdoc">Remove all headers for key_r.</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00328">PluginFrame.cc:328</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_ab0169793be9e6b663b84b8bdafc2e44a"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#ab0169793be9e6b663b84b8bdafc2e44a">zypp::PluginFrame::Impl::bodyRef</a></div><div class="ttdeci">std::string &amp; bodyRef()</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00071">PluginFrame.cc:71</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a96cfcb33f41308f9063f93e7b9127082"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a96cfcb33f41308f9063f93e7b9127082">zypp::PluginFrame::Impl::setBody</a></div><div class="ttdeci">void setBody(const std::string &amp;body_r)</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00074">PluginFrame.cc:74</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a29858e78acde6f3fec60d8891f353681"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a29858e78acde6f3fec60d8891f353681">zypp::PluginFrame::Impl::command</a></div><div class="ttdeci">const std::string &amp; command() const</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00058">PluginFrame.cc:58</a></div></div>
<div class="ttc" id="structzypp_1_1PluginFrame_1_1Impl_html_a4e66485247e71809218912d940c262c2"><div class="ttname"><a href="structzypp_1_1PluginFrame_1_1Impl.html#a4e66485247e71809218912d940c262c2">zypp::PluginFrame::Impl::body</a></div><div class="ttdeci">const std::string &amp; body() const</div><div class="ttdef"><b>Definition:</b> <a href="PluginFrame_8cc_source.html#l00068">PluginFrame.cc:68</a></div></div>
<div class="ttc" id="String_8h_html"><div class="ttname"><a href="String_8h.html">String.h</a></div></div>
<div class="ttc" id="PluginFrame_8h_html"><div class="ttname"><a href="PluginFrame_8h.html">PluginFrame.h</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_c187b43c6f283d9fc95eff3f44ce072a.html">zypp</a></li><li class="navelem"><a class="el" href="PluginFrame_8cc.html">PluginFrame.cc</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li>
  </ul>
</div>
</body>
</html>