public async UniTask Execute(ILifeTime lifeTime) { var context = await contextResource.LoadAssetTaskAsync <ContextAsset>(lifeTime); var asset = await resource.LoadAssetTaskAsync(lifeTime); if (asset == null || !context) { GameLog.LogError($"NULL asset loaded from {resource} context {contextResource}"); return; } await asset.RegisterAsync(context.Value); }
private async UniTask RegisterSource(AssetReferenceDataSource dataSource, IContext context) { var sourceAsset = await dataSource.LoadAssetTaskAsync(LifeTime); await sourceAsset.RegisterAsync(context); }