using Apewer;
using System;
using System.Collections.Generic;
using System.Reflection;
using System.Web;
using System.Windows;

namespace Apewer.Web
{

    /// <summary></summary>
    [Serializable]
    public abstract class ApiEntry
    {

        private string _name = TextUtility.EmptyString;
        private string _caption = TextUtility.EmptyString;
        private string _description = TextUtility.EmptyString;
        private bool _visible = false;
        private Assembly _assembly = null;
        private Type _type = null;

        /// <summary></summary>
        public virtual string Name
        {
            get { return _name; }
            set { _name = value ?? TextUtility.EmptyString; }
        }

        /// <summary></summary>
        public virtual string Caption
        {
            get { return _caption; }
            set { _caption = value ?? TextUtility.EmptyString; }
        }

        /// <summary></summary>
        public virtual string Description
        {
            get { return _description; }
            set { _description = value ?? TextUtility.EmptyString; }
        }

        /// <summary></summary>
        public virtual bool Visible
        {
            get { return _visible; }
            set { _visible = value; }
        }

        /// <summary></summary>
        public virtual Assembly Assembly
        {
            get { return _assembly; }
            set { _assembly = value; }
        }

        /// <summary></summary>
        public virtual Type Type
        {
            get { return _type; }
            set { _type = value; }
        }

    }

}