19 Commits

Author SHA1 Message Date
UbitUmarov
fbbcc1edd7 == string.Empty is .Lenght == 0 2022-01-13 20:31:52 +00:00
UbitUmarov
33a062612f remove terraindata abstraction layer, since we only have heightmap type 2019-01-21 06:05:21 +00:00
Melanie Thielker
b16abc8166 Massive tab and trailing space cleanup 2017-01-05 19:07:37 +00:00
Oren Hurvitz
998d7009a6 Eliminated many warnings 2014-04-23 16:37:36 +03:00
Mic Bowman
9875e840f7 Per discussions with justincc... split the JsonStore type
functions into one for node type and one for value type.
Define and export constants for both nodes and values.
2013-03-05 20:33:17 -08:00
Mic Bowman
903b40b47e Fix the JsonStore path set problem justincc found earlier today and
remove the deprecated TestPath functions.
2013-02-19 22:53:46 -08:00
Mic Bowman
bcb172301d Adds a couple requested functions to the JsonStore script
interface. JsonPathType returns the type of node pointed to by the
path and deprecates the functionality of both JsonTestPath
functions. JsonArrayLength returns the length of an array node.
2013-02-13 07:14:04 -08:00
Mic Bowman
708c3f8b86 Make path parsing more robust in the JsonStore. 2013-02-12 23:21:49 -08:00
Mic Bowman
4b8c22ecfa Adds the parameter for OSD serialization to encode default values. This
makes the JsonStore get/set operations symmetric.
2013-02-12 11:10:17 -08:00
Mic Bowman
d3b2cdc2b4 Fix handling of string values in JsonSetValueJson(). There are
some oddities with empty strings: the Json serializer treats them
as default values and does not return them in serialized hashes.
2013-02-11 19:55:10 -08:00
Mic Bowman
7bb82c8f2e Make JsonStore path parsing more robust. Should fix the
invalid path problem.
2013-02-08 22:43:15 -08:00
Mic Bowman
6d825d7ea2 Broaden the internal OSD type checks to parse JSON that has
non string values.
2013-02-08 15:46:42 -08:00
Mic Bowman
e93defd0ca Adds size limits to JsonStore. Adds a separate configuration
variable to enable binding to dynamic attributes.
2013-02-08 15:07:43 -08:00
Mic Bowman
2b5eba9c74 Fix the return values for JsonDestroyStore, JsonRemoveValue, and JsonSetValue.
Fix the link message status when reading a notecard.
2013-02-08 12:00:16 -08:00
Justin Clark-Casey (justincc)
c135c3224f Fix a recent regression in e17392a where JsonSetValue() stopped working (probably other functions as well).
Fix is to call through to the no-arg constructor from the string constructor in JsonStore, which I suspect was just forgotten.
This was actually picked up by the TestJsonSetValue() regression test failing
But this isn't being run on jenkins due to the .net version issue.
This commit also puts the full stack trace in logged messages and makes these error level messages instead of info
2013-02-07 23:08:19 +00:00
Mic Bowman
e17392acbb Enables script access to the per object dynamic attributes through the JsonStore
script functions. Adds JsonAttachObjectStore to associate a store identifier with
an object (scripts can only access the store in their host object, this could be
extended but isn't necessary for now).

Note this opens a method to the DAMap OSDMap. This will be removed later, but
greatly simplifies the code for now.

The JsonStore and these scripts are disabled by default.
2013-02-06 17:29:17 -08:00
Mic Bowman
1e0420431f Move the JsonStore regular expressions to static variables to avoid
recompiling on every operation. Added JsonList2Path script function
to simplify array iteration.
2013-01-31 14:53:16 -08:00
Mic Bowman
4db518b9a3 Fix the Csharp 3.0 vs 4.0 problem in JsonStore initialization.
Cut down on the logging spam.
2012-04-17 14:15:17 -07:00
Mic Bowman
5ff2bda587 This commit adds a new optional region module, JsonStore, that provides structured
storage (dictionaries and arrays of string values) for scripts and region modules.
In addition, there are operations on the storage that enable "real" distributed
computation between scripts through operations similar to those of a tuple space.
Scripts can share task queues, implement shared locks or semaphores, etc.

The structured store is limited to the current region and is not currently
persisted. However, script operations are defined to initialize a store from a notecard
and to serialize the store to a notecard.

Documentation will be posted to the opensim wiki soon.
2012-04-17 13:45:27 -07:00