Exemplo n.º 1
0
        private void InitializeData(string version, ILoggerFactory loggerFactory, IPersistenceContextProvider contextProvider)
        {
            var serviceContainer = new ServiceContainer();

            serviceContainer.AddService(typeof(ILoggerFactory), loggerFactory);
            serviceContainer.AddService(typeof(IPersistenceContextProvider), contextProvider);

            var plugInManager = new PlugInManager(null, loggerFactory, serviceContainer);

            plugInManager.DiscoverAndRegisterPlugInsOf <IDataInitializationPlugIn>();
            var initialization = plugInManager.GetStrategy <IDataInitializationPlugIn>(version) ?? throw new Exception("Data initialization plugin not found");

            initialization.CreateInitialData(3, true);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Loads the member names from the database.
        /// </summary>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        public void LoadMemberNames(IPersistenceContextProvider persistenceContextProvider)
        {
            var memberNames = this.DatabaseContext.GetMemberNames(this.Guild.Id);

            if (memberNames != null)
            {
                foreach (var member in this.Members.Where(m => m.Value.PlayerName == null))
                {
                    if (memberNames.TryGetValue(member.Key, out string name))
                    {
                        member.Value.PlayerName = name;
                    }
                }
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="AdminPanel"/> class.
        /// </summary>
        /// <param name="port">The port.</param>
        /// <param name="servers">All manageable servers, including game servers, connect servers etc.</param>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        public AdminPanel(ushort port, IList <IManageableServer> servers, IPersistenceContextProvider persistenceContextProvider)
        {
            Startup.Bootstrapper = new MyBootstrapper(servers, persistenceContextProvider);
            var startOptions = new StartOptions($"http://+:{port}")
            {
                ServerFactory = typeof(OwinHttpListener).Namespace,
                AppStartup    = typeof(Startup).AssemblyQualifiedName
            };

            WorldObserverHub.Servers = servers;

            // you might need to allow it first with netsh:
            // netsh http add urlacl http://+:1234/ user=[Username]
            this.webApp = WebApp.Start <Startup>(startOptions);
        }
Exemplo n.º 4
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GameContext"/> class.
 /// </summary>
 /// <param name="configuration">The configuration.</param>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 public GameContext(GameConfiguration configuration, IPersistenceContextProvider persistenceContextProvider)
 {
     try
     {
         this.Configuration = configuration;
         this.PersistenceContextProvider = persistenceContextProvider;
         this.MapList      = new Dictionary <ushort, GameMap>();
         this.recoverTimer = new Timer(this.RecoverTimerElapsed, null, this.Configuration.RecoveryInterval, this.Configuration.RecoveryInterval);
     }
     catch (Exception ex)
     {
         Log.Error(ex);
         throw;
     }
 }
Exemplo n.º 5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GameServerContext" /> class.
 /// </summary>
 /// <param name="gameServerDefinition">The game server definition.</param>
 /// <param name="guildServer">The guild server.</param>
 /// <param name="loginServer">The login server.</param>
 /// <param name="friendServer">The friend server.</param>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 /// <param name="mapInitializer">The map initializer.</param>
 public GameServerContext(
     GameServerDefinition gameServerDefinition,
     IGuildServer guildServer,
     ILoginServer loginServer,
     IFriendServer friendServer,
     IPersistenceContextProvider persistenceContextProvider,
     IMapInitializer mapInitializer)
     : base(gameServerDefinition.GameConfiguration, persistenceContextProvider, mapInitializer)
 {
     this.Id                  = gameServerDefinition.ServerID;
     this.GuildServer         = guildServer;
     this.LoginServer         = loginServer;
     this.FriendServer        = friendServer;
     this.ServerConfiguration = gameServerDefinition.ServerConfiguration;
 }
Exemplo n.º 6
0
        /// <summary>
        /// Initializes a new instance of the <see cref="GameServerContext"/> class.
        /// </summary>
        /// <param name="gameServerDefinition">The game server definition.</param>
        /// <param name="guildServer">The guild server.</param>
        /// <param name="loginServer">The login server.</param>
        /// <param name="friendServer">The friend server.</param>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        public GameServerContext(
            GameServerDefinition gameServerDefinition,
            IGuildServer guildServer,
            ILoginServer loginServer,
            IFriendServer friendServer,
            IPersistenceContextProvider persistenceContextProvider)
            : base(gameServerDefinition.GameConfiguration, persistenceContextProvider)
        {
            this.Id                  = gameServerDefinition.ServerID;
            this.GuildServer         = guildServer;
            this.LoginServer         = loginServer;
            this.FriendServer        = friendServer;
            this.ServerConfiguration = gameServerDefinition.ServerConfiguration;

            this.PacketHandlers = gameServerDefinition.ServerConfiguration.SupportedPacketHandlers.Select(m => new ConfigurableMainPacketHandler(m, this)).ToArray <IMainPacketHandler>();
            this.GuildCache     = new GuildCache(this, new GuildInfoSerializer());
        }
Exemplo n.º 7
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GameServerContext" /> class.
 /// </summary>
 /// <param name="gameServerDefinition">The game server definition.</param>
 /// <param name="guildServer">The guild server.</param>
 /// <param name="loginServer">The login server.</param>
 /// <param name="friendServer">The friend server.</param>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 /// <param name="mapInitializer">The map initializer.</param>
 /// <param name="loggerFactory">The logger factory.</param>
 /// <param name="plugInManager">The plug in manager.</param>
 public GameServerContext(
     GameServerDefinition gameServerDefinition,
     IGuildServer guildServer,
     ILoginServer loginServer,
     IFriendServer friendServer,
     IPersistenceContextProvider persistenceContextProvider,
     IMapInitializer mapInitializer,
     ILoggerFactory loggerFactory,
     PlugInManager plugInManager)
     : base(gameServerDefinition.GameConfiguration ?? throw new InvalidOperationException("GameServerDefinition requires a GameConfiguration"), persistenceContextProvider, mapInitializer, loggerFactory, plugInManager)
 {
     this.gameServerDefinition = gameServerDefinition;
     this.Id                  = gameServerDefinition.ServerID;
     this.GuildServer         = guildServer;
     this.LoginServer         = loginServer;
     this.FriendServer        = friendServer;
     this.ServerConfiguration = gameServerDefinition.ServerConfiguration ?? throw new InvalidOperationException("GameServerDefinition requires a ServerConfiguration");
 }
Exemplo n.º 8
0
        /// <summary>
        /// Initializes a new instance of the <see cref="GameServerContext" /> class.
        /// </summary>
        /// <param name="gameServerDefinition">The game server definition.</param>
        /// <param name="guildServer">The guild server.</param>
        /// <param name="loginServer">The login server.</param>
        /// <param name="friendServer">The friend server.</param>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        /// <param name="stateObserver">The state observer.</param>
        /// <param name="mapInitializer">The map initializer.</param>
        public GameServerContext(
            GameServerDefinition gameServerDefinition,
            IGuildServer guildServer,
            ILoginServer loginServer,
            IFriendServer friendServer,
            IPersistenceContextProvider persistenceContextProvider,
            IServerStateObserver stateObserver,
            IMapInitializer mapInitializer)
            : base(gameServerDefinition.GameConfiguration, persistenceContextProvider, new ServerStateToGameStateObserverAdapter(stateObserver, gameServerDefinition.ServerID), mapInitializer)
        {
            this.Id                  = gameServerDefinition.ServerID;
            this.GuildServer         = guildServer;
            this.LoginServer         = loginServer;
            this.FriendServer        = friendServer;
            this.ServerConfiguration = gameServerDefinition.ServerConfiguration;

            this.PacketHandlers = gameServerDefinition.ServerConfiguration.SupportedPacketHandlers.Select(m => new ConfigurableMainPacketHandler(m, this)).ToArray <IMainPacketHandler>();
        }
        private void TestDataInitialization(IPersistenceContextProvider contextProvider)
        {
            var initialization = new DataInitialization(contextProvider, new NullLoggerFactory());

            initialization.CreateInitialData();

            // Loading game configuration
            using var context = contextProvider.CreateNewConfigurationContext();
            var gameConfiguraton = context.Get <DataModel.Configuration.GameConfiguration>().FirstOrDefault();

            Assert.That(gameConfiguraton, Is.Not.Null);

            // Testing loading of an account
            using var accountContext = contextProvider.CreateNewPlayerContext(gameConfiguraton);
            var account1 = accountContext.GetAccountByLoginName("test1", "test1");

            Assert.That(account1, Is.Not.Null);
            Assert.That(account1.LoginName, Is.EqualTo("test1"));
        }
Exemplo n.º 10
0
        /// <summary>
        /// Initializes a new instance of the <see cref="GameContext" /> class.
        /// </summary>
        /// <param name="configuration">The configuration.</param>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        /// <param name="stateObserver">The state observer.</param>
        /// <param name="mapInitializer">The map initializer.</param>
        public GameContext(GameConfiguration configuration, IPersistenceContextProvider persistenceContextProvider, IGameStateObserver stateObserver, IMapInitializer mapInitializer)
        {
            try
            {
                this.Configuration = configuration;
                this.PersistenceContextProvider = persistenceContextProvider;
                this.PlugInManager = new PlugInManager(configuration.PlugInConfigurations);
                this.mapList       = new Dictionary <ushort, GameMap>();
                this.recoverTimer  = new Timer(this.RecoverTimerElapsed, null, this.Configuration.RecoveryInterval, this.Configuration.RecoveryInterval);
            }
            catch (Exception ex)
            {
                Log.Error(ex);
                throw;
            }

            this.stateObserver  = stateObserver;
            this.mapInitializer = mapInitializer;
        }
Exemplo n.º 11
0
 /// <summary>
 /// Initializes a new instance of the <see cref="GameServerContainer" /> class.
 /// </summary>
 /// <param name="logger">The logger.</param>
 /// <param name="servers">The servers.</param>
 /// <param name="gameServers">The game servers.</param>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 /// <param name="connectServerContainer">The connect server container.</param>
 /// <param name="guildServer">The guild server.</param>
 /// <param name="loginServer">The login server.</param>
 /// <param name="friendServer">The friend server.</param>
 /// <param name="ipResolver">The ip resolver.</param>
 public GameServerContainer(
     ILogger <GameServerContainer> logger,
     IList <IManageableServer> servers,
     IDictionary <int, IGameServer> gameServers,
     IPersistenceContextProvider persistenceContextProvider,
     ConnectServerContainer connectServerContainer,
     IGuildServer guildServer,
     ILoginServer loginServer,
     IFriendServer friendServer,
     IIpAddressResolver ipResolver)
 {
     this.logger      = logger;
     this.servers     = servers;
     this.gameServers = gameServers;
     this.persistenceContextProvider = persistenceContextProvider;
     this.connectServerContainer     = connectServerContainer;
     this.guildServer  = guildServer;
     this.loginServer  = loginServer;
     this.friendServer = friendServer;
     this.ipResolver   = ipResolver;
 }
Exemplo n.º 12
0
        /// <summary>
        /// Initializes a new instance of the <see cref="GameContext" /> class.
        /// </summary>
        /// <param name="configuration">The configuration.</param>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        /// <param name="mapInitializer">The map initializer.</param>
        public GameContext(GameConfiguration configuration, IPersistenceContextProvider persistenceContextProvider, IMapInitializer mapInitializer)
        {
            try
            {
                this.Configuration = configuration;
                this.PersistenceContextProvider = persistenceContextProvider;
                this.PlugInManager = new PlugInManager(configuration.PlugInConfigurations);
                this.mapList       = new Dictionary <ushort, GameMap>();
                this.recoverTimer  = new Timer(this.RecoverTimerElapsed, null, this.Configuration.RecoveryInterval, this.Configuration.RecoveryInterval);

                this.tasksTimer     = new Timer(this.ExecutePeriodicTasks, null, 1000, 1000);
                this.FeaturePlugIns = new FeaturePlugInContainer(this.PlugInManager);
            }
            catch (Exception ex)
            {
                Log.Error(ex);
                throw;
            }

            this.mapInitializer = mapInitializer;
        }
Exemplo n.º 13
0
        /// <summary>Initializes a new instance of the <see cref="GameServer" /> class with default implementations.</summary>
        public static GameServer Create(
            Configuration config,
            IPersistenceContextProvider persistenceContextProvider,
            IGameServerRegistrar gameServerRegistrar,
            IAccountLoginService accountLoginService)
        {
            var gameContext = new GameContext(persistenceContextProvider, new LoginServiceAdapter(accountLoginService));

            var clientController       = new ClientController();
            var clientProtocolResolver = new ClientProtocolResolver(config, gameContext);

            var clientListener = new GameServerTcpListener(config, clientController, clientProtocolResolver, gameServerRegistrar);

            clientListener.AddFilter(new MaxConnectionsFilter(config.MaxConnections));
            clientListener.AddFilter(new MaxConnectionsPerIpFilter(config.MaxConnectionsPerIp));

            var gameServer = new GameServer(config, clientController, gameContext);

            gameServer.AddListener(clientListener);
            return(gameServer);
        }
Exemplo n.º 14
0
        /// <summary>
        /// Initializes a new instance of the <see cref="GameServer"/> class.
        /// </summary>
        /// <param name="gameServerDefinition">The game server definition.</param>
        /// <param name="guildServer">The guild server.</param>
        /// <param name="loginServer">The login server.</param>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        /// <param name="friendServer">The friend server.</param>
        public GameServer(
            GameServerDefinition gameServerDefinition,
            IGuildServer guildServer,
            ILoginServer loginServer,
            IPersistenceContextProvider persistenceContextProvider,
            IFriendServer friendServer)
        {
            this.Id          = gameServerDefinition.ServerID;
            this.Description = gameServerDefinition.Description;

            try
            {
                this.gameContext = new GameServerContext(gameServerDefinition, guildServer, loginServer, friendServer, persistenceContextProvider);
            }
            catch (Exception ex)
            {
                Logger.Fatal(ex);
                throw;
            }

            this.ServerInfo = new GameServerInfoAdapter(this, gameServerDefinition.ServerConfiguration);
        }
Exemplo n.º 15
0
        /// <summary>
        /// Initializes a new instance of the <see cref="AdminPanel"/> class.
        /// </summary>
        /// <param name="port">The port.</param>
        /// <param name="servers">All manageable servers, including game servers, connect servers etc.</param>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        public AdminPanel(ushort port, IList <IManageableServer> servers, IPersistenceContextProvider persistenceContextProvider)
        {
            Startup.Bootstrapper     = new MyBootstrapper(servers, persistenceContextProvider);
            WorldObserverHub.Servers = servers;
            ServerListHub.Servers    = servers;

            // you might need to allow it first with netsh:
            // netsh http add urlacl http://+:1234/ user=[Username]
            var host = new WebHostBuilder()
                       .UseContentRoot(Directory.GetCurrentDirectory())
                       .UseKestrel(options =>
            {
                // Default port
                options.ListenAnyIP(port);
            })
                       .UseStartup <Startup>()
                       .Build();

            host.Start();
            SignalRGameServerStateObserver.Services = host.Services;
            SignalRMapStateObserver.Services        = host.Services;
        }
Exemplo n.º 16
0
        /// <summary>
        /// Initializes a new instance of the <see cref="GameContext" /> class.
        /// </summary>
        /// <param name="configuration">The configuration.</param>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        /// <param name="mapInitializer">The map initializer.</param>
        /// <param name="loggerFactory">The logger factory.</param>
        /// <param name="plugInManager">The plug in manager.</param>
        public GameContext(GameConfiguration configuration, IPersistenceContextProvider persistenceContextProvider, IMapInitializer mapInitializer, ILoggerFactory loggerFactory, PlugInManager plugInManager)
        {
            try
            {
                this.Configuration = configuration;
                this.PersistenceContextProvider = persistenceContextProvider;
                this.PlugInManager      = plugInManager;
                this.mapInitializer     = mapInitializer;
                this.LoggerFactory      = loggerFactory;
                this.ItemPowerUpFactory = new ItemPowerUpFactory(loggerFactory.CreateLogger <ItemPowerUpFactory>());
                this.mapList            = new Dictionary <ushort, GameMap>();
                this.recoverTimer       = new Timer(this.RecoverTimerElapsed, null, this.Configuration.RecoveryInterval, this.Configuration.RecoveryInterval);

                this.tasksTimer     = new Timer(this.ExecutePeriodicTasks, null, 1000, 1000);
                this.FeaturePlugIns = new FeaturePlugInContainer(this.PlugInManager);
            }
            catch (Exception ex)
            {
                loggerFactory.CreateLogger <GameContext>().LogError(ex, "Unexpected error in constructor of GameContext.");
                throw;
            }
        }
Exemplo n.º 17
0
        /// <summary>
        /// Initializes a new instance of the <see cref="DataModule"/> class.
        /// </summary>
        /// <param name="persistenceContextProvider">The persistence context provider.</param>
        public DataModule(IPersistenceContextProvider persistenceContextProvider)
            : base("/data")
        {
            this.persistenceContextProvider = persistenceContextProvider;
            this.registeredRepositoryTypes  = new List <string>();
            this.Get("/registered", _ => this.Response.AsJson(this.registeredRepositoryTypes));
            this.Get("/gameconfiguration.json", _ =>
            {
                using (var context = this.persistenceContextProvider.CreateNewContext())
                {
                    var firstConfiguration = context.Get <GameConfiguration>().First();
                    if (firstConfiguration is IConvertibleTo <Persistence.BasicModel.GameConfiguration> convertibleTo)
                    {
                        return(convertibleTo.Convert().ToJson());
                    }

                    return(null);
                }
            });
            this.Get("/{id:guid}/gameconfiguration.json", parameters =>
            {
                using (var context = this.persistenceContextProvider.CreateNewContext())
                {
                    var configuration = context.GetById <GameConfiguration>((Guid)parameters.id);
                    if (configuration is IConvertibleTo <Persistence.BasicModel.GameConfiguration> convertibleTo)
                    {
                        return(convertibleTo.Convert().ToJson());
                    }

                    return(null);
                }
            });

            this.RegisterType <GameMapDefinition>();
            //// TODO: add authentification
        }
Exemplo n.º 18
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ItemModifyConsumeHandler"/> class.
 /// </summary>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 protected ItemModifyConsumeHandler(IPersistenceContextProvider persistenceContextProvider)
 {
     this.PersistenceContextProvider = persistenceContextProvider;
 }
Exemplo n.º 19
0
 /// <summary>
 /// Initializes a new instance of the <see cref="AccountController"/> class.
 /// </summary>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 public AccountController(IPersistenceContextProvider persistenceContextProvider)
 {
     this.persistenceContextProvider = persistenceContextProvider;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="PersistentObjectsLookupController"/> class.
 /// </summary>
 /// <param name="contextProvider">The persistence context provider.</param>
 public PersistentObjectsLookupController(IPersistenceContextProvider contextProvider)
 {
     this.contextProvider = contextProvider;
 }
Exemplo n.º 21
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ConnectServerContainer"/> class.
 /// </summary>
 /// <param name="servers">The servers.</param>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 /// <param name="logger">The logger.</param>
 public ConnectServerContainer(IList <IManageableServer> servers, IPersistenceContextProvider persistenceContextProvider, ILogger <ConnectServerContainer> logger)
 {
     this.servers = servers;
     this.persistenceContextProvider = persistenceContextProvider;
     this.logger = logger;
 }
Exemplo n.º 22
0
 /// <summary>
 /// Initializes a new instance of the <see cref="ItemUpgradeConsumeHandler"/> class.
 /// </summary>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 /// <param name="configuration">The configuration.</param>
 internal ItemUpgradeConsumeHandler(IPersistenceContextProvider persistenceContextProvider, ItemUpgradeConfiguration configuration)
     : base(persistenceContextProvider)
 {
     this.Configuration = configuration;
 }
Exemplo n.º 23
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Program"/> class.
        /// Constructor for the main entry program.
        /// </summary>
        /// <param name="args">The command line args.</param>
        public Program(string[] args)
        {
            if (args.Contains("-demo"))
            {
                this.persistenceContextProvider = new InMemoryPersistenceContextProvider();
                var initialization = new DataInitialization(this.persistenceContextProvider);
                initialization.CreateInitialData();
            }
            else
            {
                this.persistenceContextProvider = this.PrepareRepositoryManager(args.Contains("-reinit"));
            }

            Log.Info("Start initializing sub-components");
            var signalRServerObserver = new SignalRGameServerStateObserver();
            var persistenceContext    = this.persistenceContextProvider.CreateNewConfigurationContext();
            var loginServer           = new LoginServer();
            var chatServer            = new ChatServerListener(55980, signalRServerObserver);

            this.servers.Add(chatServer);
            var guildServer   = new GuildServer(this.gameServers, this.persistenceContextProvider);
            var friendServer  = new FriendServer(this.gameServers, chatServer, this.persistenceContextProvider);
            var connectServer = ConnectServerFactory.CreateConnectServer(signalRServerObserver);

            this.servers.Add(connectServer);
            Log.Info("Start initializing game servers");
            Stopwatch stopwatch = new Stopwatch();

            stopwatch.Start();
            foreach (var gameServerDefinition in persistenceContext.Get <DataModel.Configuration.GameServerDefinition>())
            {
                using (ThreadContext.Stacks["gameserver"].Push(gameServerDefinition.ServerID.ToString()))
                {
                    var gameServer = new GameServer(gameServerDefinition, guildServer, loginServer, this.persistenceContextProvider, friendServer, signalRServerObserver);
                    foreach (var mainPacketHandler in gameServer.Context.PacketHandlers.Take(1))
                    {
                        // At the moment only one main packet handler should be used.
                        // A TCP port can only be used for one TCP listener, so we have to introduce something to pair ports with main packets handlers.
                        gameServer.AddListener(new DefaultTcpGameServerListener(gameServerDefinition.NetworkPort, gameServer.ServerInfo, gameServer.Context, connectServer, mainPacketHandler));
                    }

                    this.servers.Add(gameServer);
                    this.gameServers.Add(gameServer.Id, gameServer);
                    Log.InfoFormat("Game Server {0} - [{1}] initialized", gameServer.Id, gameServer.Description);
                }
            }

            stopwatch.Stop();
            Log.Info($"All game servers initialized, elapsed time: {stopwatch.Elapsed}");
            Log.Info("Start initializing admin panel");

            this.adminPanel = new AdminPanel(1234, this.servers, this.persistenceContextProvider);
            Log.Info("Admin panel initialized");

            if (args.Contains("-autostart"))
            {
                chatServer.Start();
                foreach (var gameServer in this.gameServers.Values)
                {
                    gameServer.Start();
                }

                connectServer.Start();
            }
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="AttributeDictionaryConverter"/> class.
 /// </summary>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 public AttributeDictionaryConverter(IPersistenceContextProvider persistenceContextProvider)
 {
     this.persistenceContextProvider = persistenceContextProvider;
 }
Exemplo n.º 25
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DataInitializationBase" /> class.
 /// </summary>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 /// <param name="loggerFactory">The logger factory.</param>
 protected DataInitializationBase(IPersistenceContextProvider persistenceContextProvider, ILoggerFactory loggerFactory)
 {
     this.persistenceContextProvider = persistenceContextProvider;
     this.loggerFactory = loggerFactory;
 }
Exemplo n.º 26
0
 /// <summary>
 /// Initializes a new instance of the <see cref="LifeJewelConsumeHandler" /> class.
 /// </summary>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 public LifeJewelConsumeHandler(IPersistenceContextProvider persistenceContextProvider)
     : base(persistenceContextProvider, new ItemUpgradeConfiguration(ItemOptionTypes.Option, true, true, 0.5, ItemFailResult.DecreaseOptionByOneOrRemove))
 {
 }
Exemplo n.º 27
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BlessJewelConsumeHandler"/> class.
 /// </summary>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 public BlessJewelConsumeHandler(IPersistenceContextProvider persistenceContextProvider)
     : base(persistenceContextProvider)
 {
 }
Exemplo n.º 28
0
 /// <summary>
 /// Initializes a new instance of the <see cref="PlugInController"/> class.
 /// </summary>
 /// <param name="persistenceContextProvider">The persistence context provider.</param>
 public PlugInController(IPersistenceContextProvider persistenceContextProvider)
 {
     this.persistenceContextProvider = persistenceContextProvider;
 }
Exemplo n.º 29
0
        private static LoginServer.LoginServer CreateLoginServer(IPersistenceContextProvider persistenceContextProvider)
        {
            var config = new LoginServer.Configuration();

            return(LoginServer.LoginServerFactory.Create(config, persistenceContextProvider));
        }
Exemplo n.º 30
0
 /// <summary>Initializes a new instance of the <see cref="LoginServer" /> class with default implementations.</summary>
 public static LoginServer Create(Configuration config, IPersistenceContextProvider persistenceContextProvider) =>
 new LoginServer(config, persistenceContextProvider);