#include "common.cfg"

DontUseNS = 1;

StartCommands +=
{
    // Create a gateway for global interconnection
    // modules from different shard are visible to each other if they connect to
    // this gateway. SU Local module have no interest to be plugged here.
    "moduleManager.createModule StandardGateway glob_gw",
    // add a layer 3 server transport
    "glob_gw.transportAdd L3Server l3s",
    // open the transport
    "glob_gw.transportCmd l3s(open port="+SUGlobalPort+")",
    // Create a session manager module
    "moduleManager.createModule RingSessionManager rsm web(port=49999) ring_db(host="+DBHost+" user="+DBRingUser+" password="+DBRingPass+" base="+DBRingName+") nel_db(host="+DBHost+" user="+DBNelUser+" password="+DBNelPass+" base="+DBNelName+")",
    "rsm.plug gw",
    // Create a login service module
    "moduleManager.createModule LoginService ls ring_db(host="+DBHost+" user="+DBRingUser+" password="+DBRingPass+" base="+DBRingName+") web(port=49998) nel_db(host="+DBHost+" user="+DBNelUser+" password="+DBNelPass+" base="+DBNelName+")",
    "ls.plug gw",
    // Create a character synchronization module
    "moduleManager.createModule CharacterSynchronisation cs fake_edit_char ring_db(host="+DBHost+" user="+DBRingUser+" password="+DBRingPass+" base="+DBRingName+")",
    "cs.plug gw",
    // Create entity locator module
    "moduleManager.createModule EntityLocator el ring_db(host="+DBHost+" user="+DBRingUser+" password="+DBRingPass+" base="+DBRingName+") nel_db(host="+DBHost+" user="+DBNelUser+" password="+DBNelPass+" base="+DBNelName+")",
    "el.plug gw",
    // Create a mail forum notifier forwarder
    "moduleManager.createModule MailForumNotifierFwd mfnfwd ring_db(host="+DBHost+" user="+DBRingUser+" password="+DBRingPass+" base="+DBRingName+") web(port=49897)",
    "mfnfwd.plug gw",
    // Create a chat unifier server module
    "moduleManager.createModule ChatUnifierServer cus ring_db(host="+DBHost+" user="+DBRingUser+" password="+DBRingPass+" base="+DBRingName+")",
    "cus.plug gw",
};