public static ActionSubscriptionToken <T> RegisterHandler <T>( IEntityIdentifier groupId, Action <T> toRegister) where T : new() { return(Messenger.RegisterHandler(toRegister, groupId)); }
public static b2Body CreateDynamicBody(this b2World world, IEntityIdentifier identifier, MetreVector position) { return(world.CreateBody(new b2BodyDef { type = b2BodyType.b2_dynamicBody, position = position, userData = identifier })); }
public static void Send <T>( IEntityIdentifier groupId, Action <T> onCreation) where T : new() { var message = ObjectPool.Get <T>(); onCreation(message); Messenger.Send(message, groupId); ObjectPool.Return(message); }
public void RaiseEvents(IEntityIdentifier entityIdentifier) { this.CheckIfNotDisposed(nameof(RaiseEvents)); if (this.domainEvents.TryRemove(entityIdentifier, out var entityDomainEvents)) { foreach (var domainEvent in entityDomainEvents) { this.domainEventService.Publish(domainEvent); } } }
/// <summary> /// Lock specified entity /// </summary> /// <param name="entity"></param> /// <returns>Result of locking if succeeded or failed</returns> public EntityLockResult LockEntity(IEntityIdentifier entity) { return(LockEntity(entity.Id, entity.GetType().Name)); }
protected AbstractEntity(IEntityIdentifier <T> identifier) { Validate.NotNull(identifier); this.identifier = identifier; }
/// <summary>creates an object, destroying it first if it already exists.</summary> public void object_create_anew(IEntityIdentifier object_name) { var def = this.scene.Scenario.WellKnownItems[object_name.Identifier]; this.scene.CreateEntity(def); }
private bool Exists(IEntityIdentifier <TodoModel> identifier) { TodoModel todo = Resolve(identifier); return(todo == null); }
public TodoModel Resolve(IEntityIdentifier <TodoModel> identifier) { return(todos.Find((todo) => todo.GetIdentifier().Equals(identifier))); }
public void Delete(IEntityIdentifier <TodoModel> identifier) { Delete(Resolve(identifier)); }
public bool Contains(IEntityIdentifier <TodoModel> identifier) { return(todos.Exists((todo) => todo.GetIdentifier().Equals(identifier))); }
public TodoModel(IEntityIdentifier <TodoModel> identifier, string message) : base(identifier) { this.message = message; this.finished = false; }