private IEnumerator LoadNestedGameObjectCoroutine(string prefabName, IWrappedRef <GameObject> refObject)
    {
        refObject.Reference = GetInjectedGO(prefabName);
        while (refObject.Reference == null)
        {
            yield return(null);

            refObject.Reference = GetInjectedGO(prefabName);
        }
    }
    private IEnumerator LoadNestedComponentCoroutine <T>(string prefabName, IWrappedRef <T> refObject) where T : Component
    {
        refObject.Reference = GetInjectedComponent <T>(prefabName, true);
        while (refObject.Reference == null)
        {
            yield return(null);

            refObject.Reference = GetInjectedComponent <T>(prefabName, true);
        }
        log.DebugMS("LoadNestedComponentCoroutine - success. injectedComponent: " + refObject.Reference + ", refObject.Value: " + refObject.Reference);
    }
 protected void LoadNestedGameObjectAsync(string prefabName, IWrappedRef <GameObject> refObject)
 {
     if (refObject == null)
     {
         log.Error(_Logger.User.Msaw, "refObject == null");
     }
     refObject.Reference = GetInjectedGO(prefabName, true);
     if (refObject.Reference == null)
     {
         StartCoroutine(LoadNestedGameObjectCoroutine(prefabName, refObject));
     }
 }
 protected void LoadNestedComponentAsync <T>(string prefabName, IWrappedRef <T> refObject) where T : Component
 {
     if (refObject == null)
     {
         log.Error(_Logger.User.Msaw, "refObject == null");
     }
     refObject.Reference = GetInjectedComponent <T>(prefabName, true);
     if (refObject.Reference == null)
     {
         StartCoroutine(LoadNestedComponentCoroutine <T>(prefabName, refObject));
     }
 }
 protected void LoadNestedGO(string prefabName, IWrappedRef <GameObject> refObject)
 {
     LoadNestedGameObjectAsync(prefabName, refObject);
 }
 protected void LoadNested <T>(string prefabName, IWrappedRef <T> refObject) where T : Component
 {
     LoadNestedComponentAsync <T>(prefabName, refObject);
 }
 public void LoadNested <T>(IWrappedRef <T> refObject) where T : Component
 {
     LoadNestedComponentAsync <T>(refObject.NestedPrefabName, refObject);
 }