namespace BeWo.Data.Access
{
    public static class DAOFactory
    {
        private static AdoDAO _AdoDAO;

        private static GenericDAO _GenericDAO;

        private static SearchDAO _SearchDAO;

        private static UserDAO _UserDAO;

        public static AdoDAO AdoDAO
        {
            get
            {
                return _AdoDAO ?? (_AdoDAO = new AdoDAO());
            }
        }

        public static GenericDAO GenericDAO
        {
            get
            {
                return _GenericDAO ?? (_GenericDAO = new GenericDAO());
            }
        }

        public static SearchDAO SearchDAO
        {
            get
            {
                return _SearchDAO ?? (_SearchDAO = new SearchDAO());
            }
        }

        public static UserDAO UserDAO
        {
            get
            {
                return _UserDAO ?? (_UserDAO = new UserDAO());
            }
        }
    }
}