public void RegionLoaded(Scene scene) { if (!m_Enabled) { return; } if (m_UserManagement == null) { m_UserManagement = scene.RequestModuleInterface <IUserManagement>(); m_OfflineIM = scene.RequestModuleInterface <IOfflineIMService>(); m_Messaging = scene.RequestModuleInterface <IMessageTransferModule>(); m_ForeignImporter = new ForeignImporter(m_UserManagement); if (m_ServiceLocation.Equals("local")) { m_LocalGroupsConnector = new GroupsServiceLocalConnectorModule(m_Config, m_UserManagement); // Also, if local, create the endpoint for the HGGroupsService new HGGroupsServiceRobustConnector(m_Config, MainServer.Instance, string.Empty, scene.RequestModuleInterface <IOfflineIMService>(), scene.RequestModuleInterface <IUserAccountService>()); } else { m_LocalGroupsConnector = new GroupsServiceRemoteConnectorModule(m_Config, m_UserManagement); } m_CacheWrapper = new RemoteConnectorCacheWrapper(m_UserManagement); } }
public void Initialise(IConfigSource config) { IConfig cnf = config.Configs["Messaging"]; if (cnf == null) { return; } if (cnf != null && cnf.GetString("OfflineMessageModule", string.Empty) != Name) { return; } m_Enabled = true; string serviceLocation = cnf.GetString("OfflineMessageURL", string.Empty); if (serviceLocation == string.Empty) { m_OfflineIMService = new OfflineIMService(config); } else { m_OfflineIMService = new OfflineIMServiceRemoteConnector(config); } m_ForwardOfflineGroupMessages = cnf.GetBoolean("ForwardOfflineGroupMessages", m_ForwardOfflineGroupMessages); m_log.DebugFormat("[OfflineIM.V2]: Offline messages enabled by {0}", Name); }
public HGInstantMessageService(IConfigSource config, IInstantMessageSimConnector imConnector) { if (imConnector != null) { m_IMSimConnector = imConnector; } if (!m_Initialized) { m_Initialized = true; IConfig serverConfig = config.Configs["HGInstantMessageService"]; if (serverConfig == null) { throw new Exception(String.Format("No section HGInstantMessageService in config file")); } string gridService = serverConfig.GetString("GridService", String.Empty); string presenceService = serverConfig.GetString("PresenceService", String.Empty); string userAgentService = serverConfig.GetString("UserAgentService", String.Empty); m_InGatekeeper = serverConfig.GetBoolean("InGatekeeper", false); m_log.DebugFormat("[HG IM SERVICE]: Starting... InRobust? {0}", m_InGatekeeper); if (gridService == string.Empty || presenceService == string.Empty) { throw new Exception(String.Format("Incomplete specifications, InstantMessage Service cannot function.")); } Object[] args = new Object[] { config }; m_GridService = ServerUtils.LoadPlugin <IGridService>(gridService, args); m_PresenceService = ServerUtils.LoadPlugin <IPresenceService>(presenceService, args); try { m_UserAgentService = ServerUtils.LoadPlugin <IUserAgentService>(userAgentService, args); } catch { m_log.WarnFormat("[HG IM SERVICE]: Unable to create User Agent Service. Missing config var in [HGInstantMessageService]?"); } m_RegionCache = new ExpiringCache <UUID, GridRegion>(); IConfig cnf = config.Configs["Messaging"]; if (cnf == null) { return; } m_ForwardOfflineGroupMessages = cnf.GetBoolean("ForwardOfflineGroupMessages", false); if (m_InGatekeeper) { string offlineIMService = cnf.GetString("OfflineIMService", string.Empty); if (offlineIMService != string.Empty) { m_OfflineIMService = ServerUtils.LoadPlugin <IOfflineIMService>(offlineIMService, args); } } } }
public HGGroupsService(IConfigSource config, IOfflineIMService im, IUserAccountService users, string homeURI) : base(config, string.Empty) { m_OfflineIM = im; m_UserAccounts = users; m_HomeURI = homeURI; if (!m_HomeURI.EndsWith("/")) m_HomeURI += "/"; }
public HGGroupsService(IConfigSource config, IOfflineIMService im, IUserAccountService users, string homeURI) : base(config, string.Empty) { m_OfflineIM = im; m_UserAccounts = users; m_HomeURI = homeURI; if (!m_HomeURI.EndsWith("/")) { m_HomeURI += "/"; } }
public OfflineIMServiceRobustConnector(IConfigSource config, IHttpServer server, string configName) : base(config, server, configName) { if (configName != String.Empty) m_ConfigName = configName; m_log.DebugFormat("[OfflineIM.V2.RobustConnector]: Starting with config name {0}", m_ConfigName); m_OfflineIMService = new OfflineIMService(config); server.AddStreamHandler(new OfflineIMServicePostHandler(m_OfflineIMService)); }
public OfflineIMServiceRobustConnector(IConfigSource config, IHttpServer server, string configName) : base(config, server, configName) { if (configName != String.Empty) { m_ConfigName = configName; } m_log.DebugFormat("[OfflineIM.V2.RobustConnector]: Starting with config name {0}", m_ConfigName); m_OfflineIMService = new OfflineIMService(config); server.AddStreamHandler(new OfflineIMServicePostHandler(m_OfflineIMService)); }
public void Initialise(IConfigSource config) { IConfig cnf = config.Configs["Messaging"]; if (cnf == null) return; if (cnf != null && cnf.GetString("OfflineMessageModule", string.Empty) != Name) return; m_Enabled = true; string serviceLocation = cnf.GetString("OfflineMessageURL", string.Empty); if (serviceLocation == string.Empty) m_OfflineIMService = new OfflineIMService(config); else m_OfflineIMService = new OfflineIMServiceRemoteConnector(serviceLocation); m_ForwardOfflineGroupMessages = cnf.GetBoolean("ForwardOfflineGroupMessages", m_ForwardOfflineGroupMessages); m_log.DebugFormat("[OfflineIM.V2]: Offline messages enabled by {0}", Name); }
// Called by the sim-bound module public HGGroupsServiceRobustConnector(IConfigSource config, IHttpServer server, string configName, IOfflineIMService im, IUserAccountService users) : base(config, server, configName) { if (configName != String.Empty) m_ConfigName = configName; m_log.DebugFormat("[Groups.RobustHGConnector]: Starting with config name {0}", m_ConfigName); string homeURI = Util.GetConfigVarFromSections<string>(config, "HomeURI", new string[] { "Startup", "Hypergrid", m_ConfigName}, string.Empty); if (homeURI == string.Empty) throw new Exception(String.Format("[Groups.RobustHGConnector]: please provide the HomeURI [Startup] or in section {0}", m_ConfigName)); IConfig cnf = config.Configs[m_ConfigName]; if (cnf == null) throw new Exception(String.Format("[Groups.RobustHGConnector]: {0} section does not exist", m_ConfigName)); if (im == null) { string imDll = cnf.GetString("OfflineIMService", string.Empty); if (imDll == string.Empty) throw new Exception(String.Format("[Groups.RobustHGConnector]: please provide OfflineIMService in section {0}", m_ConfigName)); Object[] args = new Object[] { config }; im = ServerUtils.LoadPlugin<IOfflineIMService>(imDll, args); } if (users == null) { string usersDll = cnf.GetString("UserAccountService", string.Empty); if (usersDll == string.Empty) throw new Exception(String.Format("[Groups.RobustHGConnector]: please provide UserAccountService in section {0}", m_ConfigName)); Object[] args = new Object[] { config }; users = ServerUtils.LoadPlugin<IUserAccountService>(usersDll, args); } m_GroupsService = new HGGroupsService(config, im, users, homeURI); server.AddStreamHandler(new HGGroupsServicePostHandler(m_GroupsService)); }
public OfflineIMServicePostHandler(IOfflineIMService service, IServiceAuth auth) : base("POST", "/offlineim", auth) { m_OfflineIMService = service; }
public OfflineIMServicePostHandler(IOfflineIMService service) : base("POST", "/offlineim") { m_OfflineIMService = service; }
// Called by the sim-bound module public HGGroupsServiceRobustConnector(IConfigSource config, IHttpServer server, string configName, IOfflineIMService im, IUserAccountService users) : base(config, server, configName) { if (configName != String.Empty) { m_ConfigName = configName; } m_log.DebugFormat("[Groups.RobustHGConnector]: Starting with config name {0}", m_ConfigName); string homeURI = Util.GetConfigVarFromSections <string>(config, "HomeURI", new string[] { "Startup", "Hypergrid", m_ConfigName }, string.Empty); if (homeURI == string.Empty) { throw new Exception(String.Format("[Groups.RobustHGConnector]: please provide the HomeURI [Startup] or in section {0}", m_ConfigName)); } IConfig cnf = config.Configs[m_ConfigName]; if (cnf == null) { throw new Exception(String.Format("[Groups.RobustHGConnector]: {0} section does not exist", m_ConfigName)); } if (im == null) { string imDll = cnf.GetString("OfflineIMService", string.Empty); if (imDll == string.Empty) { throw new Exception(String.Format("[Groups.RobustHGConnector]: please provide OfflineIMService in section {0}", m_ConfigName)); } Object[] args = new Object[] { config }; im = ServerUtils.LoadPlugin <IOfflineIMService>(imDll, args); } if (users == null) { string usersDll = cnf.GetString("UserAccountService", string.Empty); if (usersDll == string.Empty) { throw new Exception(String.Format("[Groups.RobustHGConnector]: please provide UserAccountService in section {0}", m_ConfigName)); } Object[] args = new Object[] { config }; users = ServerUtils.LoadPlugin <IUserAccountService>(usersDll, args); } m_GroupsService = new HGGroupsService(config, im, users, homeURI); server.AddStreamHandler(new HGGroupsServicePostHandler(m_GroupsService)); }
public void RegionLoaded(Scene scene) { if (!m_Enabled) return; if (m_UserManagement == null) { m_UserManagement = scene.RequestModuleInterface<IUserManagement>(); m_OfflineIM = scene.RequestModuleInterface<IOfflineIMService>(); m_Messaging = scene.RequestModuleInterface<IMessageTransferModule>(); m_ForeignImporter = new ForeignImporter(m_UserManagement); if (m_ServiceLocation.Equals("local")) { m_LocalGroupsConnector = new GroupsServiceLocalConnectorModule(m_Config, m_UserManagement); // Also, if local, create the endpoint for the HGGroupsService new HGGroupsServiceRobustConnector(m_Config, MainServer.Instance, string.Empty, scene.RequestModuleInterface<IOfflineIMService>(), scene.RequestModuleInterface<IUserAccountService>()); } else m_LocalGroupsConnector = new GroupsServiceRemoteConnectorModule(m_Config, m_UserManagement); m_CacheWrapper = new RemoteConnectorCacheWrapper(m_UserManagement); } }
public HGInstantMessageService(IConfigSource config, IInstantMessageSimConnector imConnector) { if (imConnector != null) m_IMSimConnector = imConnector; if (!m_Initialized) { m_Initialized = true; IConfig serverConfig = config.Configs["HGInstantMessageService"]; if (serverConfig == null) throw new Exception(String.Format("No section HGInstantMessageService in config file")); string gridService = serverConfig.GetString("GridService", String.Empty); string presenceService = serverConfig.GetString("PresenceService", String.Empty); string userAgentService = serverConfig.GetString("UserAgentService", String.Empty); m_InGatekeeper = serverConfig.GetBoolean("InGatekeeper", false); m_log.DebugFormat("[HG IM SERVICE]: Starting... InRobust? {0}", m_InGatekeeper); if (gridService == string.Empty || presenceService == string.Empty) throw new Exception(String.Format("Incomplete specifications, InstantMessage Service cannot function.")); Object[] args = new Object[] { config }; m_GridService = ServerUtils.LoadPlugin<IGridService>(gridService, args); m_PresenceService = ServerUtils.LoadPlugin<IPresenceService>(presenceService, args); m_UserAgentService = ServerUtils.LoadPlugin<IUserAgentService>(userAgentService, args); m_RegionCache = new ExpiringCache<UUID, GridRegion>(); IConfig cnf = config.Configs["Messaging"]; if (cnf == null) { return; } m_ForwardOfflineGroupMessages = cnf.GetBoolean("ForwardOfflineGroupMessages", false); if (m_InGatekeeper) { string offlineIMService = cnf.GetString("OfflineIMService", string.Empty); if (offlineIMService != string.Empty) m_OfflineIMService = ServerUtils.LoadPlugin<IOfflineIMService>(offlineIMService, args); } } }