49 lines
1.7 KiB
C#
49 lines
1.7 KiB
C#
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;
|
|
using Sarand.Net.Standard.Base.Core;
|
|
|
|
namespace Saxonite.Net.Standard.Base.App
|
|
{
|
|
//=======================================================================
|
|
public abstract class SaxApplication_Base : SacsDisposable
|
|
{
|
|
//-------------------------------------------------------------------
|
|
// Protected construction.
|
|
protected SaxApplication_Base()
|
|
{
|
|
App = this;
|
|
}
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
if (disposing)
|
|
{
|
|
App = null;
|
|
}
|
|
}
|
|
|
|
//-------------------------------------------------------------------
|
|
// Globals.
|
|
public static SaxApplication_Base App { get; private set; }
|
|
public abstract SaxSystem System { get; }
|
|
public abstract SaxConsoleHelper ConsoleHelper { get; }
|
|
// Database.
|
|
public abstract ISacsDatabase GetDatabase(SaxSessionContext sessionContext, Sax.Database databaseType);
|
|
public abstract IDatabaseInfo CreateDbInfo(SaxSessionContext sessionContext, Sax.Database databaseType);
|
|
// Application instance.
|
|
public abstract Sax.InstanceType InstanceType { get; }
|
|
public bool IsLiveHost() { return InstanceType == Sax.InstanceType.Prod; }
|
|
public bool IsTestHost() { return InstanceType != Sax.InstanceType.Prod; }
|
|
public bool IsDevHost() { return InstanceType == Sax.InstanceType.Dev; }
|
|
public abstract String EnvironmentName { get; }
|
|
// Email configuration.
|
|
public abstract SaxEmailConfig EmailConfig { get; }
|
|
|
|
//-------------------------------------------------------------------
|
|
}
|
|
//=======================================================================
|
|
}
|