예제 #1
0
 public static string GetTriggerNameDelete(EntityLoggingInfo conceptInfo)
 {
     return(SqlUtility.Identifier(Sql.Format(
                                      "EntityLoggingDefinition_TriggerNameDelete",
                                      conceptInfo.Entity.Module.Name,
                                      conceptInfo.Entity.Name)));
 }
예제 #2
0
        public IEnumerable <IConceptInfo> CreateNewConcepts(MonitoredRecordInfo conceptInfo, IDslModel existingConcepts)
        {
            var createdAtPropertyInfo = new DateTimePropertyInfo
            {
                DataStructure = conceptInfo.Entity,
                Name          = "CreatedAt"
            };

            var creationTimePropertyInfo = new CreationTimeInfo {
                Property = createdAtPropertyInfo
            };
            var denyUserEditPropertyInfo = new DenyUserEditPropertyInfo {
                Property = createdAtPropertyInfo
            };

            var loggingPropertyInfo = new EntityLoggingInfo
            {
                Entity = conceptInfo.Entity
            };

            var allPropertiesLoggingInfo = new AllPropertiesLoggingInfo {
                EntityLogging = loggingPropertyInfo
            };

            return(new IConceptInfo[]
            {
                createdAtPropertyInfo, creationTimePropertyInfo, denyUserEditPropertyInfo, loggingPropertyInfo, allPropertiesLoggingInfo
            });
        }
예제 #3
0
        public IEnumerable <IConceptInfo> CreateNewConcepts(
            TrackedRecordInfo conceptInfo, IDslModel existingConcepts)
        {
            var newConcepts = new List <IConceptInfo>();

            var propertyCreatedAt = new DateTimePropertyInfo
            {
                Name          = "CreatedAt",
                DataStructure = conceptInfo.Entity
            };

            newConcepts.Add(propertyCreatedAt);
            newConcepts.Add(new CreationTimeInfo
            {
                Property = propertyCreatedAt
            });

            var entityLogging = new EntityLoggingInfo
            {
                Entity = conceptInfo.Entity
            };

            newConcepts.Add(entityLogging);
            newConcepts.Add(new AllPropertiesLoggingInfo
            {
                EntityLogging = entityLogging
            });

            return(newConcepts);
        }
예제 #4
0
        public IEnumerable <IConceptInfo> CreateNewConcepts(MonitoredRecordInfo conceptInfo, IDslModel existingConcepts)
        {
            var newConcepts = new List <IConceptInfo>();

            // The "MonitoredRecord”" concept will generate the following features:
            // DateTime CreatedAt { CreationTime; DenyUserEdit; }
            // Logging { AllProperties; }


            var createdAtProperty = new DateTimePropertyInfo
            {
                Name          = "CreatedAt",
                DataStructure = conceptInfo.Entity
            };

            newConcepts.Add(createdAtProperty);

            // CreationTime;
            newConcepts.Add(new CreationTimeInfo
            {
                Property = createdAtProperty
            });

            // DenyUserEdit;
            newConcepts.Add(new DenyUserEditPropertyInfo
            {
                Property = createdAtProperty
            });

            // Logging
            var loggingInfo = new EntityLoggingInfo {
                Entity = conceptInfo.Entity
            };

            newConcepts.Add(loggingInfo);
            newConcepts.Add(new AllPropertiesLoggingInfo {
                EntityLogging = loggingInfo
            });

            return(newConcepts);
        }