public void Load()
        {
            if (cache.HasExpired())
            {
                log.Debug("Cache has expired");
                var graphiteConfig = new SqlToGraphiteConfig();
                while (graphiteConfig.Items == null)
                {
                    try
                    {
                        graphiteConfig = GetConfig(configReader);
                        if (graphiteConfig.Items == null)
                        {
                            log.Error(FailedToLoadAnyConfiguration);
                            this.errors.Add(FailedToLoadAnyConfiguration);
                            this.RestForAwhile();
                        }
                    }
                    catch (Exception ex)
                    {
                        log.Error(ex);
                        this.RestForAwhile();
                    }
                }

                Init();
                this.ParseConfigItems(graphiteConfig);
                cache.ResetCache();
            }
        }
 private void ParseConfigItems(SqlToGraphiteConfig graphiteConfig)
 {
     foreach (var setting in graphiteConfig.Items)
     {
         this.AddTypes(setting);
     }
 }