diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs')
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs | 41 |
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 | ||
32 | using OpenSim.Framework; | 32 | using OpenSim.Framework; |
33 | using OpenSim.Framework.Client; | 33 | using OpenSim.Framework.Client; |
34 | using OpenSim.Framework.Monitoring; | ||
34 | using OpenSim.Region.Framework.Interfaces; | 35 | using OpenSim.Region.Framework.Interfaces; |
35 | using OpenSim.Region.Framework.Scenes; | 36 | using OpenSim.Region.Framework.Scenes; |
36 | using OpenSim.Services.Connectors.Hypergrid; | 37 | using 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 | } |