Merge branch 'master' of opensimulator.org:/var/git/opensim
commit
65dfb62b74
|
@ -242,6 +242,18 @@ namespace OpenSim.Server.Base
|
||||||
className = parts[2];
|
className = parts[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Handle extra string arguments in a more generic way
|
||||||
|
if (dllName.Contains("@"))
|
||||||
|
{
|
||||||
|
string[] dllNameParts = dllName.Split(new char[] {'@'});
|
||||||
|
dllName = dllNameParts[dllNameParts.Length - 1];
|
||||||
|
List<Object> argList = new List<Object>(args);
|
||||||
|
for (int i = 0 ; i < dllNameParts.Length - 1 ; ++i)
|
||||||
|
argList.Add(dllNameParts[i]);
|
||||||
|
|
||||||
|
args = argList.ToArray();
|
||||||
|
}
|
||||||
|
|
||||||
return LoadPlugin<T>(dllName, className, args);
|
return LoadPlugin<T>(dllName, className, args);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -63,6 +63,7 @@ namespace OpenSim.Services.Connectors
|
||||||
/// In this case, -1 is default timeout (100 seconds), not infinite.
|
/// In this case, -1 is default timeout (100 seconds), not infinite.
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
private int m_requestTimeoutSecs = -1;
|
private int m_requestTimeoutSecs = -1;
|
||||||
|
private string m_configName = "InventoryService";
|
||||||
|
|
||||||
private const double CACHE_EXPIRATION_SECONDS = 20.0;
|
private const double CACHE_EXPIRATION_SECONDS = 20.0;
|
||||||
private static ExpiringCache<UUID, InventoryItemBase> m_ItemCache = new ExpiringCache<UUID,InventoryItemBase>();
|
private static ExpiringCache<UUID, InventoryItemBase> m_ItemCache = new ExpiringCache<UUID,InventoryItemBase>();
|
||||||
|
@ -76,6 +77,13 @@ namespace OpenSim.Services.Connectors
|
||||||
m_ServerURI = serverURI.TrimEnd('/');
|
m_ServerURI = serverURI.TrimEnd('/');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public XInventoryServicesConnector(IConfigSource source, string configName)
|
||||||
|
: base(source, configName)
|
||||||
|
{
|
||||||
|
m_configName = configName;
|
||||||
|
Initialise(source);
|
||||||
|
}
|
||||||
|
|
||||||
public XInventoryServicesConnector(IConfigSource source)
|
public XInventoryServicesConnector(IConfigSource source)
|
||||||
: base(source, "InventoryService")
|
: base(source, "InventoryService")
|
||||||
{
|
{
|
||||||
|
@ -84,10 +92,10 @@ namespace OpenSim.Services.Connectors
|
||||||
|
|
||||||
public virtual void Initialise(IConfigSource source)
|
public virtual void Initialise(IConfigSource source)
|
||||||
{
|
{
|
||||||
IConfig config = source.Configs["InventoryService"];
|
IConfig config = source.Configs[m_configName];
|
||||||
if (config == null)
|
if (config == null)
|
||||||
{
|
{
|
||||||
m_log.Error("[INVENTORY CONNECTOR]: InventoryService missing from OpenSim.ini");
|
m_log.ErrorFormat("[INVENTORY CONNECTOR]: {0} missing from OpenSim.ini", m_configName);
|
||||||
throw new Exception("Inventory connector init error");
|
throw new Exception("Inventory connector init error");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -180,9 +180,14 @@ namespace OpenSim.Services.LLLoginService
|
||||||
string hgInvServicePlugin = m_LoginServerConfig.GetString("HGInventoryServicePlugin", String.Empty);
|
string hgInvServicePlugin = m_LoginServerConfig.GetString("HGInventoryServicePlugin", String.Empty);
|
||||||
if (hgInvServicePlugin != string.Empty)
|
if (hgInvServicePlugin != string.Empty)
|
||||||
{
|
{
|
||||||
|
// TODO: Remove HGInventoryServiceConstructorArg after 0.9 release
|
||||||
string hgInvServiceArg = m_LoginServerConfig.GetString("HGInventoryServiceConstructorArg", String.Empty);
|
string hgInvServiceArg = m_LoginServerConfig.GetString("HGInventoryServiceConstructorArg", String.Empty);
|
||||||
Object[] args2 = new Object[] { config, hgInvServiceArg };
|
if (hgInvServiceArg != String.Empty)
|
||||||
m_HGInventoryService = ServerUtils.LoadPlugin<IInventoryService>(hgInvServicePlugin, args2);
|
{
|
||||||
|
m_log.Warn("[LLOGIN SERVICE]: You are using HGInventoryServiceConstructorArg, which is deprecated. See example file for correct syntax.");
|
||||||
|
hgInvServicePlugin = hgInvServiceArg + "@" + hgInvServicePlugin;
|
||||||
|
}
|
||||||
|
m_HGInventoryService = ServerUtils.LoadPlugin<IInventoryService>(hgInvServicePlugin, args);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
|
|
@ -488,8 +488,9 @@
|
||||||
UserAgentService = "OpenSim.Services.HypergridService.dll:UserAgentService"
|
UserAgentService = "OpenSim.Services.HypergridService.dll:UserAgentService"
|
||||||
|
|
||||||
; This inventory service will be used to initialize the user's inventory
|
; This inventory service will be used to initialize the user's inventory
|
||||||
HGInventoryServicePlugin = "OpenSim.Services.HypergridService.dll:HGSuitcaseInventoryService"
|
HGInventoryServicePlugin = "HGInventoryService@OpenSim.Services.HypergridService.dll:HGSuitcaseInventoryService"
|
||||||
HGInventoryServiceConstructorArg = "HGInventoryService"
|
; NOTE: HGInventoryServiceConstructorArg is deprecated. For now it will work, but see above
|
||||||
|
; for the correct method if passing additional arguments.
|
||||||
;; end hypergrid
|
;; end hypergrid
|
||||||
|
|
||||||
; Ask co-operative viewers to use a different currency name
|
; Ask co-operative viewers to use a different currency name
|
||||||
|
|
Loading…
Reference in New Issue