Packages

class VehicleSpawnControl extends VehicleSpawnControlBase with Check

An Actor that handles vehicle spawning orders for a VehicleSpawnPad entity. The basic VehicleSpawnControl is the root of a sequence of "spawn control" objects that chain to each other. Each object performs one (or more related) actions upon the vehicle order that was submitted.

The purpose of the base actor is to serve as the entry point for the spawning process and to manage the order queue. A spawn pad receives vehicle orders from a related Terminal object. The control object accepts orders, enqueues them, and, whenever prompted by a previous complete order or by an absence of active orders, will select the first available order to be completed. This order will be "tracked" and will be given to the first functional "spawn control" object of the process. If the process is completed, or is ever aborted by any of the subsequent tasks, control will propagate down back to this control object. At this time, (or) once again, a new order can be submitted or will be selected.

Source
VehicleSpawnControl.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. VehicleSpawnControl
  2. Check
  3. BasicAffinity
  4. VehicleSpawnControlBase
  5. Actor
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new VehicleSpawnControl(pad: VehicleSpawnPad)

    pad

    the VehicleSpawnPad object being governed

Type Members

  1. type Receive = PartialFunction[Any, Unit]
    Definition Classes
    Actor

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def BlockedReminder(blockedOrder: Order, recipients: Seq[VehicleOrder]): Unit

    na

    na

    blockedOrder

    the previous order whose vehicle is blocking the spawn pad from operating

    recipients

    all of the other customers who will be receiving the message

  5. def CancelOrder(vehicle: Vehicle, player: Player, msg: Option[String]): Unit

    Cancel this vehicle order and inform the person who made it, if possible.

    Cancel this vehicle order and inform the person who made it, if possible.

    vehicle

    the vehicle from the order being cancelled

    player

    the player who would driver the vehicle from the order being cancelled

  6. def CancelOrder(entry: VehicleOrder, msg: Option[String]): Unit

    Cancel this vehicle order and inform the person who made it, if possible.

    Cancel this vehicle order and inform the person who made it, if possible.

    entry

    the order being cancelled

  7. def CancelOrder(entry: Order, msg: Option[String]): Unit

    Cancel this vehicle order and inform the person who made it, if possible.

    Cancel this vehicle order and inform the person who made it, if possible.

    entry

    the order being cancelled

  8. def FactionObject: FactionAffinity
    Definition Classes
    VehicleSpawnControlBasicAffinity
  9. def LogId: String

    Implement this to add a suffix to the identifying name of the logger.

    Implement this to add a suffix to the identifying name of the logger.

    returns

    a special identifier that distinguishes a logger whose name is built of common features

    Definition Classes
    VehicleSpawnControlVehicleSpawnControlBase
  10. def NewTasking(order: VehicleOrder): Unit

    Take this order - the "first order" - and immediately begin processing it.

    Take this order - the "first order" - and immediately begin processing it. All orders accepted in the meantime will be queued and a note about priority will be issued.

    order

    the order being accepted

  11. def ProcessOrder(order: Option[VehicleOrder]): Unit

    If a new order is accepted, begin processing it.

    If a new order is accepted, begin processing it. Inform all customers whose orders are still queued of their priority number and activate the guard to ensure multiple orders don't get processed at the same time.

    order

    the order being accepted; None, if no order found or submitted

  12. def QueuedTasking(order: VehicleOrder): Unit

    While an order is being processed, all orders accepted in the meantime will be queued and a note about priority will be issued.

    While an order is being processed, all orders accepted in the meantime will be queued and a note about priority will be issued.

    order

    the order being accepted

  13. def SelectFirstOrder(): Option[VehicleOrder]

    Select the next-available queued order if there is no current order being fulfilled.

    Select the next-available queued order if there is no current order being fulfilled. If the queue has been exhausted, set functionality to prepare to accept the next order as a "first order."

    returns

    the next-available order

  14. def SelectOrder(): Unit

    Select the next available queued order and begin processing it.

  15. def aroundPostRestart(reason: Throwable): Unit
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  16. def aroundPostStop(): Unit
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  17. def aroundPreRestart(reason: Throwable, message: Option[Any]): Unit
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  18. def aroundPreStart(): Unit
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  19. def aroundReceive(receive: akka.actor.Actor.Receive, msg: Any): Unit
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  20. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  21. val checkBehavior: Receive
    Definition Classes
    Check
  22. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  23. val concealPlayer: ActorRef

    The first chained action of the vehicle spawning process.

  24. implicit val context: ActorContext
    Definition Classes
    Actor
  25. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  27. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  28. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  29. var handleOrderFunc: (VehicleOrder) => Unit

    how to process either the first order or every subsequent order

  30. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  31. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  32. def log: Logger

    Act as if a variable for the logging agent.

    Act as if a variable for the logging agent.

    returns

    a Logger object

    Definition Classes
    VehicleSpawnControlBase
  33. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  34. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  35. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  36. def orderCredentialsCheck(recipients: Iterable[VehicleOrder]): Iterable[VehicleOrder]

    For all orders, ensure that that order's details match acceptable specifications and partition all orders that should be cancelled for one reason or another.

    For all orders, ensure that that order's details match acceptable specifications and partition all orders that should be cancelled for one reason or another. Generate informative error messages for the failing orders, cancel those partitioned orders, and only return all orders that are still valid.

    recipients

    the original list of orders

    returns

    the list of still-acceptable orders

  37. var orders: List[VehicleOrder]

    a list of vehicle orders that have been submitted for this spawn pad

  38. var periodicReminder: Cancellable

    a reminder sent to future customers

  39. def postRestart(reason: Throwable): Unit
    Definition Classes
    Actor
    Annotations
    @throws(classOf[java.lang.Exception])
  40. def postStop(): Unit
    Definition Classes
    VehicleSpawnControl → Actor
  41. def preRestart(reason: Throwable, message: Option[Any]): Unit
    Definition Classes
    Actor
    Annotations
    @throws(classOf[java.lang.Exception])
  42. def preStart(): Unit
    Definition Classes
    Actor
    Annotations
    @throws(classOf[java.lang.Exception])
  43. var queueManagement: Cancellable

    repeatedly test whether queued orders are valid

  44. def queueManagementTask(): Unit

    One-stop shop to test queued vehicle spawn pad orders for valid credentials and either start a periodic examination of those credentials until the queue has been emptied or cancel a running periodic examination if the queue is already empty.

  45. def receive: Receive
    Definition Classes
    VehicleSpawnControl → Actor
  46. implicit final val self: ActorRef
    Definition Classes
    Actor
  47. final def sender(): ActorRef
    Definition Classes
    Actor
  48. val supervisorStrategy: OneForOneStrategy
    Definition Classes
    VehicleSpawnControl → Actor
  49. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  50. def toString(): String
    Definition Classes
    AnyRef → Any
  51. def trace(msg: String): Unit

    A common manner of utilizing the logging agent such that all messages have the same logging level.

    A common manner of utilizing the logging agent such that all messages have the same logging level. The default should be trace-level comments. No important messages should processed by this agent; only consume general vehicle spawn status.

    msg

    the message

    Definition Classes
    VehicleSpawnControlBase
  52. var trackedOrder: Option[Order]

    the current vehicle order being acted upon; used as a guard condition to control order processing rate

  53. def unhandled(message: Any): Unit
    Definition Classes
    Actor
  54. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  55. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  56. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from Check

Inherited from BasicAffinity

Inherited from Actor

Inherited from AnyRef

Inherited from Any

Ungrouped