{"action":"opened","issue":{"url":"https://api.github.com/repos/theprimegamer/breakthrough-conflict-online/issues/14","repository_url":"https://api.github.com/repos/theprimegamer/breakthrough-conflict-online","labels_url":"https://api.github.com/repos/theprimegamer/breakthrough-conflict-online/issues/14/labels{/name}","comments_url":"https://api.github.com/repos/theprimegamer/breakthrough-conflict-online/issues/14/comments","events_url":"https://api.github.com/repos/theprimegamer/breakthrough-conflict-online/issues/14/events","html_url":"https://github.com/theprimegamer/breakthrough-conflict-online/issues/14","id":265992214,"number":14,"title":"Create CacheManager","user":{"login":"theprimegamer","id":2413167,"avatar_url":"https://avatars1.githubusercontent.com/u/2413167?v=4","gravatar_id":"","url":"https://api.github.com/users/theprimegamer","html_url":"https://github.com/theprimegamer","followers_url":"https://api.github.com/users/theprimegamer/followers","following_url":"https://api.github.com/users/theprimegamer/following{/other_user}","gists_url":"https://api.github.com/users/theprimegamer/gists{/gist_id}","starred_url":"https://api.github.com/users/theprimegamer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/theprimegamer/subscriptions","organizations_url":"https://api.github.com/users/theprimegamer/orgs","repos_url":"https://api.github.com/users/theprimegamer/repos","events_url":"https://api.github.com/users/theprimegamer/events{/privacy}","received_events_url":"https://api.github.com/users/theprimegamer/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-10-17T04:49:16Z","updated_at":"2017-10-17T04:49:16Z","closed_at":null,"author_association":"OWNER","body":"This file will live in Core/Util. It is used to handle the interaction between the system's cache and the application.\r\n\r\nThe file will define a class, CacheManager, that will be called by other parts of Core to interact with the system's cache. It will contain two functions:\r\n- bool SetItem(string cacheKey, object cacheValue, BcoCachePolicy bcoCachePolicy = BcoCachePolicy.Forever)\r\n  - This method has a default parameter for the third parameter that will default the cache to store the cacheValue until the cache is cleared. Other cache policies are defined below. \r\n  - The method will add an entry to the system's cache with the key cacheKey and the value cacheValue. A policy will be created within the function so that the user developer does not have to worry about it.\r\n- T GetItem<T>(string cacheKey) \r\n  - This method has a generic that is used to specify the return type of the function. The generic is useful so the developer does not have to cast after they have received an item from the cache.\r\n\r\nThe file will also contain an enum definition for BcoCachePolicy. This enumeration will be used to specify predefined CachePolicy's for the BCO system. The enumeration will be defined as follows:\r\n- Forever: Item stays in cache until cleared\r\n- OneYear: Item stays in cache for one year\r\n- OneDay: Item stays in cache for one day"}}
{"actor":{"display_login":"theprimegamer"}}