private void Initialize() { _lifeTimeDefeDefinition = _lifeTimeDefeDefinition ?? new LifeTimeDefinition(); _lifeTime = _lifeTimeDefeDefinition.LifeTime; _lifeTimeDefeDefinition.Release(); _data = _data ?? new EntityContext(); _lifeTime.AddCleanUpAction(_data.Release); _lifeTime.AddCleanUpAction(RemoveAllConnections); }
public UniTask Execute(ILifeTime lifeTime) { connector.Broadcast(this). AddTo(lifeTime); lifeTime.AddCleanUpAction(() => handler.Cancel()); return(UniTask.CompletedTask); }
public UniTask Execute(ILifeTime lifeTime) { //reset local value lifeTime.AddCleanUpAction(CleanUpNode); var input = _portPair.InputPort; var output = _portPair.OutputPort; var valueObservable = input.Receive <TData>(); var source = BindToDataSource(valueObservable); if (_distinctInput) { source.Subscribe(x => _valueData.Value = x).AddTo(lifeTime); } else { source.Subscribe(_valueData.SetValueForce).AddTo(lifeTime); } _isFinalyze.Where(x => x) .Do(x => output.Publish(_valueData.Value)) .Subscribe() .AddTo(lifeTime); return(UniTask.CompletedTask); }
public void Execute(ILifeTime lifeTime) { //reset local value lifeTime.AddCleanUpAction(CleanUpNode); var input = portPair.InputPort; var output = portPair.OutputPort; var valueObservable = input.Receive <TData>(); var source = BindToDataSource(valueObservable); if (distinctInput) { source.Subscribe(x => valueData.Value = x). AddTo(lifeTime); } else { source.Subscribe(valueData.SetValueAndForceNotify). AddTo(lifeTime); } isFinalyze. Where(x => x). Do(x => output.Publish(valueData.Value)). Subscribe(). AddTo(lifeTime); }
public static async UniTask <T> Create <T>( this IViewElementFactory factory, IViewModel viewModel, ILifeTime lifeTime, Transform parent = null, bool stayWoorldPosition = false) where T : class, IView { var view = await factory.Create(viewModel, typeof(T), string.Empty, parent, string.Empty, stayWoorldPosition) as T; lifeTime.AddCleanUpAction(() => view?.Close()); return(view); }
public static async UniTask <T> Create <T>( this IViewElementFactory factory, IViewModel viewModel, ILifeTime lifeTime, string skinTag = "", Transform parent = null, string viewName = "", bool stayWorld = false) where T : class, IView { var view = await factory.Create(viewModel, typeof(T), skinTag, parent, viewName, stayWorld) as T; lifeTime.AddCleanUpAction(() => view?.Close()); return(view); }
public static RoutineHandle AddTo(this RoutineHandle handler, ILifeTime lifeTime) { lifeTime.AddCleanUpAction(() => handler.Cancel()); return(handler); }
public static TTween AddTo <TTween>(this TTween tween, ILifeTime lifeTime) where TTween : Tween { lifeTime.AddCleanUpAction(() => tween.Kill()); return(tween); }
public void Execute(ILifeTime lifeTime) { connector.Broadcast(this). AddTo(lifeTime); lifeTime.AddCleanUpAction(() => handler.Cancel()); }