using Sarand.Net.Standard.Base.App; using Sarand.Net.Standard.Base.Core; using Saxonite.Net.Standard.Base.Mgr; using Saxonite.Net.Standard.Base.App; using System; using System.Collections.Generic; using System.Text; namespace Saxonite.Net.Standard.Base.App { //======================================================================= public abstract partial class SaxSystem : SacsSystem { //------------------------------------------------------------------- // Data members. //------------------------------------------------------------------- // Protected Construction. protected SaxSystem() : base() { } //------------------------------------------------------------------- // Business components. //------------------------------------------------------------------- public abstract SaxReferenceMgr CreateReferenceMgr(SaxSessionContext sessionContext, SaxInternals internals); public abstract SaxAccountMgr CreateAccountMgr(SaxSessionContext sessionContext, SaxInternals internals); public abstract SaxItemDataMgr CreateItemDataMgr(SaxSessionContext sessionContext, SaxInternals internals); public abstract SaxActivityMgr CreateActivityMgr(SaxSessionContext sessionContext, SaxInternals internals); //------------------------------------------------------------------- // S y s t e m C o d e s //------------------------------------------------------------------- public static List GetCodesOfType(Sax.CodeType systemCode) { // Lists are cloned to avoid modifications to the internal static lists. switch (systemCode) { case Sax.CodeType.YesNo: return new List(yesNoCodes); case Sax.CodeType.SportParticipation: return new List(sportParticipationCodes); case Sax.CodeType.SportOfficiating: return new List(sportOfficiatingCodes); case Sax.CodeType.RegionType: return new List(regionTypeCodes); case Sax.CodeType.UserRole: return new List(userRoleCodes); case Sax.CodeType.Title: return new List(titleCodes); case Sax.CodeType.OrganisationType: return new List(organisationTypeCodes); case Sax.CodeType.OrganisationCategory: return new List(organisationCategoryCodes); case Sax.CodeType.OrganisationRole: return new List(organisationRoleCodes); case Sax.CodeType.OpportunityType: return new List(opportunityTypeCodes); case Sax.CodeType.DataItemType: return new List(dataItemTypeCodes); default: throw new NotSupportedException(nameof(SaxSystem) + ".GetCodesOfType Unexpected code type: " + systemCode.ToString()); } } //------------------------------------------------------------------- } //======================================================================= }