41 lines
1.1 KiB
C#
41 lines
1.1 KiB
C#
|
using System;
|
||
|
using System.Collections.Generic;
|
||
|
using Newtonsoft.Json;
|
||
|
using UnityEngine;
|
||
|
|
||
|
namespace Unity.Services.Core.Configuration
|
||
|
{
|
||
|
[Serializable]
|
||
|
struct SerializableProjectConfiguration
|
||
|
{
|
||
|
public static SerializableProjectConfiguration Empty
|
||
|
=> new SerializableProjectConfiguration
|
||
|
{
|
||
|
Keys = Array.Empty<string>(),
|
||
|
Values = Array.Empty<ConfigurationEntry>(),
|
||
|
};
|
||
|
|
||
|
[JsonRequired]
|
||
|
[SerializeField]
|
||
|
internal string[] Keys;
|
||
|
|
||
|
[JsonRequired]
|
||
|
[SerializeField]
|
||
|
internal ConfigurationEntry[] Values;
|
||
|
|
||
|
public SerializableProjectConfiguration(IDictionary<string, ConfigurationEntry> configValues)
|
||
|
{
|
||
|
Keys = new string[configValues.Count];
|
||
|
Values = new ConfigurationEntry[configValues.Count];
|
||
|
|
||
|
var i = 0;
|
||
|
foreach (var configValue in configValues)
|
||
|
{
|
||
|
Keys[i] = configValue.Key;
|
||
|
Values[i] = configValue.Value;
|
||
|
++i;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|