public void Initialize(IConfigSource config, IRegistryCore registry) { if (config.Configs["Currency"] == null || config.Configs["Currency"].GetString("Module", "") != "BaseCurrency") return; m_registry = registry; m_connector = Framework.Utilities.DataManager.RequestPlugin<IBaseCurrencyConnector>() as BaseCurrencyConnector; }
public void Start(IConfigSource config, IRegistryCore registry) { if (config.Configs["Currency"] == null || config.Configs["Currency"].GetString("Module", "") != "BaseCurrency") return; // we only want this if we are local.. bool remoteCalls = false; IConfig connectorConfig = config.Configs["UniverseConnectors"]; if ((connectorConfig != null) && connectorConfig.Contains("DoRemoteCalls")) remoteCalls = connectorConfig.GetBoolean("DoRemoteCalls", false); if (remoteCalls) return; m_connector = Framework.Utilities.DataManager.RequestPlugin<IBaseCurrencyConnector>() as BaseCurrencyConnector; var curPort = m_connector.GetConfig ().ClientPort; if (curPort == 0 && MainServer.Instance == null) return; IHttpServer server = registry.RequestModuleInterface<ISimulationBase>().GetHttpServer((uint) curPort); server.AddXmlRPCHandler("getCurrencyQuote", QuoteFunc); server.AddXmlRPCHandler("buyCurrency", BuyFunc); server.AddXmlRPCHandler("preflightBuyLandPrep", PreflightBuyLandPrepFunc); server.AddXmlRPCHandler("buyLandPrep", LandBuyFunc); server.AddXmlRPCHandler("getBalance", GetbalanceFunc); server.AddXmlRPCHandler("/currency.php", GetbalanceFunc); server.AddXmlRPCHandler("/landtool.php", GetbalanceFunc); m_syncMessagePoster = registry.RequestModuleInterface<ISyncMessagePosterService>(); m_agentInfoService = registry.RequestModuleInterface<IAgentInfoService>(); }