Enable MapImageServiceModule with no refresh

0.8.0.3
Dev Random 2014-03-11 00:08:03 -04:00 committed by Justin Clark-Casey (justincc)
parent 86630a1b70
commit 7112ee0015
1 changed files with 22 additions and 12 deletions

View File

@ -66,7 +66,7 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.MapImage
private int m_refreshtime = 0; private int m_refreshtime = 0;
private int m_lastrefresh = 0; private int m_lastrefresh = 0;
private System.Timers.Timer m_refreshTimer = new System.Timers.Timer(); private System.Timers.Timer m_refreshTimer;
#region ISharedRegionModule #region ISharedRegionModule
@ -94,14 +94,14 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.MapImage
return; return;
int refreshminutes = Convert.ToInt32(config.GetString("RefreshTime")); int refreshminutes = Convert.ToInt32(config.GetString("RefreshTime"));
if (refreshminutes <= 0)
// if refresh is less than zero, disable the module
if (refreshminutes < 0)
{ {
m_log.WarnFormat("[MAP IMAGE SERVICE MODULE]: No refresh time given in config. Module disabled."); m_log.WarnFormat("[MAP IMAGE SERVICE MODULE]: Negative refresh time given in config. Module disabled.");
return; return;
} }
m_refreshtime = refreshminutes * 60 * 1000; // convert from minutes to ms
string service = config.GetString("LocalServiceModule", string.Empty); string service = config.GetString("LocalServiceModule", string.Empty);
if (service == string.Empty) if (service == string.Empty)
{ {
@ -117,14 +117,24 @@ namespace OpenSim.Region.CoreModules.ServiceConnectorsOut.MapImage
return; return;
} }
// we don't want the timer if the interval is zero, but we still want this module enables
if(refreshminutes > 0)
{
m_refreshtime = refreshminutes * 60 * 1000; // convert from minutes to ms
m_refreshTimer = new System.Timers.Timer();
m_refreshTimer.Enabled = true; m_refreshTimer.Enabled = true;
m_refreshTimer.AutoReset = true; m_refreshTimer.AutoReset = true;
m_refreshTimer.Interval = m_refreshtime; m_refreshTimer.Interval = m_refreshtime;
m_refreshTimer.Elapsed += new ElapsedEventHandler(HandleMaptileRefresh); m_refreshTimer.Elapsed += new ElapsedEventHandler(HandleMaptileRefresh);
m_log.InfoFormat("[MAP IMAGE SERVICE MODULE]: enabled with refresh time {0}min and service object {1}", m_log.InfoFormat("[MAP IMAGE SERVICE MODULE]: enabled with refresh time {0} min and service object {1}",
refreshminutes, service); refreshminutes, service);
}
else
{
m_log.InfoFormat("[MAP IMAGE SERVICE MODULE]: enabled with no refresh and service object {0}", service);
}
m_enabled = true; m_enabled = true;
} }