Exemple #1
0
 private static void SetLastModifiedBy(SquidexEvent @event, IMongoEntity entity)
 {
     if (entity is IEntityWithLastModifiedBy withModifiedBy)
     {
         withModifiedBy.LastModifiedBy = @event.Actor;
     }
 }
Exemple #2
0
 private static void SetAppId(SquidexEvent @event, IMongoEntity entity)
 {
     if (entity is IAppRefEntity app && @event is AppEvent appEvent)
     {
         app.AppId = appEvent.AppId.Id;
     }
 }
Exemple #3
0
 private static void SetVersion(EnvelopeHeaders headers, IMongoEntity entity)
 {
     if (entity is IEntityWithVersion withVersion)
     {
         withVersion.Version = headers.EventStreamNumber();
     }
 }
Exemple #4
0
 private static void SetCreatedBy(SquidexEvent @event, IMongoEntity entity)
 {
     if (entity is IEntityWithCreatedBy withCreatedBy)
     {
         withCreatedBy.CreatedBy = @event.Actor;
     }
 }
Exemple #5
0
 static GetMongo()
 {
     _mapping = new Dictionary <MappingEntity, IMongoEntity>()
     {
         { MappingEntity.Game, new Product() },
         { MappingEntity.Genre, new Category() },
         { MappingEntity.Publisher, new Supplier() },
         { MappingEntity.OrderDetail, new OrderDetailMongo() },
         { MappingEntity.Order, new OrderMongo() }
     };
     if (IsMongo())
     {
         var entityEnum = Enum.Parse(typeof(MappingEntity), typeof(T).Name);
         _mongoType = _mapping[(MappingEntity)entityEnum];
     }
 }
Exemple #6
0
 /// <summary>
 /// 加载
 /// </summary>
 /// <param name="entity"></param>
 public virtual void Load(IMongoEntity entity)
 {
 }
Exemple #7
0
    public static object GetAttributeValue <T>(IMongoEntity entity, string propertyName) where T : Attribute
    {
        var attribute = (T)entity.GetType().GetCustomAttribute(typeof(T));

        return(attribute != null?attribute.GetType().GetProperty(propertyName).GetValue(attribute, null) : null);
    }
Exemple #8
0
 private static void SetLastModified(EnvelopeHeaders headers, IMongoEntity entity)
 {
     entity.LastModified = headers.Timestamp();
 }
Exemple #9
0
 private static void SetCreated(EnvelopeHeaders headers, IMongoEntity entity)
 {
     entity.Created = headers.Timestamp();
 }
Exemple #10
0
 private static void SetId(EnvelopeHeaders headers, IMongoEntity entity)
 {
     entity.Id = headers.AggregateId();
 }
		// PRIVATE METHODS
		private WriteConcernResult update( IMongoEntity entity, UpdateFlags update_flags ) {
			var query = new QueryDocument( "_id", entity.Id );
			var update_document = entity.as_update_document();
			
			return collection.Update( query, update_document, update_flags );
		}
Exemple #12
0
        private void SendentityCreatedNotification(SomeModelOne createdentity, string someEntityBuildingId, IMongoEntity user)
        {
            var update = new UpdateModel()
            {
                updateType    = UpdateType.entityCreated,
                parentId      = createdentity._id,
                message       = $"New entity created: {createdentity.header}",
                buildingId    = buildingId,
                updateOwnerId = user._id
            };

            updateSenderProxy.sendNotificationsToCertainUserSync(update, null);
        }