That helps a lot.  Thank you Brent.<br><br><div class="gmail_quote">On Wed, Dec 12, 2012 at 5:16 PM, Brent Putman <span dir="ltr">&lt;<a href="mailto:putmanb@georgetown.edu" target="_blank">putmanb@georgetown.edu</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000"><div class="im">
    <br>
    <div>On 12/12/12 4:12 PM, Nanda Kumar wrote:<br>
    </div>
    <blockquote type="cite">Hello,
      <div>  Attribute filter, resolver, profile handler and relying
        party services can be reloaded by specifying two attributes<b> </b><span style="line-height:17.33333396911621px;color:rgb(51,51,51);font-size:13px;font-family:Arial,Helvetica,FreeSans,sans-serif;margin-top:0px">configurationResourcePollingFrequency</span><span style="line-height:17.33333396911621px;color:rgb(51,51,51);font-size:13px;font-family:Arial,Helvetica,FreeSans,sans-serif"> 
          and </span><span style="line-height:17.33333396911621px;color:rgb(51,51,51);font-size:13px;margin-bottom:0px;font-family:Arial,Helvetica,FreeSans,sans-serif;margin-top:0px">configurationResourcePollingRetryAttempts
          to the service element.  Is this reloading process done by
          Shibboleth code OR is it done by the spring framework?</span></div>
    </blockquote>
    <br></div>
    I guess it depends on what you mean exactly, but the actual
    reloading logic, and the stuff which processes those 2 config
    attributes, is all Shib code.  If you want to look at code, those
    services are impls of:<br>
    <br>
    edu.internet2.middleware.shibboleth.common.service.ReloadableService<br>
    <br>
    see in particular the abstract super class where the common
    reloading logic resides:<br>
    <br>
    edu.internet2.middleware.shibboleth.common.config.BaseReloadableService<br>
    <br>
    What it essentially does is: there is a ResourceChangeWatcher and
    ResourceChangeListener pair that actually watches the config
    resource (the former is what takes as arguments those polling config
    values), and when a change is detected, the listener invokes the
    edu.internet2.middleware.shibboleth.common.config.BaseService
    loadContext().  That uses Spring framework components to attempt to
    load a new ApplicationContext based on the config resource(s), and
    if that is successful the new ApplicationContext is swapped in for
    the old one.  There is some service-specific context data logic in
    the specific service impl classes in their onNewContextCreated(...)
    methods.<br>
    <br>
    Hope that helps,<br>
    Brent<br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
  </div>

<br>--<br>
To unsubscribe from this list send an email to <a href="mailto:users-unsubscribe@shibboleth.net">users-unsubscribe@shibboleth.net</a><br></blockquote></div><br>