aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/ScriptEngine/Engines/DotNetEngine/DotNetEngine_ScriptLoadUnload.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/ScriptEngine/Engines/DotNetEngine/DotNetEngine_ScriptLoadUnload.cs95
1 files changed, 0 insertions, 95 deletions
diff --git a/OpenSim/ScriptEngine/Engines/DotNetEngine/DotNetEngine_ScriptLoadUnload.cs b/OpenSim/ScriptEngine/Engines/DotNetEngine/DotNetEngine_ScriptLoadUnload.cs
deleted file mode 100644
index a113c1e..0000000
--- a/OpenSim/ScriptEngine/Engines/DotNetEngine/DotNetEngine_ScriptLoadUnload.cs
+++ /dev/null
@@ -1,95 +0,0 @@
1/*
2 * Copyright (c) Contributors, http://opensimulator.org/
3 * See CONTRIBUTORS.TXT for a full list of copyright holders.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are met:
7 * * Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer.
9 * * Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the
11 * documentation and/or other materials provided with the distribution.
12 * * Neither the name of the OpenSimulator Project nor the
13 * names of its contributors may be used to endorse or promote products
14 * derived from this software without specific prior written permission.
15 *
16 * THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY
17 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 * DISCLAIMED. IN NO EVENT SHALL THE CONTRIBUTORS BE LIABLE FOR ANY
20 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 */
27
28using System;
29using System.Collections.Generic;
30using System.Text;
31using OpenMetaverse;
32using OpenSim.ScriptEngine.Components.DotNetEngine.Events;
33using OpenSim.ScriptEngine.Shared;
34
35namespace OpenSim.ScriptEngine.Engines.DotNetEngine
36{
37 public partial class DotNetEngine
38 {
39
40 //internal Dictionary<int, IScriptScheduler> ScriptMapping = new Dictionary<int, IScriptScheduler>();
41
42
43 //
44 // HANDLE EVENTS FROM SCRIPTS
45 // We will handle script add, change and remove events outside of command pipeline
46 //
47 #region Script Add/Change/Remove
48 void Events_RezScript(uint localID, UUID itemID, string script, int startParam, bool postOnRez, string engine)
49 {
50 // ###
51 // # New script created
52 // ###
53 m_log.DebugFormat(
54 "[{0}] NEW SCRIPT: localID: {1}, itemID: {2}, startParam: {3}, postOnRez: {4}, engine: {5}",
55 Name, localID, itemID, startParam, postOnRez, engine);
56
57 // Make a script object
58 ScriptStructure scriptObject = new ScriptStructure();
59 scriptObject.RegionInfo = RegionInfo;
60 scriptObject.LocalID = localID;
61 scriptObject.ItemID = itemID;
62 scriptObject.Source = script;
63
64 //
65 // Get MetaData from script header
66 //
67 ScriptMetaData scriptMetaData = ScriptMetaData.Extract(ref script);
68 scriptObject.ScriptMetaData = scriptMetaData;
69 foreach (string key in scriptObject.ScriptMetaData.Keys)
70 {
71 m_log.DebugFormat("[{0}] Script metadata: Key: \"{1}\", Value: \"{2}\".", Name, key, scriptObject.ScriptMetaData[key]);
72 }
73
74 //
75 // Load this assembly
76 //
77 // TODO: Use Executor to send a command instead?
78 m_log.DebugFormat("[{0}] Adding script to scheduler", Name);
79 RegionInfo.FindScheduler(scriptObject.ScriptMetaData).AddScript(scriptObject);
80 // Add to our internal mapping
81 //ScriptMapping.Add(itemID, Schedulers[scheduler]);
82 }
83
84 private void Events_RemoveScript(uint localID, UUID itemID)
85 {
86 // Tell all schedulers to remove this item
87 foreach (IScriptScheduler scheduler in RegionInfo.Schedulers.Values)
88 {
89 scheduler.Removecript(localID, itemID);
90 }
91 }
92 #endregion
93
94 }
95}