mirror of
https://github.com/psforever/PSF-LoginServer.git
synced 2026-04-26 23:05:27 +00:00
38 lines
84 KiB
HTML
38 lines
84 KiB
HTML
|
|
<!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"><</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#<init>" group="Ungrouped" fullComment="no" data-isabs="false" visbl="pub"><a id="<init>():net.psforever.services.RemoverActor"></a><a id="<init>:RemoverActor"></a> <span class="permalink"><a href="../../../net/psforever/services/RemoverActor.html#<init>():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
|