refactor
This commit is contained in:
parent
3eb4ad85d3
commit
85beb3dfea
@ -364,7 +364,9 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
List<SettingsTile> siaConfigSettings = [];
|
||||
|
||||
widget.settings.forEach((key, value) {
|
||||
if (key == 'ApiAuth') {
|
||||
switch (key) {
|
||||
case 'ApiAuth':
|
||||
{
|
||||
_addPasswordSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -373,7 +375,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
true,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'ApiPort') {
|
||||
}
|
||||
break;
|
||||
case 'ApiPort':
|
||||
{
|
||||
_addIntSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -382,7 +387,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
true,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'ApiUser') {
|
||||
}
|
||||
break;
|
||||
case 'ApiUser':
|
||||
{
|
||||
_addStringSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -392,7 +400,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
true,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'DatabaseType') {
|
||||
}
|
||||
break;
|
||||
case 'DatabaseType':
|
||||
{
|
||||
_addListSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -402,7 +413,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
Icons.dataset,
|
||||
true,
|
||||
);
|
||||
} else if (key == 'DownloadTimeoutSeconds') {
|
||||
}
|
||||
break;
|
||||
case 'DownloadTimeoutSeconds':
|
||||
{
|
||||
_addIntSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -411,11 +425,32 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
true,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'EnableDownloadTimeout') {
|
||||
_addBooleanSetting(commonSettings, widget.settings, key, value, true);
|
||||
} else if (key == 'EnableDriveEvents') {
|
||||
_addBooleanSetting(commonSettings, widget.settings, key, value, true);
|
||||
} else if (key == 'EventLevel') {
|
||||
}
|
||||
break;
|
||||
case 'EnableDownloadTimeout':
|
||||
{
|
||||
_addBooleanSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
key,
|
||||
value,
|
||||
true,
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'EnableDriveEvents':
|
||||
{
|
||||
_addBooleanSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
key,
|
||||
value,
|
||||
true,
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'EventLevel':
|
||||
{
|
||||
_addListSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -425,7 +460,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
Icons.event,
|
||||
false,
|
||||
);
|
||||
} else if (key == 'EvictionDelayMinutes') {
|
||||
}
|
||||
break;
|
||||
case 'EvictionDelayMinutes':
|
||||
{
|
||||
_addIntSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -434,9 +472,21 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
true,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'EvictionUseAccessedTime') {
|
||||
_addBooleanSetting(commonSettings, widget.settings, key, value, true);
|
||||
} else if (key == 'MaxCacheSizeBytes') {
|
||||
}
|
||||
break;
|
||||
case 'EvictionUseAccessedTime':
|
||||
{
|
||||
_addBooleanSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
key,
|
||||
value,
|
||||
true,
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'MaxCacheSizeBytes':
|
||||
{
|
||||
_addIntSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -445,7 +495,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
false,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'MaxUploadCount') {
|
||||
}
|
||||
break;
|
||||
case 'MaxUploadCount':
|
||||
{
|
||||
_addIntSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -454,7 +507,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
true,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'OnlineCheckRetrySeconds') {
|
||||
}
|
||||
break;
|
||||
case 'OnlineCheckRetrySeconds':
|
||||
{
|
||||
_addIntSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -463,7 +519,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
true,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'PreferredDownloadType') {
|
||||
}
|
||||
break;
|
||||
case 'PreferredDownloadType':
|
||||
{
|
||||
_addListSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -473,7 +532,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
Icons.download,
|
||||
false,
|
||||
);
|
||||
} else if (key == 'RetryReadCount') {
|
||||
}
|
||||
break;
|
||||
case 'RetryReadCount':
|
||||
{
|
||||
_addIntSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -482,7 +544,10 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
true,
|
||||
validators: getSettingValidators(key),
|
||||
);
|
||||
} else if (key == 'RingBufferFileSize') {
|
||||
}
|
||||
break;
|
||||
case 'RingBufferFileSize':
|
||||
{
|
||||
_addIntListSetting(
|
||||
commonSettings,
|
||||
widget.settings,
|
||||
@ -493,298 +558,35 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
Icons.animation,
|
||||
false,
|
||||
);
|
||||
} else if (key == 'EncryptConfig') {
|
||||
value.forEach((subKey, subValue) {
|
||||
if (subKey == 'EncryptionToken') {
|
||||
_addPasswordSetting(
|
||||
encryptConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'Path') {
|
||||
_addStringSetting(
|
||||
encryptConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.folder,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
});
|
||||
} else if (key == 'HostConfig') {
|
||||
value.forEach((subKey, subValue) {
|
||||
if (subKey == 'AgentString') {
|
||||
_addStringSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.support_agent,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'ApiPassword') {
|
||||
_addPasswordSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'ApiPort') {
|
||||
_addIntSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'ApiUser') {
|
||||
_addStringSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.person,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'HostNameOrIp') {
|
||||
_addStringSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.computer,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'Path') {
|
||||
_addStringSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.route,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'Protocol') {
|
||||
_addListSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
protocolTypeList,
|
||||
Icons.http,
|
||||
true,
|
||||
);
|
||||
} else if (subKey == 'TimeoutMs') {
|
||||
_addIntSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
break;
|
||||
case 'EncryptConfig':
|
||||
{
|
||||
_parseEncryptConfig(encryptConfigSettings, key, value);
|
||||
}
|
||||
});
|
||||
} else if (key == 'RemoteConfig') {
|
||||
value.forEach((subKey, subValue) {
|
||||
if (subKey == 'ApiPort') {
|
||||
_addIntSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'EncryptionToken') {
|
||||
_addPasswordSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'HostNameOrIp') {
|
||||
_addStringSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.computer,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'MaxConnections') {
|
||||
_addIntSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'ReceiveTimeoutMs') {
|
||||
_addIntSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'SendTimeoutMs') {
|
||||
_addIntSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
break;
|
||||
case 'HostConfig':
|
||||
{
|
||||
_parseHostConfig(hostConfigSettings, key, value);
|
||||
}
|
||||
});
|
||||
} else if (key == 'RemoteMount') {
|
||||
value.forEach((subKey, subValue) {
|
||||
if (subKey == 'Enable') {
|
||||
List<SettingsTile> tempSettings = [];
|
||||
_addBooleanSetting(
|
||||
tempSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
);
|
||||
remoteMountSettings.insertAll(0, tempSettings);
|
||||
} else if (subKey == 'ApiPort') {
|
||||
_addIntSetting(
|
||||
remoteMountSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'ClientPoolSize') {
|
||||
_addIntSetting(
|
||||
remoteMountSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'EncryptionToken') {
|
||||
_addPasswordSetting(
|
||||
remoteMountSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
break;
|
||||
case 'RemoteConfig':
|
||||
{
|
||||
_parseRemoteConfig(remoteConfigSettings, key, value);
|
||||
}
|
||||
});
|
||||
} else if (key == 'S3Config') {
|
||||
value.forEach((subKey, subValue) {
|
||||
if (subKey == 'AccessKey') {
|
||||
_addStringSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.key,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'Bucket') {
|
||||
_addStringSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.folder,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'EncryptionToken') {
|
||||
_addPasswordSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'Region') {
|
||||
_addStringSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.map,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'SecretKey') {
|
||||
_addPasswordSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'TimeoutMs') {
|
||||
_addIntSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'URL') {
|
||||
_addStringSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.http,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
} else if (subKey == 'UsePathStyle') {
|
||||
_addBooleanSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
);
|
||||
} else if (subKey == 'UseRegionInURL') {
|
||||
_addBooleanSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
);
|
||||
break;
|
||||
case 'RemoteMount':
|
||||
{
|
||||
_parseRemoteMount(remoteMountSettings, key, value);
|
||||
}
|
||||
});
|
||||
} else if (key == 'SiaConfig') {
|
||||
break;
|
||||
case 'S3Config':
|
||||
{
|
||||
_parseS3Config(s3ConfigSettings, key, value);
|
||||
}
|
||||
break;
|
||||
case 'SiaConfig':
|
||||
{
|
||||
value.forEach((subKey, subValue) {
|
||||
if (subKey == 'Bucket') {
|
||||
_addStringSetting(
|
||||
@ -799,6 +601,8 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
}
|
||||
});
|
||||
}
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
return SettingsList(
|
||||
@ -843,6 +647,150 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
);
|
||||
}
|
||||
|
||||
void _parseHostConfig(List<SettingsTile> hostConfigSettings, key, value) {
|
||||
value.forEach((subKey, subValue) {
|
||||
switch (subKey) {
|
||||
case 'AgentString':
|
||||
{
|
||||
_addStringSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.support_agent,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'ApiPassword':
|
||||
{
|
||||
_addPasswordSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'ApiPort':
|
||||
{
|
||||
_addIntSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'ApiUser':
|
||||
{
|
||||
_addStringSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.person,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'HostNameOrIp':
|
||||
{
|
||||
_addStringSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.computer,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'Path':
|
||||
{
|
||||
_addStringSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.route,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'Protocol':
|
||||
{
|
||||
_addListSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
protocolTypeList,
|
||||
Icons.http,
|
||||
true,
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'TimeoutMs':
|
||||
{
|
||||
_addIntSetting(
|
||||
hostConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
void _parseEncryptConfig(
|
||||
List<SettingsTile> encryptConfigSettings,
|
||||
key,
|
||||
value,
|
||||
) {
|
||||
value.forEach((subKey, subValue) {
|
||||
switch (subKey) {
|
||||
case 'EncryptionToken':
|
||||
{
|
||||
_addPasswordSetting(
|
||||
encryptConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'Path':
|
||||
{
|
||||
_addStringSetting(
|
||||
encryptConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.folder,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
void dispose() {
|
||||
if (!widget.isAdd) {
|
||||
@ -869,4 +817,265 @@ class _MountSettingsWidgetState extends State<MountSettingsWidget> {
|
||||
|
||||
super.dispose();
|
||||
}
|
||||
|
||||
void _parseS3Config(List<SettingsTile> s3ConfigSettings, String key, value) {
|
||||
value.forEach((subKey, subValue) {
|
||||
switch (subKey) {
|
||||
case 'AccessKey':
|
||||
{
|
||||
_addStringSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.key,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'Bucket':
|
||||
{
|
||||
_addStringSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.folder,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'EncryptionToken':
|
||||
{
|
||||
_addPasswordSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'Region':
|
||||
{
|
||||
_addStringSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.map,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'SecretKey':
|
||||
{
|
||||
_addPasswordSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'TimeoutMs':
|
||||
{
|
||||
_addIntSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'URL':
|
||||
{
|
||||
_addStringSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.http,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'UsePathStyle':
|
||||
{
|
||||
_addBooleanSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'UseRegionInURL':
|
||||
{
|
||||
_addBooleanSetting(
|
||||
s3ConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
);
|
||||
}
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
void _parseRemoteMount(
|
||||
List<SettingsTile> remoteMountSettings,
|
||||
String key,
|
||||
value,
|
||||
) {
|
||||
value.forEach((subKey, subValue) {
|
||||
switch (subKey) {
|
||||
case 'Enable':
|
||||
{
|
||||
List<SettingsTile> tempSettings = [];
|
||||
_addBooleanSetting(
|
||||
tempSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
);
|
||||
remoteMountSettings.insertAll(1, tempSettings);
|
||||
}
|
||||
break;
|
||||
case 'ApiPort':
|
||||
{
|
||||
_addIntSetting(
|
||||
remoteMountSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'ClientPoolSize':
|
||||
{
|
||||
_addIntSetting(
|
||||
remoteMountSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'EncryptionToken':
|
||||
{
|
||||
_addPasswordSetting(
|
||||
remoteMountSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
void _parseRemoteConfig(
|
||||
List<SettingsTile> remoteConfigSettings,
|
||||
String key,
|
||||
value,
|
||||
) {
|
||||
value.forEach((subKey, subValue) {
|
||||
switch (subKey) {
|
||||
case 'ApiPort':
|
||||
{
|
||||
_addIntSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'EncryptionToken':
|
||||
{
|
||||
_addPasswordSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'HostNameOrIp':
|
||||
{
|
||||
_addStringSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
Icons.computer,
|
||||
false,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'MaxConnections':
|
||||
{
|
||||
_addIntSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'ReceiveTimeoutMs':
|
||||
{
|
||||
_addIntSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
case 'SendTimeoutMs':
|
||||
{
|
||||
_addIntSetting(
|
||||
remoteConfigSettings,
|
||||
widget.settings[key],
|
||||
subKey,
|
||||
subValue,
|
||||
true,
|
||||
validators: getSettingValidators('$key.$subKey'),
|
||||
);
|
||||
}
|
||||
break;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user