public FeedAsset( Type feedType, EntityTypeAsset entityType, ExternalSystemAsset sourceSystem, IEnumerable <FeedAttribute> attributes) { this.FeedType = feedType; this.EntityType = entityType; this.SourceSystem = sourceSystem; this.Attributes = attributes; }
private void DeployExternalSystemEntityTypes( IDeploymentContext context, ExternalSystemAsset externalSystem) { foreach (EntityTypeAsset entityType in externalSystem.EntityTypes) { context.EntityType( entityType.Id, externalSystem.Id, entityType.Name, entityType.EntityType, entityType.SinkType, entityType.Attribute.SuppressCacheFeed ? null : entityType.CacheFeedType, entityType.Attribute.IsMutable, entityType.Attribute.IsDuplicable); this.SetEntityTypeParameters(context, entityType); this.SetEntityTypeSharedSourceSystemIdentifiers(context, entityType); } }
private void SetExternalSystemParameters( IDeploymentContext context, ExternalSystemAsset externalSystem) { if (externalSystem.Attribute.OrphanMappingBehavior != 0) { context.DestinationSystemOrphanMappingBehavior( externalSystem.Id, externalSystem.Attribute.OrphanMappingBehavior); } if (externalSystem.Attribute.GarbageCollectionBehavior != 0) { context.DestinationSystemGarbageCollectionBehavior( externalSystem.Id, externalSystem.Attribute.GarbageCollectionBehavior); } if ((externalSystem.SourceSystemParametersAttribute?.OrphanMappingBehavior) .GetValueOrDefault(0) != 0) { context.SourceSystemOrphanMappingBehavior( externalSystem.Id, externalSystem.SourceSystemParametersAttribute.OrphanMappingBehavior); } }