|
- using System;
- using System.Collections.Generic;
-
- namespace SUISS.Cloud
- {
- public class SSPStorageController : ISSPStorageController
- {
- public SSPStorageController(IMessageController messageController, IPlayernameController playernameController, Dictionary<string, object> storage)
- {
- this._messageController = messageController;
- this._playernameController = playernameController;
- this._storage = storage;
- }
-
- private Dictionary<string, object> PlayerStorage
- {
- get
- {
- if (!this._storage.ContainsKey(this._playernameController.PlayerUuid) || !(this._storage[this._playernameController.PlayerUuid] is Dictionary<string, object>))
- {
- this._storage.Add(this._playernameController.PlayerUuid, new Dictionary<string, object>());
- }
- return (Dictionary<string, object>)this._storage[this._playernameController.PlayerUuid];
- }
- }
-
- public SSPStorage Get(string key)
- {
- return new SSPStorage(key, this.GetStorageDict(key), this._messageController, this._playernameController);
- }
-
- private Dictionary<string, object> GetStorageDict(string key)
- {
- if (!this.PlayerStorage.ContainsKey(key) || !(this.PlayerStorage[key] is Dictionary<string, object>))
- {
- this.PlayerStorage.Add(key, new Dictionary<string, object>());
- }
- return (Dictionary<string, object>)this.PlayerStorage[key];
- }
-
- private IMessageController _messageController;
-
- private IPlayernameController _playernameController;
-
- private Dictionary<string, object> _storage;
- }
- }
|