using System.Collections; using System.Collections.Generic; using UnityEngine; namespace VoxelBusters.CoreLibrary { /// /// Provides an interface to connect external services used by the plugin. /// public static class ExternalServiceProvider { #region Static properties private static IJsonServiceProvider s_jsonServiceProvider; private static ISaveServiceProvider s_saveServiceProvider; private static ILocalisationServiceProvider s_localisationServiceProvider; #endregion #region Static fields /// /// Gets or sets the JSON service provider. /// /// The JSON service provider. public static IJsonServiceProvider JsonServiceProvider { get { return s_jsonServiceProvider; } set { // validate property Assert.IsPropertyNotNull(value, "value"); // set value s_jsonServiceProvider = value; } } /// /// Gets or sets the save service provider. /// /// The save service provider. public static ISaveServiceProvider SaveServiceProvider { get { return s_saveServiceProvider; } set { // validate property Assert.IsPropertyNotNull(value, "value"); // set value s_saveServiceProvider = value; } } public static ILocalisationServiceProvider LocalisationServiceProvider { get { return s_localisationServiceProvider; } set { // validate property Assert.IsPropertyNotNull(value, "value"); // set value s_localisationServiceProvider = value; } } #endregion } }