using Sarand.Net.Standard.Base.Dbas; using Saxonite.Net.Standard.Base.Consoles; using Saxonite.Net.Standard.Base.App; using System; using System.Collections.Generic; using System.Text; namespace Saxonite.Net.Standard.Base.App { //======================================================================= public abstract class SaxApplication_Base { //------------------------------------------------------------------- // Protected construction. protected SaxApplication_Base() { } //------------------------------------------------------------------- // Properties. public abstract SaxSystem System { get; } public abstract SaxConsoleHelper ConsoleHelper { get; } public abstract ISacsDatabase GetCoreDatabase(SaxSessionContext sessionContext); public abstract IDatabaseInfo CreateCoreDbInfo(SaxSessionContext sessionContext); // Application instance. public abstract Sax.InstanceType InstanceType { get; } public bool IsLiveHost() { return InstanceType == Sax.InstanceType.Production; } public bool IsTestHost() { return InstanceType != Sax.InstanceType.Production; } public bool IsDevHost() { return InstanceType == Sax.InstanceType.Dev; } public abstract String EnvironmentName { get; } // Email configuration. public abstract SaxEmailConfig EmailConfig { get; } //------------------------------------------------------------------- } //======================================================================= }