81 lines
3.0 KiB
C#
81 lines
3.0 KiB
C#
using Sarand.Net.Standard.Base.App;
|
|
using Sarand.Net.Standard.Base.Bus;
|
|
using Sarand.Net.Standard.Base.Core;
|
|
using Sarand.Net.Standard.Base.Dbas;
|
|
using Saxonite.Net.Standard.Base.App;
|
|
using Saxonite.Net.Standard.Base.Consoles;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Text;
|
|
|
|
namespace Saxonite.Net.Standard.Base.Mgr
|
|
{
|
|
//=======================================================================
|
|
public class SaxItemMgr : SacsItemMgr
|
|
{
|
|
//-------------------------------------------------------------------
|
|
// Data members.
|
|
private class DataMembers
|
|
{
|
|
public SaxInternals internals;
|
|
public bool internalsCreatedHere = false;
|
|
}
|
|
private DataMembers data = new DataMembers();
|
|
|
|
//-------------------------------------------------------------------
|
|
protected SaxItemMgr(SaxSessionContext sessionContext, SaxInternals internals)
|
|
{
|
|
data.internals = internals;
|
|
SessionContext = sessionContext;
|
|
}
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
if (disposing)
|
|
{
|
|
if (data.internals != null && data.internalsCreatedHere)
|
|
data.internals.Dispose();
|
|
}
|
|
base.Dispose(disposing);
|
|
}
|
|
|
|
//-------------------------------------------------------------------
|
|
// Properties.
|
|
public Boolean DebugMode { get { return SacsSystem.DebugMode; } }
|
|
public SaxSessionContext SessionContext { get; }
|
|
public ISacsDatabase CoreDatabase { get { return Internals.CoreDatabase; } }
|
|
public IDatabaseInfo CoreDbInfo { get { return Internals.CreateCoreDbInfo(); } }
|
|
// Business components.
|
|
protected SaxInternals Internals
|
|
{
|
|
get
|
|
{
|
|
if (data.internals == null)
|
|
{
|
|
data.internals = new SaxInternals(SessionContext);
|
|
data.internalsCreatedHere = true;
|
|
}
|
|
return data.internals;
|
|
}
|
|
}
|
|
// Consoles.
|
|
public SaxDataCacheConsole DataCacheConsole { get { return Internals.DataCacheConsole; } }
|
|
public SaxActivityConsole ActivityConsole { get { return Internals.ActivityConsole; } }
|
|
// Managers.
|
|
public SaxReferenceMgr ReferenceMgr { get { return Internals.ReferenceMgr; } }
|
|
public SaxAccountMgr AccountMgr { get { return Internals.AccountMgr; } }
|
|
public SaxActivityMgr ActivityMgr { get { return Internals.ActivityMgr; } }
|
|
public SaxItemDataMgr ItemDataMgr { get { return Internals.ItemDataMgr; } }
|
|
// Application codes.
|
|
public List<TypeCodeDesc> RegionTypes { get { return Internals.RegionTypes; } }
|
|
public List<TypeCodeDesc> UserRoles { get { return Internals.UserRoles; } }
|
|
public List<TypeCodeDesc> OrganisationTypes { get { return Internals.OrganisationTypes; } }
|
|
public List<TypeCodeDesc> OrganisationCategories { get { return Internals.OrganisationCategories; } }
|
|
public List<TypeCodeDesc> OrganisationRoles { get { return Internals.OrganisationRoles; } }
|
|
public List<TypeCodeDesc> OpportunityTypes { get { return Internals.OpportunityTypes; } }
|
|
public List<TypeCodeDesc> DataItemTypes { get { return Internals.DataItemTypes; } }
|
|
|
|
//-------------------------------------------------------------------
|
|
}
|
|
//=======================================================================
|
|
}
|