Fix the JsonStore path set problem justincc found earlier today and
remove the deprecated TestPath functions.user_profiles
parent
4779f7d7d5
commit
903b40b47e
|
@ -51,7 +51,6 @@ namespace OpenSim.Region.Framework.Interfaces
|
|||
|
||||
JsonStoreNodeType GetPathType(UUID storeID, string path);
|
||||
bool TestStore(UUID storeID);
|
||||
bool TestPath(UUID storeID, string path, bool useJson);
|
||||
|
||||
bool SetValue(UUID storeID, string path, string value, bool useJson);
|
||||
bool RemoveValue(UUID storeID, string path);
|
||||
|
|
|
@ -84,11 +84,11 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
|
|||
protected static Regex m_PathComponent = new Regex("\\.({[^}]+}|\\[[0-9]+\\]|\\[\\+\\])");
|
||||
|
||||
// extract the internals of an array reference
|
||||
protected static Regex m_SimpleArrayPattern = new Regex("\\[([0-9]+)\\]");
|
||||
protected static Regex m_ArrayPattern = new Regex("\\[([0-9]+|\\+)\\]");
|
||||
protected static Regex m_SimpleArrayPattern = new Regex("^\\[([0-9]+)\\]$");
|
||||
protected static Regex m_ArrayPattern = new Regex("^\\[([0-9]+|\\+)\\]$");
|
||||
|
||||
// extract the internals of a has reference
|
||||
protected static Regex m_HashPattern = new Regex("{([^}]+)}");
|
||||
protected static Regex m_HashPattern = new Regex("^{([^}]+)}$");
|
||||
|
||||
// -----------------------------------------------------------------
|
||||
/// <summary>
|
||||
|
@ -168,28 +168,6 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
|
|||
return JsonStoreNodeType.Undefined;
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
// -----------------------------------------------------------------
|
||||
public bool TestPath(string expr, bool useJson)
|
||||
{
|
||||
Stack<string> path;
|
||||
if (! ParsePathExpression(expr,out path))
|
||||
return false;
|
||||
|
||||
OSD result = ProcessPathExpression(ValueStore,path);
|
||||
|
||||
if (result == null)
|
||||
return false;
|
||||
|
||||
if (useJson || OSDBaseType(result.Type))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------
|
||||
/// <summary>
|
||||
///
|
||||
|
|
|
@ -297,38 +297,6 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
|
|||
return JsonStoreNodeType.Undefined;
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
// -----------------------------------------------------------------
|
||||
public bool TestPath(UUID storeID, string path, bool useJson)
|
||||
{
|
||||
if (! m_enabled) return false;
|
||||
|
||||
JsonStore map = null;
|
||||
lock (m_JsonValueStore)
|
||||
{
|
||||
if (! m_JsonValueStore.TryGetValue(storeID,out map))
|
||||
{
|
||||
m_log.InfoFormat("[JsonStore] Missing store {0}",storeID);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
lock (map)
|
||||
return map.TestPath(path,useJson);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
m_log.Error(string.Format("[JsonStore]: Path test failed for {0} in {1}", path, storeID), e);
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------
|
||||
/// <summary>
|
||||
///
|
||||
|
|
|
@ -168,32 +168,6 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
|
|||
{
|
||||
m_comms.RegisterScriptInvocations(this);
|
||||
m_comms.RegisterConstants(this);
|
||||
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonCreateStore");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonAttachObjectStore");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonDestroyStore");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonTestStore");
|
||||
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonReadNotecard");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonWriteNotecard");
|
||||
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonTestPathList");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonTestPath");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonTestPathJson");
|
||||
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonGetValue");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonGetValueJson");
|
||||
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonTakeValue");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonTakeValueJson");
|
||||
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonReadValue");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonReadValueJson");
|
||||
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonSetValue");
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonSetValueJson");
|
||||
|
||||
// m_comms.RegisterScriptInvocation(this, "JsonRemoveValue");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
@ -341,18 +315,6 @@ namespace OpenSim.Region.OptionalModules.Scripting.JsonStore
|
|||
return (int)m_store.GetPathType(storeID,path);
|
||||
}
|
||||
|
||||
[ScriptInvocation]
|
||||
public int JsonTestPath(UUID hostID, UUID scriptID, UUID storeID, string path)
|
||||
{
|
||||
return m_store.TestPath(storeID,path,false) ? 1 : 0;
|
||||
}
|
||||
|
||||
[ScriptInvocation]
|
||||
public int JsonTestPathJson(UUID hostID, UUID scriptID, UUID storeID, string path)
|
||||
{
|
||||
return m_store.TestPath(storeID,path,true) ? 1 : 0;
|
||||
}
|
||||
|
||||
// -----------------------------------------------------------------
|
||||
/// <summary>
|
||||
///
|
||||
|
|
Loading…
Reference in New Issue