using Sarand.BusinessMgr.Net.Standard.Base.App; using Sarand.BusinessMgr.Net.Standard.Base.Core; using Sarand.BusinessMgr.Net.Standard.Base.Mgr; using Sarand.Net.Standard.Base.Bus; using Sarand.Net.Standard.Base.Interfaces; using Sarand.Net.Standard.Base.ItemOptions; using Sarand.Net.Standard.Base.UpdateLog; using Sarand.Net.Standard.Dbas.Base; using Sarand.Net.Standard.Dbas.ItemOptions; using System.Collections.Generic; namespace Sarand.BusinessMgr.Net.Standard.Dbas.Consoles { //======================================================================= public abstract class SbmItemOptionConsole_Dbas : SaItemOptionConsole_Dbas { //------------------------------------------------------------------- // Data members. private SbmInternals internals; //------------------------------------------------------------------- // Construction. protected SbmItemOptionConsole_Dbas(ISbmUserOrganisationContext userContext) : base(SbmGlobals.Application.GetBusMgrDatabase(userContext.SessionContext)) { UserContext = userContext; } protected override void Dispose(bool disposing) { if (disposing) { if (internals != null) internals.Dispose(); internals = null; } base.Dispose(disposing); } //------------------------------------------------------------------- // Properties. public ISbmUserOrganisationContext UserContext { get; set; } public SbmSessionContext SessionContext { get { return UserContext.SessionContext; } } private SbmInternals Internals { get { if (internals == null) { internals = new SbmInternals(UserContext); } return internals; } } public override short ItemOptionDataType { get { return (short)Sbm.ItemType.ItemOption; } } private SbmAccountMgr AccountMgr { get { return Internals.AccountMgr; } } // Consoles. public SaInterfaceConsole InterfaceConsole { get { return Internals.InterfaceConsole; } } public override SaUpdateLogConsole UpdateLogConsole { get { return Internals.UpdateLogConsole; } } //------------------------------------------------------------------- // I t e m O p t i o n D e f i n i t i o n s //------------------------------------------------------------------- public override List GetItemOptionDfnsForItem(ItemId itemId) { if (itemId.Type == (int)Sbm.ItemType.Association) return AccountMgr.GetOrganisationItemOptionDfns(itemId.Id); if (itemId.Type == (int)Sbm.ItemType.Interface) return InterfaceConsole.GetInterfaceItemOptionDfns(itemId.Id); return new List(); } //------------------------------------------------------------------- } //======================================================================= }