PSF-LoginServer/net/psforever/services/RemoverActor.html

38 lines
84 KiB
HTML
Raw Normal View History

<!DOCTYPE html ><html><head><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport"/><title>PSF-LoginServer - master - net.psforever.services.RemoverActor</title><meta content="PSF - LoginServer - master - net.psforever.services.RemoverActor" name="description"/><meta content="PSF LoginServer master net.psforever.services.RemoverActor" name="keywords"/><meta http-equiv="content-type" content="text/html; charset=UTF-8"/><link href="../../../lib/index.css" media="screen" type="text/css" rel="stylesheet"/><link href="../../../lib/template.css" media="screen" type="text/css" rel="stylesheet"/><link href="../../../lib/print.css" media="print" type="text/css" rel="stylesheet"/><link href="../../../lib/diagrams.css" media="screen" type="text/css" rel="stylesheet" id="diagrams-css"/><script type="text/javascript" src="../../../lib/jquery.min.js"></script><script type="text/javascript" src="../../../lib/index.js"></script><script type="text/javascript" src="../../../index.js"></script><script type="text/javascript" src="../../../lib/scheduler.js"></script><script type="text/javascript" src="../../../lib/template.js"></script><script type="text/javascript">/* this variable can be used by the JS to determine the path to the root document */
var toRoot = '../../../';</script></head><body><div id="search"><span id="doc-title">PSF-LoginServer - <span id="doc-version">master</span></span> <span class="close-results"><span class="left">&lt;</span> Back</span><div id="textfilter"><span class="input"><input autocapitalize="none" placeholder="Search" id="index-input" type="text" accesskey="/"/><i class="clear material-icons"></i><i id="search-icon" class="material-icons"></i></span></div></div><div id="search-results"><div id="search-progress"><div id="progress-fill"></div></div><div id="results-content"><div id="entity-results"></div><div id="member-results"></div></div></div><div id="content-scroll-container" style="-webkit-overflow-scrolling: touch;"><div id="content-container" style="-webkit-overflow-scrolling: touch;"><div id="subpackage-spacer"><div id="packages"><h1>Packages</h1><ul><li class="indented0 " name="_root_.root" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="_root_"></a><a id="root:_root_"></a> <span class="permalink"><a href="../../../index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="../../../index.html" title=""><span class="name">root</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../../../index.html" name="_root_" id="_root_" class="extype">root</a></dd></dl></div></li><li class="indented1 " name="_root_.net" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="net"></a><a id="net:net"></a> <span class="permalink"><a href="../../../net/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="../../index.html" title=""><span class="name">net</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../../../index.html" name="_root_" id="_root_" class="extype">root</a></dd></dl></div></li><li class="indented2 " name="net.psforever" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="psforever"></a><a id="psforever:psforever"></a> <span class="permalink"><a href="../../../net/psforever/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="../index.html" title=""><span class="name">psforever</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../../index.html" name="net" id="net" class="extype">net</a></dd></dl></div></li><li class="indented3 " name="net.psforever.services" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="services"></a><a id="services:services"></a> <span class="permalink"><a href="../../../net/psforever/services/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="index.html" title=""><span class="name">services</span></a></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="../index.html" name="net.psforever" id="net.psforever" class="extype">psforever</a></dd></dl></div></li><li class="indented4 " name="net.psforever.services.account" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="account"></a><a id="account:account"></a> <span class="permalink"><a href="../../../net/psforever/services/account/index.html" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">package</span></span> <span class="symbol"><a href="account/index.html" title=""><span class="name">account</span></a></span><div class="fullcomme
Objects submitted to this process should be registered to a global unique identified system for a given region
as is specified in their submission.<br>
<br>
Two waiting lists are used to pool the objects being removed.
The first list is a basic pooling list that precludes any proper removal actions
and is almost expressly for delaying the process.
Previously-submitted tasks can be removed from this list so long as a matching object can be found.
Tasks in this list can also be expedited into the second list without having to consider delays.
After being migrated to the secondary list, the object is considered beyond the point of no return.
Followup activity will lead to its inevitable unregistering and removal.<br>
<br>
Functions have been provided for <code>override</code> in order to interject the appropriate cleanup operations.
The activity itself is typically removing the object in question from a certain list,
dismissing it with a mass distribution of <code>ObjectDeleteMessage</code> packets,
and finally unregistering it.
Some types of object have (de-)implementation variations which should be made explicit through the overrides.
</p></div><dl class="attributes block"><dt>Source</dt><dd><a href="https://github.com/psforever/PSF-LoginServer/blob/master//home/runner/work/PSF-LoginServer/PSF-LoginServer/src/main/scala/net/psforever/services/RemoverActor.scala" target="_blank">RemoverActor.scala</a></dd></dl><div class="toggleContainer"><div class="toggle block"><span>Linear Supertypes</span><div class="superTypes hiddenContent"><a href="support/SupportActor.html" name="net.psforever.services.support.SupportActor" id="net.psforever.services.support.SupportActor" class="extype">SupportActor</a>[<a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a>], <span name="akka.actor.Actor" class="extype">Actor</span>, <span name="scala.AnyRef" class="extype">AnyRef</span>, <span name="scala.Any" class="extype">Any</span></div></div></div><div class="toggleContainer"><div class="toggle block"><span>Known Subclasses</span><div class="subClasses hiddenContent"><a href="avatar/support/CorpseRemovalActor.html" name="net.psforever.services.avatar.support.CorpseRemovalActor" id="net.psforever.services.avatar.support.CorpseRemovalActor" class="extype">CorpseRemovalActor</a>, <a href="avatar/support/DroppedItemRemover.html" name="net.psforever.services.avatar.support.DroppedItemRemover" id="net.psforever.services.avatar.support.DroppedItemRemover" class="extype">DroppedItemRemover</a>, <a href="local/support/DeployableRemover.html" name="net.psforever.services.local.support.DeployableRemover" id="net.psforever.services.local.support.DeployableRemover" class="extype">DeployableRemover</a></div></div></div></div><div id="mbrsel"><div class="toggle"></div><div id="memberfilter"><i class="material-icons arrow"></i><span class="input"><input placeholder="Filter all members" id="mbrsel-input" type="text" accesskey="/"/></span><i class="clear material-icons"></i></div><div id="filterby"><div id="order"><span class="filtertype">Ordering</span><ol><li class="alpha in"><span>Alphabetic</span></li><li class="inherit out"><span>By Inheritance</span></li></ol></div><div class="ancestors"><span class="filtertype">Inherited<br/></span><ol id="linearization"><li class="in" name="net.psforever.services.RemoverActor"><span>RemoverActor</span></li><li class="in" name="net.psforever.services.support.SupportActor"><span>SupportActor</span></li><li class="in" name="akka.actor.Actor"><span>Actor</span></li><li class="in" name="scala.AnyRef"><span>AnyRef</span></li><li class="in" name="scala.Any"><span>Any</span></li></ol></div><div class="ancestors"><span class="filtertype"></span><ol><li class="hideall out"><span>Hide All</span></li><li class="showall in"><span>Show All</span></li></ol></div><div id="visbl"><span class="filtertype">Visibility</span><ol><li class="public in"><span>Public</span></li><li class="protected out"><span>Protected</span></li></ol></div></div></div><div id="template"><div id="allMembers"><div id="constructors" class="members"><h3>Instance Constructors</h3><ol><li class="indented0 " name="net.psforever.services.RemoverActor#&lt;init&gt;" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="&lt;init&gt;():net.psforever.services.RemoverActor"></a><a id="&lt;init&gt;:RemoverActor"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#&lt;init&gt;():net.psforever.services.RemoverActor" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">new</span></span> <span class="symbol"><span class="name">RemoverActor</span><span class="params">()</span></span></li></ol></div><div id="types" class="types members"><h3>Type Members</h3><ol><li class="indented0 " name="akka.actor.Actor.Receive" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="Receive=akka.actor.Actor.Receive"></a><a id="Receive:Receive"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#Receive=akka.actor.Actor.Re
Override.</p></div><dl class="paramcmts block"><dt class="param">entry</dt><dd class="cmt"><p>the entry</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#DeletionTask" group="Ungrouped" fullComment="yes" data-isabs="true" visbl="pub"><a id="DeletionTask(entry:net.psforever.services.RemoverActor.Entry):net.psforever.objects.guid.TaskResolver.GiveTask"></a><a id="DeletionTask(Entry):GiveTask"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#DeletionTask(entry:net.psforever.services.RemoverActor.Entry):net.psforever.objects.guid.TaskResolver.GiveTask" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">abstract </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">DeletionTask</span><span class="params">(<span name="entry">entry: <a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a></span>)</span><span class="result">: <a href="../objects/guid/TaskResolver$$GiveTask.html" name="net.psforever.objects.guid.TaskResolver.GiveTask" id="net.psforever.objects.guid.TaskResolver.GiveTask" class="extype">GiveTask</a></span></span><p class="shortcomment cmt">The specific action that is necessary to complete the removal process.</p><div class="fullcomment"><div class="comment cmt"><p>The specific action that is necessary to complete the removal process.
Override.</p></div><dl class="paramcmts block"><dt class="param">entry</dt><dd class="cmt"><p>the entry</p></dd></dl><dl class="attributes block"><dt>See also</dt><dd><span class="cmt"><p><code>GUIDTask</code></p></span></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#FirstJob" group="Ungrouped" fullComment="yes" data-isabs="true" visbl="pub"><a id="FirstJob(entry:net.psforever.services.RemoverActor.Entry):Unit"></a><a id="FirstJob(Entry):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#FirstJob(entry:net.psforever.services.RemoverActor.Entry):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">abstract </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">FirstJob</span><span class="params">(<span name="entry">entry: <a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Performed when the entry is shifted from the first list to the second list.</p><div class="fullcomment"><div class="comment cmt"><p>Performed when the entry is shifted from the first list to the second list.
Override.</p></div><dl class="paramcmts block"><dt class="param">entry</dt><dd class="cmt"><p>the entry</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#FirstStandardDuration" group="Ungrouped" fullComment="yes" data-isabs="true" visbl="pub"><a id="FirstStandardDuration:scala.concurrent.duration.FiniteDuration"></a><a id="FirstStandardDuration:FiniteDuration"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#FirstStandardDuration:scala.concurrent.duration.FiniteDuration" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">abstract </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">FirstStandardDuration</span><span class="result">: <span name="scala.concurrent.duration.FiniteDuration" class="extype">FiniteDuration</span></span></span><p class="shortcomment cmt">Default time for entries waiting in the first list.</p><div class="fullcomment"><div class="comment cmt"><p>Default time for entries waiting in the first list.
Override.</p></div><dl class="paramcmts block"><dt>returns</dt><dd class="cmt"><p>the time as a <code>FiniteDuration</code> object (to be later transformed into nanoseconds)</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.support.SupportActor#InclusionTest" group="Ungrouped" fullComment="yes" data-isabs="true" visbl="pub"><a id="InclusionTest(entry:A):Boolean"></a><a id="InclusionTest(Entry):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#InclusionTest(entry:A):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">abstract </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">InclusionTest</span><span class="params">(<span name="entry">entry: <a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><p class="shortcomment cmt">Determine whether or not the resulting entry is valid for this process.</p><div class="fullcomment"><div class="comment cmt"><p>Determine whether or not the resulting entry is valid for this process.
The primary purpose of this function should be to determine if the appropriate type of object is being submitted.
Override.</p></div><dl class="paramcmts block"><dt class="param">entry</dt><dd class="cmt"><p>the entry</p></dd><dt>returns</dt><dd class="cmt"><p><code>true</code>, if it can be processed; <code>false</code>, otherwise</p></dd></dl><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="support/SupportActor.html" name="net.psforever.services.support.SupportActor" id="net.psforever.services.support.SupportActor" class="extype">SupportActor</a></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#InitialJob" group="Ungrouped" fullComment="yes" data-isabs="true" visbl="pub"><a id="InitialJob(entry:net.psforever.services.RemoverActor.Entry):Unit"></a><a id="InitialJob(Entry):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#InitialJob(entry:net.psforever.services.RemoverActor.Entry):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">abstract </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">InitialJob</span><span class="params">(<span name="entry">entry: <a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Performed when the entry is initially added to the first list.</p><div class="fullcomment"><div class="comment cmt"><p>Performed when the entry is initially added to the first list.
Override.</p></div><dl class="paramcmts block"><dt class="param">entry</dt><dd class="cmt"><p>the entry</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#SecondStandardDuration" group="Ungrouped" fullComment="yes" data-isabs="true" visbl="pub"><a id="SecondStandardDuration:scala.concurrent.duration.FiniteDuration"></a><a id="SecondStandardDuration:FiniteDuration"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#SecondStandardDuration:scala.concurrent.duration.FiniteDuration" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">abstract </span> <span class="kind">def</span></span> <span class="symbol"><span class="name">SecondStandardDuration</span><span class="result">: <span name="scala.concurrent.duration.FiniteDuration" class="extype">FiniteDuration</span></span></span><p class="shortcomment cmt">Default time for entries waiting in the second list.</p><div class="fullcomment"><div class="comment cmt"><p>Default time for entries waiting in the second list.
Override.</p></div><dl class="paramcmts block"><dt>returns</dt><dd class="cmt"><p>the time as a <code>FiniteDuration</code> object (to be later transformed into nanoseconds)</p></dd></dl></div></li></ol></div><div class="values members"><h3>Concrete Value Members</h3><ol><li class="indented0 " name="scala.AnyRef#!=" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="!=(x$1:Any):Boolean"></a><a id="!=(Any):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#!=(x$1:Any):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $bang$eq">!=</span><span class="params">(<span name="arg0">arg0: <span name="scala.Any" class="extype">Any</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef###" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="##:Int"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html###:Int" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $hash$hash">##</span><span class="result">: <span name="scala.Int" class="extype">Int</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="scala.AnyRef#==" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="==(x$1:Any):Boolean"></a><a id="==(Any):Boolean"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#==(x$1:Any):Boolean" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier">final </span> <span class="kind">def</span></span> <span class="symbol"><span class="name" title="gt4s: $eq$eq">==</span><span class="params">(<span name="arg0">arg0: <span name="scala.Any" class="extype">Any</span></span>)</span><span class="result">: <span name="scala.Boolean" class="extype">Boolean</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>AnyRef → Any</dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#ClearAll" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="ClearAll():Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#ClearAll():Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">ClearAll</span><span class="params">()</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">No entries in the first pool.</p><div class="fullcomment"><div class="comment cmt"><p>No entries in the first pool.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="" name="net.psforever.services.RemoverActor" id="net.psforever.services.RemoverActor" class="extype">RemoverActor</a><a href="support/SupportActor.html" name="net.psforever.services.support.SupportActor" id="net.psforever.services.support.SupportActor" class="extype">SupportActor</a></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#ClearSpecific" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="ClearSpecific(targets:List[net.psforever.objects.PlanetSideGameObject],zone:net.psforever.objects.zones.Zone):Unit"></a><a id="ClearSpecific(List[PlanetSideGameObject],Zone):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#ClearSpecific(targets:List[net.psforever.objects.PlanetSideGameObject],zone:net.psforever.objects.zones.Zone):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">ClearSpecific</span><span class="params">(<span name="targets">targets: <span name="scala.List" class="extype">List</span>[<a href="../objects/PlanetSideGameObject.html" name="net.psforever.objects.PlanetSideGameObject" id="net.psforever.objects.PlanetSideGameObject" class="extype">PlanetSideGameObject</a>]</span>, <span name="zone">zone: <a href="../objects/zones/Zone.html" name="net.psforever.objects.zones.Zone" id="net.psforever.objects.zones.Zone" class="extype">Zone</a></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Remove specific entries from the first pool.</p><div class="fullcomment"><div class="comment cmt"><p>Remove specific entries from the first pool.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="" name="net.psforever.services.RemoverActor" id="net.psforever.services.RemoverActor" class="extype">RemoverActor</a><a href="support/SupportActor.html" name="net.psforever.services.support.SupportActor" id="net.psforever.services.support.SupportActor" class="extype">SupportActor</a></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#FinalTask" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="FinalTask(entry:net.psforever.services.RemoverActor.Entry):net.psforever.objects.guid.TaskResolver.GiveTask"></a><a id="FinalTask(Entry):GiveTask"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#FinalTask(entry:net.psforever.services.RemoverActor.Entry):net.psforever.objects.guid.TaskResolver.GiveTask" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">FinalTask</span><span class="params">(<span name="entry">entry: <a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a></span>)</span><span class="result">: <a href="../objects/guid/TaskResolver$$GiveTask.html" name="net.psforever.objects.guid.TaskResolver.GiveTask" id="net.psforever.objects.guid.TaskResolver.GiveTask" class="extype">GiveTask</a></span></span></li><li class="indented0 " name="net.psforever.services.RemoverActor#HurryAll" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="HurryAll():Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#HurryAll():Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">HurryAll</span><span class="params">()</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Expedite all entries from the first pool into the second.</p><div class="fullcomment"><div class="comment cmt"><p>Expedite all entries from the first pool into the second.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="" name="net.psforever.services.RemoverActor" id="net.psforever.services.RemoverActor" class="extype">RemoverActor</a><a href="support/SupportActor.html" name="net.psforever.services.support.SupportActor" id="net.psforever.services.support.SupportActor" class="extype">SupportActor</a></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#HurrySpecific" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="HurrySpecific(targets:List[net.psforever.objects.PlanetSideGameObject],zone:net.psforever.objects.zones.Zone):Unit"></a><a id="HurrySpecific(List[PlanetSideGameObject],Zone):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#HurrySpecific(targets:List[net.psforever.objects.PlanetSideGameObject],zone:net.psforever.objects.zones.Zone):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">HurrySpecific</span><span class="params">(<span name="targets">targets: <span name="scala.List" class="extype">List</span>[<a href="../objects/PlanetSideGameObject.html" name="net.psforever.objects.PlanetSideGameObject" id="net.psforever.objects.PlanetSideGameObject" class="extype">PlanetSideGameObject</a>]</span>, <span name="zone">zone: <a href="../objects/zones/Zone.html" name="net.psforever.objects.zones.Zone" id="net.psforever.objects.zones.Zone" class="extype">Zone</a></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Expedite some entries from the first pool into the second.</p><div class="fullcomment"><div class="comment cmt"><p>Expedite some entries from the first pool into the second.</p></div><dl class="paramcmts block"><dt class="param">targets</dt><dd class="cmt"><p>a list of objects to pick</p></dd><dt class="param">zone</dt><dd class="cmt"><p>the zone in which these objects must be discovered;
all targets must be in this zone, with the assumption that this is the zone where they were registered</p></dd></dl><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="" name="net.psforever.services.RemoverActor" id="net.psforever.services.RemoverActor" class="extype">RemoverActor</a><a href="support/SupportActor.html" name="net.psforever.services.support.SupportActor" id="net.psforever.services.support.SupportActor" class="extype">SupportActor</a></dd></dl></div></li><li class="indented0 " name="net.psforever.services.support.SupportActor#PartitionTargetsFromList" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="PartitionTargetsFromList(list:List[A],targets:List[A],zone:net.psforever.objects.zones.Zone,comparator:net.psforever.services.support.SimilarityComparator[A]):(List[A],List[A])"></a><a id="PartitionTargetsFromList(List[Entry],List[Entry],Zone,SimilarityComparator[Entry]):(List[Entry],List[Entry])"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#PartitionTargetsFromList(list:List[A],targets:List[A],zone:net.psforever.objects.zones.Zone,comparator:net.psforever.services.support.SimilarityComparator[A]):(List[A],List[A])" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">PartitionTargetsFromList</span><span class="params">(<span name="list">list: <span name="scala.List" class="extype">List</span>[<a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a>]</span>, <span name="targets">targets: <span name="scala.List" class="extype">List</span>[<a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a>]</span>, <span name="zone">zone: <a href="../objects/zones/Zone.html" name="net.psforever.objects.zones.Zone" id="net.psforever.objects.zones.Zone" class="extype">Zone</a></span>, <span name="comparator">comparator: <a href="support/SimilarityComparator.html" name="net.psforever.services.support.SimilarityComparator" id="net.psforever.services.support.SimilarityComparator" class="extype">SimilarityComparator</a>[<a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a>] = <span class="symbol"><span class="name"><a href="support/SupportActor.html#sameEntryComparator:net.psforever.services.support.SimilarityComparator[A]">sameEntryComparator</a></span></span></span>)</span><span class="result">: (<span name="scala.List" class="extype">List</span>[<a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a>], <span name="scala.List" class="extype">List</span>[<a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a>])</span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="support/SupportActor.html" name="net.psforever.services.support.SupportActor" id="net.psforever.services.support.SupportActor" class="extype">SupportActor</a></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#Processing" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="Processing:RemoverActor.this.Receive"></a><a id="Processing:Receive"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#Processing:RemoverActor.this.Receive" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">Processing</span><span class="result">: <a href="#Receive=akka.actor.Ac
Cancels the scheduled timer and will only restart the timer if there is at least one entry in the first pool.</p></div><dl class="paramcmts block"><dt class="param">now</dt><dd class="cmt"><p>the time (in nanoseconds);
defaults to the current time (in nanoseconds)</p></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#SecondJob" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="SecondJob(entry:net.psforever.services.RemoverActor.Entry):Unit"></a><a id="SecondJob(Entry):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#SecondJob(entry:net.psforever.services.RemoverActor.Entry):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">SecondJob</span><span class="params">(<span name="entry">entry: <a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span></li><li class="indented0 " name="akka.actor.Actor#aroundPostRestart" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="prt"><a id="aroundPostRestart(reason:Throwable):Unit"></a><a id="aroundPostRestart(Throwable):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#aroundPostRestart(reason:Throwable):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">aroundPostRestart</span><span class="params">(<span name="reason">reason: <span name="scala.Throwable" class="extype">Throwable</span></span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Attributes</dt><dd>protected[<a href="../../../akka/index.html" name="akka" id="akka" class="extype">akka</a>] </dd><dt>Definition Classes</dt><dd>Actor</dd><dt>Annotations</dt><dd><span class="name">@InternalApi</span><span class="args">()</span> </dd></dl></div></li><li class="indented0 " name="akka.actor.Actor#aroundPostStop" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="prt"><a id="aroundPostStop():Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#aroundPostStop():Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">aroundPostStop</span><span class="params">()</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Attributes</dt><dd>protected[<a href="../../../akka/index.html" name="akka" id="akka" class="extype">akka</a>] </dd><dt>Definition Classes</dt><dd>Actor</dd><dt>Annotations</dt><dd><span class="name">@InternalApi</span><span class="args">()</span> </dd></dl></div></li><li class="indented0 " name="akka.actor.Actor#aroundPreRestart" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="prt"><a id="aroundPreRestart(reason:Throwable,message:Option[Any]):Unit"></a><a id="aroundPreRestart(Throwable,Option[Any]):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#aroundPreRestart(reason:Throwable,message:Option[Any]):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">aroundPreRestart</span><span class="params">(<span name="reason">reason: <span name="scala.Throwable" class="extype">Throwable</span></span>, <span name="message">message: <span name="scala.Option" class="extype">Option</span>[<span name="scala.Any" class="extype">Any</span>]</span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"
Cancel all timers, rush all entries in the lists through their individual steps, then empty the lists.
This is an improved <code>HurryAll</code>, but still faster since it also railroads entries through the second queue as well.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="" name="net.psforever.services.RemoverActor" id="net.psforever.services.RemoverActor" class="extype">RemoverActor</a> → Actor</dd></dl></div></li><li class="indented0 " name="akka.actor.Actor#preRestart" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="preRestart(reason:Throwable,message:Option[Any]):Unit"></a><a id="preRestart(Throwable,Option[Any]):Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#preRestart(reason:Throwable,message:Option[Any]):Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">preRestart</span><span class="params">(<span name="reason">reason: <span name="scala.Throwable" class="extype">Throwable</span></span>, <span name="message">message: <span name="scala.Option" class="extype">Option</span>[<span name="scala.Any" class="extype">Any</span>]</span>)</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd>Actor</dd><dt>Annotations</dt><dd><span class="name">@throws</span><span class="args">(<span><span class="symbol">classOf[java.lang.Exception]</span></span>)</span> </dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#preStart" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="preStart():Unit"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#preStart():Unit" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">preStart</span><span class="params">()</span><span class="result">: <span name="scala.Unit" class="extype">Unit</span></span></span><p class="shortcomment cmt">Send the initial message that requests a task resolver for assisting in the removal process.</p><div class="fullcomment"><div class="comment cmt"><p>Send the initial message that requests a task resolver for assisting in the removal process.
</p></div><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="" name="net.psforever.services.RemoverActor" id="net.psforever.services.RemoverActor" class="extype">RemoverActor</a> → Actor</dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#receive" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="receive:RemoverActor.this.Receive"></a><a id="receive:Receive"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#receive:RemoverActor.this.Receive" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">def</span></span> <span class="symbol"><span class="name">receive</span><span class="result">: <a href="#Receive=akka.actor.Actor.Receive" name="net.psforever.services.RemoverActor.Receive" id="net.psforever.services.RemoverActor.Receive" class="extmbr">Receive</a></span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="" name="net.psforever.services.RemoverActor" id="net.psforever.services.RemoverActor" class="extype">RemoverActor</a> → Actor</dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#sameEntryComparator" group="Ungrouped" fullComment="yes" data-isabs="false" visbl="pub"><a id="sameEntryComparator:net.psforever.services.support.SimilarityComparator[net.psforever.services.RemoverActor.Entry]"></a><a id="sameEntryComparator:SimilarityComparator[Entry]"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#sameEntryComparator:net.psforever.services.support.SimilarityComparator[net.psforever.services.RemoverActor.Entry]" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">val</span></span> <span class="symbol"><span class="name">sameEntryComparator</span><span class="result">: <a href="support/SimilarityComparator.html" name="net.psforever.services.support.SimilarityComparator" id="net.psforever.services.support.SimilarityComparator" class="extype">SimilarityComparator</a>[<a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a>]</span></span><div class="fullcomment"><dl class="attributes block"><dt>Definition Classes</dt><dd><a href="" name="net.psforever.services.RemoverActor" id="net.psforever.services.RemoverActor" class="extype">RemoverActor</a><a href="support/SupportActor.html" name="net.psforever.services.support.SupportActor" id="net.psforever.services.support.SupportActor" class="extype">SupportActor</a></dd></dl></div></li><li class="indented0 " name="net.psforever.services.RemoverActor#secondHeap" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="secondHeap:List[net.psforever.services.RemoverActor.Entry]"></a><a id="secondHeap:List[Entry]"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#secondHeap:List[net.psforever.services.RemoverActor.Entry]" title="Permalink"><i class="material-icons"></i></a></span> <span class="modifier_kind"><span class="modifier"></span> <span class="kind">var</span></span> <span class="symbol"><span class="name">secondHeap</span><span class="result">: <span name="scala.List" class="extype">List</span>[<a href="RemoverActor$$Entry.html" name="net.psforever.services.RemoverActor.Entry" id="net.psforever.services.RemoverActor.Entry" class="extype">Entry</a>]</span></span><p class="shortcomment cmt">The second pool of objects waiting to be processed for removal.</p></li><li class="indented0 " name="net.psforever.services.RemoverActor#secondTask" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="secondTask:akka.actor.Cancellable"></a><a id="secondTask:Cancellable"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#secondTask:akka.actor.Cancellable" title="Permali