private GameObject LoadFromDAO(iGameObjectDAO dao, string name, string tag)
    {
        IDictionary toLoad = dao.LoadOne(name);
        GameObject  fresh  = this.CreateObject(toLoad, tag);

        fresh.tag = tag;
        return(fresh);
    }
    private IDictionary DeconstructObjectMultiThreaded(string toDeconstruct, iGameObjectDAO dao)
    {
        Dictionary <string, System.Object> defaultDict = dao.LoadDefault();
        List <string> keys = new List <string>();

        keys.AddRange(defaultDict.Keys);

        IDictionary shell = ControllerShell.Container[toDeconstruct] as IDictionary;

        for (int i = 0; i < keys.Count; i++)
        {
            string tag  = toDeconstruct.Split('-')[0];
            string Ctrl = ObjectFactoryHelper.DetermineControllerDestroyMultiThreaded(keys[i], tag);

            defaultDict[keys[i]] = (shell[Ctrl] as ISetGetValues).GetValues();
        }
        return(defaultDict);
    }
    private IDictionary DeconstructObject(GameObject toDeconstruct, iGameObjectDAO dao)
    {
        Dictionary <string, System.Object> defaultDict = dao.LoadDefault();
        List <string> keys = new List <string>();

        keys.AddRange(defaultDict.Keys);

        for (int i = 0; i < keys.Count; i++)
        {
            //string Ctrl = keys[i] + "Controller";
            string Ctrl = ObjectFactoryHelper.DetermineControllerDestroy(keys[i], toDeconstruct);

            defaultDict[keys[i]] = GetFromController(toDeconstruct, Ctrl);

            //Debug.Log(defaultDict[keys[i]]);
        }
        return(defaultDict);
    }
    private void SaveWithDAOMultiThreaded(iGameObjectDAO dao, string key, string name)
    {
        IDictionary toSave = DeconstructObjectMultiThreaded(key, dao);

        dao.AddToSaveList(name, ((Dictionary <string, System.Object>)toSave));
    }
    private void SaveWithDAO(iGameObjectDAO dao, GameObject go, string name)
    {
        IDictionary toSave = DeconstructObject(go, dao);

        dao.AddToSaveList(name, (Dictionary <string, System.Object>)toSave);
    }