using BS.Shared;

namespace BeWo.Data.Entities
{
    public class AppUserFileAttachmentLock : BeWoEntityBase
    {
        public static string PropertyName_IsLocked = "IsLocked";

        public static string PropertyName_LockedBy = "LockedBy";

        public static string PropertyName_Type = "Type";

        private bool _IsLocked;

        private ApplicationUser _LockedBy;

        private TableID _ObjectTid;

        private FileAttachmentType _Type;

        public AppUserFileAttachmentLock()
        {
            this._Tid = TableID.AppUserFileAttachmentLock;
        }

        public virtual bool IsLocked
        {
            get
            {
                return this._IsLocked;
            }

            set
            {
                if (this.AreDifferent(this._IsLocked, value))
                {
                    this._IsLocked = value;
                }
            }
        }

        public virtual ApplicationUser LockedBy
        {
            get
            {
                return this._LockedBy;
            }

            set
            {
                if (this.AreDifferent(this._LockedBy, value))
                {
                    this._LockedBy = value;
                }
            }
        }

        public virtual TableID ObjectTid
        {
            get
            {
                return this._ObjectTid;
            }

            set
            {
                if (this._ObjectTid != value)
                {
                    this._ObjectTid = value;
                }
            }
        }

        public virtual FileAttachmentType Type
        {
            get
            {
                return this._Type;
            }

            set
            {
                if (this.AreDifferent(this._Type, value))
                {
                    this._Type = value;
                }
            }
        }
    }
}