Class PackageSettingsRepository
A settings repository that stores data local to a Unity project.
Implements
Inherited Members
Namespace: UnityEditor.SettingsManagement
Assembly: Unity.Settings.Editor.dll
Syntax
[Serializable]
public sealed class PackageSettingsRepository : ISettingsRepository
Constructors
PackageSettingsRepository(string, string)
Constructor sets the serialized data path.
Declaration
public PackageSettingsRepository(string package, string name)
Parameters
Type | Name | Description |
---|---|---|
string | package | The package name. |
string | name | A name for this settings file. Settings are saved in |
Properties
name
The name of this settings file.
Declaration
public string name { get; }
Property Value
Type | Description |
---|---|
string |
path
Declaration
public string path { get; }
Property Value
Type | Description |
---|---|
string | The full path to the settings file.
This corresponds to |
scope
Declaration
public SettingsScope scope { get; }
Property Value
Type | Description |
---|---|
SettingsScope | This repository implementation is relevant to the Project scope. |
Methods
ContainsKey<T>(string)
Does the repository contain a setting with key and type.
Declaration
public bool ContainsKey<T>(string key)
Parameters
Type | Name | Description |
---|---|---|
string | key | The settings key. |
Returns
Type | Description |
---|---|
bool | True if a setting matching both key and type is found, false if no entry is found. |
Type Parameters
Name | Description |
---|---|
T | The type of value to search for. |
GetSettingsPath(string, string)
Get a path for a settings file relative to the calling assembly package directory.
Declaration
public static string GetSettingsPath(string packageName, string name = "Settings")
Parameters
Type | Name | Description |
---|---|---|
string | packageName | The name of the package requesting this setting. |
string | name | An optional name for the settings file. Default is "Settings." |
Returns
Type | Description |
---|---|
string | A package-scoped path to the settings file within Project Settings. |
Get<T>(string, T)
Get a value with key of type T, or return the fallback value if no matching key is found.
Declaration
public T Get<T>(string key, T fallback = default)
Parameters
Type | Name | Description |
---|---|---|
string | key | The settings key. |
T | fallback | If no key with a value of type T is found, this value is returned. |
Returns
Type | Description |
---|---|
T |
Type Parameters
Name | Description |
---|---|
T | Type of value to search for. |
Remove<T>(string)
Remove a key value pair from the settings repository.
Declaration
public void Remove<T>(string key)
Parameters
Type | Name | Description |
---|---|---|
string | key |
Type Parameters
Name | Description |
---|---|
T |
Save()
Save all settings to their serialized state.
Declaration
public void Save()
Set<T>(string, T)
Set a value for key of type T.
Declaration
public void Set<T>(string key, T value)
Parameters
Type | Name | Description |
---|---|---|
string | key | The settings key. |
T | value | The value to set. Must be serializable. |
Type Parameters
Name | Description |
---|---|
T | Type of value. |