using InABox.Core; namespace Comal.Classes { public interface IBaseIntegrationSource { string? Code { get; set; } string? Description { get; set; } IEntityLink Entity { get; } IntegrationSourceType Source { get; set; } } public abstract class BaseIntegrationSource : Entity, IRemotable, IPersistent, IOneToMany, IBaseIntegrationSource where TEntity : Entity where TLink : IEntityLink { [NullEditor] [EntityRelationship(DeleteAction.Cascade)] [RequiredColumn] public TLink Entity { get; set; } IEntityLink IBaseIntegrationSource.Entity => Entity; [EditorSequence(1)] [EnumLookupEditor(typeof(IntegrationSourceType), Visible = Visible.Default, Width = 100)] public IntegrationSourceType Source { get; set; } [EditorSequence(2)] [TextBoxEditor] public string? Code { get; set; } [EditorSequence(3)] [TextBoxEditor] public string? Description{ get; set; } } }