aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs')
-rw-r--r--OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs41
1 files changed, 29 insertions, 12 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
index fceda80..fa23590 100644
--- a/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs
@@ -31,6 +31,7 @@ using System.Reflection;
31 31
32using OpenSim.Framework; 32using OpenSim.Framework;
33using OpenSim.Framework.Client; 33using OpenSim.Framework.Client;
34using OpenSim.Framework.Monitoring;
34using OpenSim.Region.Framework.Interfaces; 35using OpenSim.Region.Framework.Interfaces;
35using OpenSim.Region.Framework.Scenes; 36using OpenSim.Region.Framework.Scenes;
36using OpenSim.Services.Connectors.Hypergrid; 37using OpenSim.Services.Connectors.Hypergrid;
@@ -113,7 +114,7 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
113 /// <summary> 114 /// <summary>
114 /// Used for processing analysis of incoming attachments in a controlled fashion. 115 /// Used for processing analysis of incoming attachments in a controlled fashion.
115 /// </summary> 116 /// </summary>
116 private HGIncomingSceneObjectEngine m_incomingSceneObjectEngine; 117 private JobEngine m_incomingSceneObjectEngine;
117 118
118 #region ISharedRegionModule 119 #region ISharedRegionModule
119 120
@@ -160,7 +161,24 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
160 scene.RegisterModuleInterface<IUserAgentVerificationModule>(this); 161 scene.RegisterModuleInterface<IUserAgentVerificationModule>(this);
161 //scene.EventManager.OnIncomingSceneObject += OnIncomingSceneObject; 162 //scene.EventManager.OnIncomingSceneObject += OnIncomingSceneObject;
162 163
163 m_incomingSceneObjectEngine = new HGIncomingSceneObjectEngine(scene.Name); 164 m_incomingSceneObjectEngine
165 = new JobEngine(
166 string.Format("HG Incoming Scene Object Engine ({0})", scene.Name),
167 "HG INCOMING SCENE OBJECT ENGINE");
168
169 StatsManager.RegisterStat(
170 new Stat(
171 "HGIncomingAttachmentsWaiting",
172 "Number of incoming attachments waiting for processing.",
173 "",
174 "",
175 "entitytransfer",
176 Name,
177 StatType.Pull,
178 MeasuresOfInterest.None,
179 stat => stat.Value = m_incomingSceneObjectEngine.JobsWaiting,
180 StatVerbosity.Debug));
181
164 m_incomingSceneObjectEngine.Start(); 182 m_incomingSceneObjectEngine.Start();
165 } 183 }
166 } 184 }
@@ -548,11 +566,11 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
548 566
549 private void RemoveIncomingSceneObjectJobs(string commonIdToRemove) 567 private void RemoveIncomingSceneObjectJobs(string commonIdToRemove)
550 { 568 {
551 List<Job> jobsToReinsert = new List<Job>(); 569 List<JobEngine.Job> jobsToReinsert = new List<JobEngine.Job>();
552 int jobsRemoved = 0; 570 int jobsRemoved = 0;
553 571
554 Job job; 572 JobEngine.Job job;
555 while ((job = m_incomingSceneObjectEngine.RemoveNextRequest()) != null) 573 while ((job = m_incomingSceneObjectEngine.RemoveNextJob()) != null)
556 { 574 {
557 if (job.CommonId != commonIdToRemove) 575 if (job.CommonId != commonIdToRemove)
558 jobsToReinsert.Add(job); 576 jobsToReinsert.Add(job);
@@ -566,8 +584,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
566 584
567 if (jobsToReinsert.Count > 0) 585 if (jobsToReinsert.Count > 0)
568 { 586 {
569 foreach (Job jobToReinsert in jobsToReinsert) 587 foreach (JobEngine.Job jobToReinsert in jobsToReinsert)
570 m_incomingSceneObjectEngine.QueueRequest(jobToReinsert); 588 m_incomingSceneObjectEngine.QueueJob(jobToReinsert);
571 } 589 }
572 } 590 }
573 591
@@ -594,10 +612,9 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
594 { 612 {
595 if (aCircuit.ServiceURLs != null && aCircuit.ServiceURLs.ContainsKey("AssetServerURI")) 613 if (aCircuit.ServiceURLs != null && aCircuit.ServiceURLs.ContainsKey("AssetServerURI"))
596 { 614 {
597 m_incomingSceneObjectEngine.QueueRequest( 615 m_incomingSceneObjectEngine.QueueJob(
598 string.Format("HG UUID Gather for attachment {0} for {1}", so.Name, aCircuit.Name), 616 string.Format("HG UUID Gather for attachment {0} for {1}", so.Name, aCircuit.Name),
599 so.OwnerID.ToString(), 617 () =>
600 o =>
601 { 618 {
602 string url = aCircuit.ServiceURLs["AssetServerURI"].ToString(); 619 string url = aCircuit.ServiceURLs["AssetServerURI"].ToString();
603 // m_log.DebugFormat( 620 // m_log.DebugFormat(
@@ -663,8 +680,8 @@ namespace OpenSim.Region.CoreModules.Framework.EntityTransfer
663 // m_log.DebugFormat( 680 // m_log.DebugFormat(
664 // "[HG ENTITY TRANSFER MODULE]: Completed incoming attachment {0} for HG user {1} with asset server {2}", 681 // "[HG ENTITY TRANSFER MODULE]: Completed incoming attachment {0} for HG user {1} with asset server {2}",
665 // so.Name, so.OwnerID, url); 682 // so.Name, so.OwnerID, url);
666 }, 683 },
667 null); 684 so.OwnerID.ToString());
668 } 685 }
669 } 686 }
670 } 687 }