Emmanuel BENOîT
35d8891fe3
* Regrouped component definitions into one single file per package in most cases, with a few exceptions * Added documentation about how the configuration is stored and which guidelines should be followed when adding or modifying Spring component configurations.
77 lines
No EOL
3.1 KiB
Text
77 lines
No EOL
3.1 KiB
Text
Spring configuration files
|
|
===========================
|
|
|
|
A lot of the game's code (whether on the server side or on the web clients)
|
|
relies on the Spring framework. For most of the components, it is easier to
|
|
use XML configuration files rather than in-code configuration. This file
|
|
describes the common elements and guidelines to follow for the configuration
|
|
files.
|
|
|
|
|
|
Files in the main server package:
|
|
|
|
lw-server.xml Main configuration file
|
|
|
|
This file contains the server's top-level configuration. It enables
|
|
annotation-based component processing, adds the server termination
|
|
component, and loads the configuration files for all elements of the
|
|
server: transaction management, meta components, game components for
|
|
both the "real" game and the "simple" implementation written for
|
|
Milestone 1, session type definitions and commands.
|
|
|
|
configuration/game.xml "Real" game components
|
|
|
|
This file acts as a loader for all configuration files the load
|
|
elements of the "real" game - that is, parts of the game which have
|
|
taken (or are taking) the form they should have in the final version.
|
|
|
|
configuration/meta.xml Meta components
|
|
|
|
This file loads the configuration files for all "meta" components.
|
|
A "meta" component is any component which is not directly related to
|
|
the game itself, but it still necessary: for example account
|
|
management or the bug tracking system fall into this category.
|
|
|
|
configuration/transactions.xml Transaction manager configuration
|
|
|
|
This file contains the configuration for Spring's transaction
|
|
management system. It defines the transaction manager and enables
|
|
annotation-based transaction processing.
|
|
|
|
|
|
Files in general component definition packages:
|
|
|
|
Most of the component definition packages will include one single
|
|
configuration file which loads the components the package defines. This
|
|
file will be found in either configuration/meta/ or configuration/game/
|
|
depending on the purpose of the components. The file in question will
|
|
be loaded from the corresponding file in the main server package.
|
|
|
|
|
|
Files in the legacyworlds-server-beans-simple package:
|
|
|
|
This package includes its own top-level configuration file, unsurprisingly
|
|
named configuration/simple.xml, which is included in the server's top-level
|
|
configuration and loads all files in the configuration/simple/
|
|
sub-directory. Since it corresponds to Milestone 1's "simple" game
|
|
implementation, it should only be modified to remove components as they
|
|
are moved or replaced.
|
|
|
|
|
|
Files in the legacyworlds-server-beans-user package:
|
|
|
|
This package includes a "meta" components configuration file, which loads
|
|
low-level session management components. In addition, it features the
|
|
following configuration files:
|
|
|
|
configuration/session-types.xml Session types loader
|
|
|
|
This file loads the configuration files for each specific type of
|
|
session.
|
|
|
|
configuration/session-types/ Session types definitions
|
|
|
|
This directory contains configuration files which loads all
|
|
components for some type of session. Each file should therefore
|
|
load at least one session definer component, and a bunch of
|
|
command handling components. |