aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Api
diff options
context:
space:
mode:
authorDr Scofield2009-06-03 12:48:04 +0000
committerDr Scofield2009-06-03 12:48:04 +0000
commit717fd3b5b91f54113ef554799f124275d5489ea1 (patch)
tree64748d1b66ada5dc3d3a97d80547c18570d05e14 /OpenSim/Region/ScriptEngine/Shared/Api
parentFrom: Chris Yeoh <yeohc@au1.ibm.com> (diff)
downloadopensim-SC-717fd3b5b91f54113ef554799f124275d5489ea1.zip
opensim-SC-717fd3b5b91f54113ef554799f124275d5489ea1.tar.gz
opensim-SC-717fd3b5b91f54113ef554799f124275d5489ea1.tar.bz2
opensim-SC-717fd3b5b91f54113ef554799f124275d5489ea1.tar.xz
From: Chris Yeoh <yeohc@au1.ibm.com>
This patch adds oar file date and time (UTC) meta data to an oar file when it is created. It also adds a unique ID, though this id does not in anyway identify the machine that the oar file was created on. When an oar file with this meta data is loaded this extra information is saved with the region settings and available via LSL through: - osLoadedCreationDate() - osLoadedCreationTime() - osLoadedCreationID() If there is no meta data these fields will be blank. Subsequent oar file loads will erase the information for the previous oar file load. Persistence has only been implemented for MySQL, the other backends need updating. Overall this allows us to much more easily identify the specific version of software that clients are using. Its very straightforward to edit the oar file to change the ID string to be something more human friendly. Included in the patch is a new file OpenSim/Data/MySQL/Resources/030_RegionStore.sql required for the MySQL DB migration. btw I had a chat with justincc about this a few weeks ago since he wrote the oar file import/export and he sounded happy to accept something that included date/time information but didn't want anything that would silently leak private information like machine names.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs25
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs5
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs17
3 files changed, 47 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index d759b77..9b65d8d 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -1709,5 +1709,30 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
1709 1709
1710 return result; 1710 return result;
1711 } 1711 }
1712
1713 public string osLoadedCreationDate()
1714 {
1715 CheckThreatLevel(ThreatLevel.Low, "osLoadedCreationDate");
1716 m_host.AddScriptLPS(1);
1717
1718 return World.RegionInfo.RegionSettings.LoadedCreationDate;
1719 }
1720
1721 public string osLoadedCreationTime()
1722 {
1723 CheckThreatLevel(ThreatLevel.Low, "osLoadedCreationTime");
1724 m_host.AddScriptLPS(1);
1725
1726 return World.RegionInfo.RegionSettings.LoadedCreationTime;
1727 }
1728
1729 public string osLoadedCreationID()
1730 {
1731 CheckThreatLevel(ThreatLevel.Low, "osLoadedCreationID");
1732 m_host.AddScriptLPS(1);
1733
1734 return World.RegionInfo.RegionSettings.LoadedCreationID;
1735 }
1736
1712 } 1737 }
1713} 1738}
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
index 548e11f..e337c6b 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
@@ -142,5 +142,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces
142 LSL_String osFormatString(string str, LSL_List strings); 142 LSL_String osFormatString(string str, LSL_List strings);
143 LSL_List osMatchString(string src, string pattern, int start); 143 LSL_List osMatchString(string src, string pattern, int start);
144 144
145 // Information about data loaded into the region
146 string osLoadedCreationDate();
147 string osLoadedCreationTime();
148 string osLoadedCreationID();
149
145 } 150 }
146} 151}
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
index a0d924d..5df2d6e 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
@@ -371,6 +371,23 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
371 return m_OSSL_Functions.osMatchString(src, pattern, start); 371 return m_OSSL_Functions.osMatchString(src, pattern, start);
372 } 372 }
373 373
374 // Information about data loaded into the region
375 public string osLoadedCreationDate()
376 {
377 return m_OSSL_Functions.osLoadedCreationDate();
378 }
379
380 public string osLoadedCreationTime()
381 {
382 return m_OSSL_Functions.osLoadedCreationTime();
383 }
384
385 public string osLoadedCreationID()
386 {
387 return m_OSSL_Functions.osLoadedCreationID();
388 }
389
390
374 public OSSLPrim Prim; 391 public OSSLPrim Prim;
375 392
376 [Serializable] 393 [Serializable]