Settings return with default values (via reflection)

This commit is contained in:
Mark McDowall 2013-03-03 17:07:22 -08:00
parent 3430ad3ee8
commit 62c1be1634
5 changed files with 19 additions and 10 deletions

View File

@ -25,7 +25,7 @@ namespace NzbDrone.Api.Settings
if(collection.HasValue && Boolean.Parse(collection.Value)) if(collection.HasValue && Boolean.Parse(collection.Value))
return _configService.All().AsResponse(); return _configService.All().AsResponse();
return _configService.All().ToDictionary(c => c.Key, c => c.Value).AsResponse(); return _configService.AllWithDefaults().AsResponse();
} }
} }
} }

View File

@ -1,4 +1,3 @@
<div> <div>
Naming settings will go here Naming settings will go here
{{uGuid}}
</div> </div>

View File

@ -14,7 +14,6 @@ define([
initialize: function (options) { initialize: function (options) {
this.model = options.model; this.model = options.model;
var test = 1;
}, },
onRender: function () { onRender: function () {

View File

@ -15,7 +15,6 @@ namespace NzbDrone.Core.Configuration
private readonly Logger _logger; private readonly Logger _logger;
private static Dictionary<string, string> _cache; private static Dictionary<string, string> _cache;
public ConfigService(IConfigRepository repository, Logger logger) public ConfigService(IConfigRepository repository, Logger logger)
{ {
_repository = repository; _repository = repository;
@ -23,12 +22,28 @@ namespace NzbDrone.Core.Configuration
_cache = new Dictionary<string, string>(); _cache = new Dictionary<string, string>();
} }
public IEnumerable<Config> All() public IEnumerable<Config> All()
{ {
return _repository.All(); return _repository.All();
} }
public Dictionary<String, Object> AllWithDefaults()
{
var dict = new Dictionary<String, Object>();
var type = GetType();
var properties = type.GetProperties();
foreach(var propertyInfo in properties)
{
var value = propertyInfo.GetValue(this, null);
dict.Add(propertyInfo.Name, value);
}
return dict;
}
public virtual String NzbsOrgUId public virtual String NzbsOrgUId
{ {
get { return GetValue("NzbsOrgUId"); } get { return GetValue("NzbsOrgUId"); }
@ -202,7 +217,6 @@ namespace NzbDrone.Core.Configuration
set { SetValue("DefaultQualityProfile", value); } set { SetValue("DefaultQualityProfile", value); }
} }
public virtual Boolean XbmcUpdateLibrary public virtual Boolean XbmcUpdateLibrary
{ {
get { return GetValueBoolean("XbmcUpdateLibrary"); } get { return GetValueBoolean("XbmcUpdateLibrary"); }
@ -248,7 +262,6 @@ namespace NzbDrone.Core.Configuration
set { SetValue("UpdateUrl", value); } set { SetValue("UpdateUrl", value); }
} }
public virtual string SmtpServer public virtual string SmtpServer
{ {
get { return GetValue("SmtpServer", String.Empty); } get { return GetValue("SmtpServer", String.Empty); }
@ -292,7 +305,6 @@ namespace NzbDrone.Core.Configuration
set { SetValue("SmtpToAddresses", value); } set { SetValue("SmtpToAddresses", value); }
} }
public virtual string TwitterAccessToken public virtual string TwitterAccessToken
{ {
get { return GetValue("TwitterAccessToken", String.Empty); } get { return GetValue("TwitterAccessToken", String.Empty); }
@ -304,7 +316,6 @@ namespace NzbDrone.Core.Configuration
get { return GetValue("TwitterAccessTokenSecret", String.Empty); } get { return GetValue("TwitterAccessTokenSecret", String.Empty); }
set { SetValue("TwitterAccessTokenSecret", value); } set { SetValue("TwitterAccessTokenSecret", value); }
} }
public virtual string GrowlHost public virtual string GrowlHost
{ {
@ -317,7 +328,6 @@ namespace NzbDrone.Core.Configuration
get { return GetValue("GrowlPassword", String.Empty); } get { return GetValue("GrowlPassword", String.Empty); }
set { SetValue("GrowlPassword", value); } set { SetValue("GrowlPassword", value); }
} }
public virtual string ProwlApiKeys public virtual string ProwlApiKeys
{ {

View File

@ -9,6 +9,7 @@ namespace NzbDrone.Core.Configuration
public interface IConfigService public interface IConfigService
{ {
IEnumerable<Config> All(); IEnumerable<Config> All();
Dictionary<String, Object> AllWithDefaults();
String NzbsOrgUId { get; set; } String NzbsOrgUId { get; set; }
String NzbsOrgHash { get; set; } String NzbsOrgHash { get; set; }
String NzbsrusUId { get; set; } String NzbsrusUId { get; set; }