1
0
mirror of https://github.com/Rogiel/l2jserver2 synced 2025-12-06 07:32:46 +00:00

Implements XML based service descriptor allowing to switch services

This commit is contained in:
2011-12-28 00:35:35 -02:00
parent 228f481e86
commit 976cfaf4e0
53 changed files with 1270 additions and 1171 deletions

View File

@@ -0,0 +1,125 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- This file should be renamed as "services.xml" and configured according
to your needs. Since "services.xml" has been added to ".gitignore", this
means that your password won't be sent to the repository when you make a
commit. -->
<!-- IMPORTANT NOTE: Do not forget to edit "distribution/services.xml" with
new services definitions. Only that file is included in the server's binary
distributions -->
<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!-- DAO Module configuration -->
<dao module="com.l2jserver.service.database.JDBCDAOModule" />
<!-- JDBC database service -->
<service interface="com.l2jserver.service.database.DatabaseService"
implementation="com.l2jserver.service.database.GameServerJDBCDatabaseService">
<!-- Whether the database schema should be updated at startup -->
<!-- Slows down a bit at start time, but guarantees consistency -->
<!-- Enabled for development servers -->
<schema automaticUpdate="true" />
<!-- Defines the JDBC connection URL -->
<connection url="jdbc:mysql://localhost/l2jserver2">
<!-- The database authentication (username and password) -->
<authentication username="l2jserver2" password="changeme" />
<!-- Specifies the database engine to use - will load JDBC driver and
SQL templates -->
<engine class="com.l2jserver.service.database.sql.MySQLDatabaseEngine" />
<!-- Defines the database connection pool limits -->
<pool max-active="20" max-idle="20" min-idle="5" />
</connection>
</service>
<!-- Virtual file system service -->
<service interface="com.l2jserver.service.core.vfs.VFSService"
implementation="com.l2jserver.service.core.vfs.TrueZipVFSService">
<!-- Configures the root of the server data. Where all the files are placed. -->
<fileSystem root="./">
<!-- The "data file system" location. There, templates, static data and
several other important files are located. This can be a zip or a directory. -->
<!-- The "data file system" is relative to the file system root. -->
<data root="data/" />
</fileSystem>
</service>
<!-- Template service configuration -->
<service interface="com.l2jserver.service.game.template.TemplateService"
implementation="com.l2jserver.service.game.template.XMLTemplateService">
<!-- The root where template data is located. Relative to the "data file
system" -->
<templates root="template/" />
</service>
<!-- Network service -->
<service interface="com.l2jserver.service.network.NetworkService"
implementation="com.l2jserver.service.network.NettyNetworkService">
<!-- The port in which the server should listen for incoming connections -->
<!-- NOTE: this port must be open manually on any firewall or router that
is between you and other players. If you wish to play on the same machine
you normally don't need to change anything here nor in the firewall. -->
<server listen="0.0.0.0:7777" />
</service>
<!-- ###################################################################### -->
<!-- ########################### CORE SERVICES ############################ -->
<!-- ###################################################################### -->
<!-- Those services provide basic core features and are required for server
startup process -->
<service interface="com.l2jserver.service.core.LoggingService"
implementation="com.l2jserver.service.core.Log4JLoggingService" />
<service interface="com.l2jserver.service.core.threading.ThreadService"
implementation="com.l2jserver.service.core.threading.ThreadServiceImpl" />
<service interface="com.l2jserver.service.configuration.ConfigurationService"
implementation="com.l2jserver.service.configuration.XMLConfigurationService" />
<service interface="com.l2jserver.service.cache.CacheService"
implementation="com.l2jserver.service.cache.SoftCacheService" />
<!-- ###################################################################### -->
<!-- ########################### GAME SERVICES ############################ -->
<!-- ###################################################################### -->
<!-- Those services provide all the in-game features and most of them are
required for players to be able to login in the server -->
<service interface="com.l2jserver.service.game.world.WorldIDService"
implementation="com.l2jserver.service.game.world.CachedWorldIDService" />
<service interface="com.l2jserver.service.game.map.pathing.PathingService"
implementation="com.l2jserver.service.game.map.pathing.MapperPathingService" />
<service interface="com.l2jserver.service.game.scripting.ScriptingService"
implementation="com.l2jserver.service.game.scripting.ScriptingServiceImpl" />
<service interface="com.l2jserver.service.game.chat.ChatService"
implementation="com.l2jserver.service.game.chat.SimpleChatService" />
<service interface="com.l2jserver.service.game.chat.ChatLoggingService"
implementation="com.l2jserver.service.game.chat.DatabaseChatLoggingService" />
<service interface="com.l2jserver.service.game.admin.AdministratorService"
implementation="com.l2jserver.service.game.admin.AdministratorServiceImpl" />
<service interface="com.l2jserver.service.game.spawn.SpawnService"
implementation="com.l2jserver.service.game.spawn.SpawnServiceImpl" />
<service interface="com.l2jserver.service.game.character.CharacterService"
implementation="com.l2jserver.service.game.character.CharacterServiceImpl" />
<service interface="com.l2jserver.service.game.character.ShortcutService"
implementation="com.l2jserver.service.game.character.ShortcutServiceImpl" />
<service interface="com.l2jserver.service.game.AttackService"
implementation="com.l2jserver.service.game.AttackServiceImpl" />
<service interface="com.l2jserver.service.game.npc.NPCService"
implementation="com.l2jserver.service.game.npc.NPCServiceImpl" />
<service interface="com.l2jserver.service.game.item.ItemService"
implementation="com.l2jserver.service.game.item.ItemServiceImpl" />
<service interface="com.l2jserver.service.game.world.WorldService"
implementation="com.l2jserver.service.game.world.WorldServiceImpl" />
<service interface="com.l2jserver.service.game.world.event.WorldEventDispatcher"
implementation="com.l2jserver.service.game.world.event.WorldEventDispatcherImpl" />
<!-- ####################################################################### -->
<!-- ########################## NETWORK SERVICES ########################### -->
<!-- ####################################################################### -->
<!-- Those services all network related services that will communicate the
server software to the player computer running the game client. Although
not required, without them, becomes impossible to connect to the server in
order to play the game. -->
<service interface="com.l2jserver.service.network.keygen.BlowfishKeygenService"
implementation="com.l2jserver.service.network.keygen.SecureBlowfishKeygenService" />
<service interface="com.l2jserver.service.network.gameguard.GameGuardService"
implementation="com.l2jserver.service.network.gameguard.GameGuardServiceImpl" />
<service interface="com.l2jserver.service.network.broadcast.BroadcastService"
implementation="com.l2jserver.service.network.broadcast.BroadcastServiceImpl" />
</services>