<div dir="ltr">+1 to what Marc has already said.  Note that unless you have changed the apiman config, the manager stores data in an H2 sql database and the gateway stores config in elasticsearch.  These settings can be changed, but when you download the quickstart distribution those are the default settings.<div><br></div><div>Also note that in both cases the configuration information is stored as a JSON blob - so you do NOT need to make any backend storage changes in order to accommodate this new configuration setting.</div><div><br></div><div>Could you perhaps briefly explain the use-case for the Retry-Time response header?  If it makes enough sense it would be great to pull these changes into the main repository.</div><div><br></div><div>-Eric</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jan 13, 2017 at 8:33 AM, Marc Savy <span dir="ltr">&lt;<a href="mailto:marc.savy@redhat.com" target="_blank">marc.savy@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi,<div><br></div><div>Just to understand:</div><div><br></div><div>All you display in this header is a fixed value of, for instance, X-Retry-Time: 50000 - it&#39;s not a calculated value?  </div><div><br></div><div>If so, then assuming things are wired up correctly this should work fine. </div><div><br></div><div>Apiman is split into two parts, the manager and the gateway, which have *separate* data-stores for typical decoupling reasons (performance, reliability, etc). </div><div><br></div><div>- Before publishing config will be in the manager only.</div><div>- After publishing config will be in the manager and gateway.</div><div><br></div><div>So, if your manager uses ElasticSearch the config will be in the ElasticSearch.  If your gateway the config will also be in ElasticSearch but a different &quot;region&quot;. However one could be Infinispan and another ElasticSearch.</div><div><br></div><div>Regards,</div><div>Marc</div></div><div class="gmail_extra"><br><div class="gmail_quote"><div><div class="h5">On 13 January 2017 at 12:54,  <span dir="ltr">&lt;<a href="mailto:Ram.Tanna@ril.com" target="_blank">Ram.Tanna@ril.com</a>&gt;</span> wrote:<br></div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div class="h5">





<div lang="EN-IN" link="#0563C1" vlink="#954F72">
<div class="m_-5723392582064194105m_-1406781336720567614WordSection1">
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Dear Team,<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">I have added 2 extra fields in Rate limiting Policy, as shown in the below image.
<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">These extra fields are added because I need it in response header in success(200) as well as failure(429) responses.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">To do so I have modified below mentioned files,<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u><b><span>1.<span style="font:7.0pt &quot;Times New Roman&quot;">      
</span></span></b><u></u><b>rate-limiting.include<u></u><u></u></b></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph" style="text-indent:36.0pt"><u></u> <u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph" style="text-indent:36.0pt">&lt;div&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">  &lt;span&gt;I want to set retry time to&lt;/span&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">    &lt;input id=&quot;time-limit&quot; ng-model=&quot;config.retryTime&quot; class=&quot;form-control inline-apiman-form-control form-control&quot; style=&quot;width: 100px&quot; type=&quot;text&quot; apiman-i18n-key=&quot;rate-limiting<wbr>.enter-num-requests&quot; placeholder=&quot;Time limit&quot; ng-disabled=&quot;isEntityDisabled(<wbr>)&quot;&gt;&lt;/input&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">    <u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">    &lt;select id=&quot;retryTimeUnit&quot; ng-model=&quot;config.retryTimeUnit<wbr>&quot;  apiman-select-picker=&quot;&quot; data-field=&quot;retryTimeUnit&quot; class=&quot;selectpicker inline-line apiman-inline-form-dropdown&quot; data-style=&quot;btn-default apiman-inline-form-dropdown&quot;
 style=&quot;width: 100px&quot; ng-disabled=&quot;isEntityDisabled(<wbr>)&quot;&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">      &lt;option value=&quot;Second&quot; data-content=&quot;&lt;span class=&#39;apiman-label-faded&#39;&gt;Sec<wbr>ond&lt;/span&gt;&quot; apiman-i18n-key=&quot;rate-limiting<wbr>.second&quot;&gt;Second&lt;/option&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">      &lt;option value=&quot;Minute&quot; apiman-i18n-key=&quot;rate-limiting<wbr>.minute&quot;&gt;Minute&lt;/option&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">      &lt;option value=&quot;Hour&quot; apiman-i18n-key=&quot;rate-limiting<wbr>.hour&quot;&gt;Hour&lt;/option&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">      &lt;option value=&quot;Day&quot; apiman-i18n-key=&quot;rate-limiting<wbr>.day&quot;&gt;Day&lt;/option&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">      &lt;option value=&quot;Month&quot; apiman-i18n-key=&quot;rate-limiting<wbr>.month&quot;&gt;Month&lt;/option&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">      &lt;option value=&quot;Year&quot; apiman-i18n-key=&quot;rate-limiting<wbr>.year&quot;&gt;Year&lt;/option&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">    &lt;/select&gt;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">                &lt;/div&gt;<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u><b><span>2.<span style="font:7.0pt &quot;Times New Roman&quot;">      
</span></span></b><u></u><b>RateLimitingConfig<u></u><u></u></b></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph" style="text-indent:36.0pt">private long retryTime;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">               private RateLimitingPeriod retryTimeUnit;<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">-- getter , setters<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u> <u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u><b><span>3.<span style="font:7.0pt &quot;Times New Roman&quot;">      
</span></span></b><u></u><b>RateLimitingPolicy<u></u><u></u></b></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph" style="text-indent:36.0pt">responseHeaders.put(&quot;X-Retry-T<wbr>ime&quot;, timeLimit);<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u> <u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u> <u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph">Kindly Confirm,<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph" style="margin-left:54.0pt">
<u></u><span>-<span style="font:7.0pt &quot;Times New Roman&quot;">         
</span></span><u></u>Where are we storing these information ? In Elastic Search, in SQL  or somewhere else ?<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph" style="margin-left:54.0pt">
<u></u><span>-<span style="font:7.0pt &quot;Times New Roman&quot;">         
</span></span><u></u>Will these changes make any impact on other components ?<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph" style="margin-left:54.0pt">
<u></u><span>-<span style="font:7.0pt &quot;Times New Roman&quot;">         
</span></span><u></u>Would you recommend this code change ?<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph" style="margin-left:54.0pt"><u></u> <u></u></p>
<p class="MsoNormal" style="text-indent:36.0pt">Kindly suggest if you have any other solution for similar requirement.<u></u><u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u> <u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u> <u></u></p>
<p class="m_-5723392582064194105m_-1406781336720567614MsoListParagraph"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><span><img width="1366" height="768" id="m_-5723392582064194105m_-1406781336720567614Picture_x0020_1" src="cid:image001.png@01D26DC5.2691F410"></span><u></u><u></u></p>
<p class="MsoNormal">Regards,<u></u><u></u></p>
<p class="MsoNormal">Ram Tanna<u></u><u></u></p>
<p class="MsoNormal">9819002243<u></u><u></u></p>
</div>
<p><br><span style="text-decoration:none">&quot;<strong><span style="text-decoration:underline">Confidentiality Warning</span></strong></span>: This message and any attachments are intended only for the use of the intended recipient(s), are confidential and may be privileged. If you are not the intended recipient, you are hereby notified that any review, re-transmission, conversion to hard copy, copying, circulation or other use of this message and any attachments is strictly prohibited. If you are not the intended recipient, please notify the sender immediately by return email and delete this message and any attachments from your system.</p>
<p><strong><span style="text-decoration:underline">Virus Warning:</span></strong> Although the company has taken reasonable precautions to ensure no viruses are present in this email. The company cannot accept responsibility for any loss or damage arising from the use of this email or attachment.&quot;</p></div>

<br></div></div>______________________________<wbr>_________________<br>
Apiman-user mailing list<br>
<a href="mailto:Apiman-user@lists.jboss.org" target="_blank">Apiman-user@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/apiman-user" rel="noreferrer" target="_blank">https://lists.jboss.org/mailma<wbr>n/listinfo/apiman-user</a><br>
<br></blockquote></div><br></div>
<br>______________________________<wbr>_________________<br>
Apiman-user mailing list<br>
<a href="mailto:Apiman-user@lists.jboss.org">Apiman-user@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/apiman-user" rel="noreferrer" target="_blank">https://lists.jboss.org/<wbr>mailman/listinfo/apiman-user</a><br>
<br></blockquote></div><br></div>