Produces environmental constants such as <code>Terminal</code> objects and <code>Door</code> objects.<br>
<br>
<code>ZoneMap</code> is the expected position where this class is defined.
Within <code>Zone.Init</code> is where this class is expected to be fully executed.
The former is a blueprint which provides as many emitted entities based on how many <code>Zone</code> objects utilize it.
<code>constructor</code> is required to have the form <code>(Int, ActorContext) => A</code> by the point where it executes
due to invocation of the <code>Build</code> method.
For that reason, it must exist in an <code>Actor</code> which has an <code>ActorContext</code> to lend, hence the <code>Zone</code>'s <code>Actor</code>.
Furthermore, the requirement of a <code>NumberPoolHub</code> means the region is accessible to and defined by
a closed number space, which is also the <code>Zone</code>.
It utilizes those qualities of the enclosing region to construct the entity within that region.<br>
Example: <code>new ServerBuilderObject[A](n, function)</code>, where <code>function</code> is a <code>(Int,Context)=>A</code></p></div><dlclass="paramcmts block"><dtclass="tparam">A</dt><ddclass="cmt"><p>any object that extends from PlanetSideServerObject that will be produced by this class;
can be inferred from the output of <code>constructor</code></p></dd></dl><dlclass="attributes block"><dt>Source</dt><dd><ahref="https://github.com/psforever/PSF-LoginServer/blob/master//home/runner/work/PSF-LoginServer/PSF-LoginServer/src/main/scala/net/psforever/objects/serverobject/ServerObjectBuilder.scala"target="_blank">ServerObjectBuilder.scala</a></dd><dt>See also</dt><dd><spanclass="cmt"><p><code>ZoneMap</code></p></span><spanclass="cmt"><p><code>Zone.Init</code></p></span></dd></dl><divclass="toggleContainer"><divclass="toggle block"><span>Linear Supertypes</span><divclass="superTypes hiddenContent"><spanname="scala.AnyRef"class="extype">AnyRef</span>, <spanname="scala.Any"class="extype">Any</span></div></div></div></div><divid="mbrsel"><divclass="toggle"></div><divid="memberfilter"><iclass="material-icons arrow"></i><spanclass="input"><inputplaceholder="Filter all members"id="mbrsel-input"type="text"accesskey="/"/></span><iclass="clear material-icons"></i></div><divid="filterby"><divid="order"><spanclass="filtertype">Ordering</span><ol><liclass="alpha in"><span>Alphabetic</span></li><liclass="inherit out"><span>By Inheritance</span></li></ol></div><divclass="ancestors"><spanclass="filtertype">Inherited<br/></span><olid="linearization"><liclass="in"name="net.psforever.objects.serverobject.ServerObjectBuilder"><span>ServerObjectBuilder</span></li><liclass="in"name="scala.AnyRef"><span>AnyRef</span></li><liclass="in"name="scala.Any"><span>Any</span></li></ol></div><divclass="ancestors"><spanclass="filtertype"></span><ol><liclass="hideall out"><span>Hide All</span></li><liclass="showall in"><span>Show All</span></li></ol></div><divid="visbl"><spanclass="filtertype">Visibility</span><ol><liclass="public in"><span>Public</span></li><liclass="protected out"><span>Protected</span></li></ol></div></div></div><divid="template"><divid="allMembers"><divid="constructors"class="members"><h3>Instance Constructors</h3><ol><liclass="indented0 "name="net.psforever.objects.serverobject.ServerObjectBuilder#<init>"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="<init>(id:Int,constructor:net.psforever.objects.serverobject.ServerObjectBuilder.ConstructorType[A]):net.psforever.objects.serverobject.ServerObjectBuilder[A]"></a><aid="<init>:ServerObjectBuilder[A]"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/serverobject/ServerObjectBuilder.html#<init>(id:Int,constructor:net.psforever.objects.serverobject.ServerObjectBuilder.ConstructorType[A]):net.psforever.objects.serverobject.ServerObjectBuilder[A]"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">new</span></span><spanclass="symbol"><spanclass="name">ServerObjectBuilder</span><spanclass="params">(<spanname="id">id: <spanname="scala.Int"class="extype">Int</span></span>, <spanname="constructor">constructor: <ahref="ServerObjectBuilder$.html#ConstructorType[A<:net.psforever.objects.serverobject.PlanetSideServerObject]=(Int,akka.actor.ActorContext)=>A"name="net.psforever.objects.serverobject.ServerObjectBuilder.ConstructorType"id="net.psforever.objects.serverobject.ServerObjectBuilder.ConstructorType"class="extmbr">ConstructorType</a>[<spanname="net.psforever.objects.serverobject.ServerObjectBuilder.A"class="extype">A</span>]</span>)</span></span><pclass="shortcomment cmt"></p><divclass="fullcomment"><divclass="comment cmt"></div><dlclass="paramcmts block"><dtclass="param">id</dt><ddclass="cmt"><p>the unique id that will be assigned to this entity</p></dd><dtclass="param">constructor</dt><ddclass="cmt"><p>the logic that initializes the emitted entity</p></dd></dl></div></li></ol></div><divclass="values members"><h3>Value Members</h3><ol><liclass="indented0 "name="scala.AnyRef#!="group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="!=(x$1:Any):Boolean"></a><aid="!=(Any):Boolean"></a><spanclass="perma
Specific configuration should have been handled by curried parameters into <code>constructor</code>, i.e.,
The main activity performed locally registers the created object to the provided number space.</p></div><dlclass="paramcmts block"><dtclass="param">context</dt><ddclass="cmt"><p>a context to allow the object to properly set up <code>ActorSystem</code> functionality;
defaults to <code>null</code></p></dd><dtclass="param">guid</dt><ddclass="cmt"><p>the local globally unique identifier system to complete the process of object introduction;
defaults to <code>null</code></p></dd><dt>returns</dt><ddclass="cmt"><p>the object that was created and integrated into the <code>Zone</code></p></dd></dl></div></li><liclass="indented0 "name="net.psforever.objects.serverobject.ServerObjectBuilder#Id"group="Ungrouped"fullComment="no"data-isabs="false"visbl="pub"><aid="Id:Int"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/serverobject/ServerObjectBuilder.html#Id:Int"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">Id</span><spanclass="result">: <spanname="scala.Int"class="extype">Int</span></span></span></li><liclass="indented0 "name="scala.Any#asInstanceOf"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="asInstanceOf[T0]:T0"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/serverobject/ServerObjectBuilder.html#asInstanceOf[T0]:T0"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier">final </span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">asInstanceOf</span><spanclass="tparams">[<spanname="T0">T0</span>]</span><spanclass="result">: <spanname="scala.Any.asInstanceOf.T0"class="extype">T0</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>Any</dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#clone"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="prt"><aid="clone():Object"></a><aid="clone():AnyRef"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/serverobject/ServerObjectBuilder.html#clone():Object"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">clone</span><spanclass="params">()</span><spanclass="result">: <spanname="scala.AnyRef"class="extype">AnyRef</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Attributes</dt><dd>protected[<spanname="java.lang"class="extype">lang</span>] </dd><dt>Definition Classes</dt><dd>AnyRef</dd><dt>Annotations</dt><dd><spanclass="name">@throws</span><spanclass="args">(<span><spanclass="defval">classOf[java.lang.CloneNotSupportedException]</span></span>)</span><spanclass="name">@native</span><spanclass="args">()</span></dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#eq"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="eq(x$1:AnyRef):Boolean"></a><aid="eq(AnyRef):Boolean"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/serverobject/ServerObjectBuilder.html#eq(x$1:AnyRef):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier">final </span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">eq</span><spanclass="params">(<spanname="arg0">arg0: <spanname="scala.AnyRef"class="extype">AnyRef</span></span>)</span><spanclass="result">: <spanname="scala.Boolean"class="extype">Boolean</span></span></span><divclass="fullcomment"><dlclass="attributes block"><dt>Definition Classes</dt><dd>AnyRef</dd></dl></div></li><liclass="indented0 "name="scala.AnyRef#equals"group="Ungrouped"fullComment="yes"data-isabs="false"visbl="pub"><aid="equals(x$1:Object):Boolean"></a><aid="equals(AnyRef):Boolean"></a><spanclass="permalink"><ahref="../../../../net/psforever/objects/serverobject/ServerObjectBuilder.html#equals(x$1:Object):Boolean"title="Permalink"><iclass="material-icons"></i></a></span><spanclass="modifier_kind"><spanclass="modifier"></span><spanclass="kind">def</span></span><spanclass="symbol"><spanclass="name">equals</span><spanclass="params">(<spanname="arg0">arg0: <spanname="scala.AnyRef"class="extype">AnyRef</span></span>)</span><spa