Spring configuration clean-up
* 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.
This commit is contained in:
parent
597429fadf
commit
35d8891fe3
62 changed files with 211 additions and 451 deletions
legacyworlds/doc
77
legacyworlds/doc/spring-configuration.txt
Normal file
77
legacyworlds/doc/spring-configuration.txt
Normal file
|
@ -0,0 +1,77 @@
|
|||
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.
|
Reference in a new issue