public ProblemController( IMemberRepository memberRepository, IProblemService problemService, IProblemRepository problemRepository, ISessionRegistry sessionRegistry) : base(sessionRegistry) { _memberRepository = memberRepository; _problemService = problemService; _problemRepository = problemRepository; }
public AccountController( IMembershipService membershipService, IMemberRepository memberRepository, IAccountRelyingParty relyingParty, ISessionRegistry sessionRegistry) : base(sessionRegistry) { _membershipService = membershipService; _memberRepository = memberRepository; _relyingParty = relyingParty; }
public Session(ISessionRegistry registry, int callbackTimeout, int sessionTimeout, OnSessionTimeout onSessionTimeout, IMarshallingFactory marshallingFactory) { _callbackTimeout = callbackTimeout; _sessionTimeout = sessionTimeout; _onSessionTimeout = onSessionTimeout; _registry = registry; _id = Guid.NewGuid(); _session = registry.NewSession(this, marshallingFactory); _sessionTimer = new Timer(SessionTimeout, null, sessionTimeout, Timeout.Infinite); }
public LoginStage( LoginStageConfig config, ILogger <IStage <LoginStage, LoginStageUser> > logger, IServerRegistry serverRegistry, ISessionRegistry sessionRegistry, IMigrationRegistry migrationRegistry, IGuildService guildService, IPartyService partyService, IAccountRepository accountRepository, IAccountWorldRepository accountWorldRepository, ICharacterRepository characterRepository, ITickerManager timerManager, IPacketProcessor <LoginStage, LoginStageUser> processor, ITemplateRepository <WorldTemplate> worldTemplates, ITemplateRepository <ItemTemplate> itemTemplates ) : base( ServerStageType.Login, config, logger, serverRegistry, sessionRegistry, migrationRegistry, accountRepository, accountWorldRepository, characterRepository, timerManager, processor ) { Logger = logger; GuildService = guildService; PartyService = partyService; WorldTemplates = worldTemplates; ItemTemplates = itemTemplates; processor.Register(new CheckPasswordHandler(this)); processor.Register(new WorldInfoRequestHandler()); processor.Register(new SelectWorldHandler()); processor.Register(new CheckUserLimitHandler()); processor.Register(new SetGenderHandler()); processor.Register(new CheckPinCodeHandler()); processor.Register(new WorldRequestHandler()); processor.Register(new LogoutWorldHandler()); processor.Register(new CheckDuplicatedIDHandler()); processor.Register(new CreateNewCharacterHandler()); processor.Register(new DeleteCharacterHandler()); processor.Register(new ExceptionLogHandler(this)); processor.Register(new EnableSPWRequestHandler(false)); processor.Register(new CheckSPWRequestHandler(false)); }
public void Close(ISessionRegistry registry) { var wasClosed = Interlocked.Increment(ref _isClosed); if (wasClosed > 1) { return; } while (Interlocked.Read(ref _isCalling) > 0) { Thread.Sleep(1); } registry.CloseCallback(_session, _callbackQueue.GetData()); registry.CloseSession(_session); var response = _callbackQueue.FinishWaiting(); SendBye(response.Context, response.Packet); _callbackTimer = null; _sessionTimer.Change(Timeout.Infinite, Timeout.Infinite); }
protected BaseController(ISessionRegistry sessionRegistry) { _sessionRegistry = sessionRegistry; }
public FakeAccountRelyingParty(IMembershipService membershipService, ISessionRegistry sessionRegistry) { _membershipService = membershipService; _sessionRegistry = sessionRegistry; }
public AccountRelyingParty(IMembershipService membershipService, ISessionRegistry sessionRegistry) { _membershipService = membershipService; _sessionRegistry = sessionRegistry; _openid = new OpenIdRelyingParty(); }
public GameStage( GameStageConfig config, ILogger <IStage <GameStage, GameStageUser> > logger, IServerRegistry serverRegistry, ISessionRegistry sessionRegistry, IMigrationRegistry migrationRegistry, IDispatchService dispatchService, IInviteService inviteService, IGuildService guildService, IPartyService partyService, IAccountRepository accountRepository, IAccountWorldRepository accountWorldRepository, ICharacterRepository characterRepository, ITickerManager tickerManager, IPacketProcessor <GameStage, GameStageUser> packetProcessor, IScriptEngine scriptEngine, ICommandProcessor commandProcessor, ITemplateRepository <ItemTemplate> itemTemplates, ITemplateRepository <ItemStringTemplate> itemStringTemplates, ITemplateRepository <ItemOptionTemplate> itemOptionTemplates, ITemplateRepository <ItemSetTemplate> itemSetTemplates, ITemplateRepository <SkillTemplate> skillTemplates, ITemplateRepository <FieldTemplate> fieldTemplates, ITemplateRepository <FieldStringTemplate> fieldStringTemplates, ITemplateRepository <ContiMoveTemplate> contiMoveTemplates, ITemplateRepository <NPCTemplate> npcTemplates, ITemplateRepository <NPCShopTemplate> npcShopTemplates, ITemplateRepository <MobTemplate> mobTemplates ) : base( ServerStageType.Game, config, logger, serverRegistry, sessionRegistry, migrationRegistry, accountRepository, accountWorldRepository, characterRepository, tickerManager, packetProcessor ) { DispatchService = dispatchService; dispatchService .Subscribe(new DispatchSubscription { Server = ID }) .ForEachAwaitAsync(OnDispatch); InviteService = inviteService; GuildService = guildService; PartyService = partyService; guildService .Subscribe() .ForEachAwaitAsync(OnGuildUpdate); partyService .Subscribe() .ForEachAwaitAsync(OnPartyUpdate); ScriptEngine = scriptEngine; CommandProcessor = commandProcessor; ItemTemplates = itemTemplates; ItemStringTemplates = itemStringTemplates; ItemOptionTemplates = itemOptionTemplates; ItemSetTemplates = itemSetTemplates; SkillTemplates = skillTemplates; FieldTemplates = fieldTemplates; FieldStringTemplates = fieldStringTemplates; ContiMoveTemplates = contiMoveTemplates; NPCTemplates = npcTemplates; NPCShopTemplates = npcShopTemplates; MobTemplates = mobTemplates; FieldRepository = new FieldRepository(this, FieldTemplates, tickerManager); FieldSetRepository = null; // TODO; ContiMoveRepository = new ContiMoveRepository(this, ContiMoveTemplates, FieldRepository, tickerManager); packetProcessor.Register(new UserTransferChannelRequestHandler()); packetProcessor.Register(new UserMoveHandler()); packetProcessor.Register(new UserMeleeAttackHandler()); packetProcessor.Register(new UserShootAttackHandler()); packetProcessor.Register(new UserMagicAttackHandler()); packetProcessor.Register(new UserBodyAttackHandler()); packetProcessor.Register(new UserEmotionHandler()); packetProcessor.Register(new UserChatHandler()); packetProcessor.Register(new UserSelectNPCHandler()); packetProcessor.Register(new UserScriptMessageAnswerHandler()); packetProcessor.Register(new UserGatherItemRequestHandler()); packetProcessor.Register(new UserSortItemRequestHandler()); packetProcessor.Register(new UserChangeSlotPositionRequestHandler()); packetProcessor.Register(new UserCharacterInfoRequestHandler()); packetProcessor.Register(new UserSkillUpRequestHandler()); packetProcessor.Register(new GroupMessageHandler()); packetProcessor.Register(new WhisperHandler()); packetProcessor.Register(new PartyRequestHandler()); packetProcessor.Register(new PartyResultHandler()); packetProcessor.Register(new FuncKeyMappedModifiedHandler()); packetProcessor.Register(new QuickSlotKeyMappedModifiedHandler()); packetProcessor.Register(new MobMoveHandler()); packetProcessor.Register(new NPCMoveHandler()); packetProcessor.Register(new ContiStateHandler()); commandProcessor.Register(new HelpCommand(commandProcessor)); commandProcessor.Register(new AliasCommand(commandProcessor)); commandProcessor.Register(new DebugCommand()); commandProcessor.Register(new SetupCommand()); commandProcessor.Register(new StatCommand()); commandProcessor.Register(new SecondaryStatCommand()); commandProcessor.Register(new ForcedStatCommand()); commandProcessor.Register(new MobStatCommand()); commandProcessor.Register(new SkillRecordCommand()); commandProcessor.Register(new ItemCommand(ItemStringTemplates, ItemTemplates)); commandProcessor.Register(new FieldCommand(FieldRepository, FieldStringTemplates, FieldTemplates)); commandProcessor.Register(new ContiMoveCommand(ContiMoveRepository)); commandProcessor.Register(new NPCShopCommand(npcShopTemplates)); }