Esempio n. 1
0
 public static ActionSubscriptionToken <T> RegisterHandler <T>(
     IEntityIdentifier groupId,
     Action <T> toRegister)
     where T : new()
 {
     return(Messenger.RegisterHandler(toRegister, groupId));
 }
Esempio n. 2
0
 public static b2Body CreateDynamicBody(this b2World world, IEntityIdentifier identifier, MetreVector position)
 {
     return(world.CreateBody(new b2BodyDef
     {
         type = b2BodyType.b2_dynamicBody,
         position = position,
         userData = identifier
     }));
 }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
                }
            }
        }
Esempio n. 5
0
 /// <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));
 }
Esempio n. 6
0
 protected AbstractEntity(IEntityIdentifier <T> identifier)
 {
     Validate.NotNull(identifier);
     this.identifier = identifier;
 }
Esempio n. 7
0
        /// <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);
        }
Esempio n. 8
0
        private bool Exists(IEntityIdentifier <TodoModel> identifier)
        {
            TodoModel todo = Resolve(identifier);

            return(todo == null);
        }
Esempio n. 9
0
 public TodoModel Resolve(IEntityIdentifier <TodoModel> identifier)
 {
     return(todos.Find((todo) => todo.GetIdentifier().Equals(identifier)));
 }
Esempio n. 10
0
 public void Delete(IEntityIdentifier <TodoModel> identifier)
 {
     Delete(Resolve(identifier));
 }
Esempio n. 11
0
 public bool Contains(IEntityIdentifier <TodoModel> identifier)
 {
     return(todos.Exists((todo) => todo.GetIdentifier().Equals(identifier)));
 }
Esempio n. 12
0
 public TodoModel(IEntityIdentifier <TodoModel> identifier, string message) : base(identifier)
 {
     this.message  = message;
     this.finished = false;
 }