protected override void Execute()
        {
            var catalogs = new List <IResourceLocator>(m_DepOp.Result.Count);

            for (int i = 0; i < m_DepOp.Result.Count; i++)
            {
                var               locator        = m_DepOp.Result[i].Result as IResourceLocator;
                string            localHash      = null;
                IResourceLocation remoteLocation = null;
                if (locator == null)
                {
                    var catData = m_DepOp.Result[i].Result as ContentCatalogData;
                    locator        = catData.CreateCustomLocator(catData.location.PrimaryKey);
                    localHash      = catData.localHash;
                    remoteLocation = catData.location;
                }

                m_LocatorInfos[i].UpdateContent(locator, localHash, remoteLocation);
                catalogs.Add(m_LocatorInfos[i].Locator);
            }

            if (!m_AutoCleanBundleCache)
            {
                Complete(catalogs, true, null);
            }
            else
            {
                m_CleanCacheOp = m_Addressables.CleanBundleCache(m_DepOp, false);
                OnCleanCacheCompleted(m_CleanCacheOp, catalogs);
            }
        }