Packages

  • package root
    Definition Classes
    root
  • package com
    Definition Classes
    root
  • package cisco
    Definition Classes
    com
  • package streambed

    The base package of the Streambed library.

    The base package of the Streambed library. Of note is the com.cisco.streambed.Application suite of types. These types conveniently establish a streambed environment for an application.

    Sample usage from Java:

    /**
     * Bootstraps our application and handles signals
     */
    public class MyServerEntryPoints {
        private static ApplicationProcess applicationProcess = null;
    
        public static void main(String[] args) {
            applicationProcess = new ApplicationProcess(new MyServer());
            applicationProcess.main(args);
        }
    
        public static void trap(int signal) {
          if (applicationProcess != null) {
                applicationProcess.trap(signal);
            }
        }
    }

    ...with MyServer being declared as:

    public class MyServer extends Application {
        @Override
        public void main(String[] args, ApplicationContext context) {
          ..
        }
    }

    The equivalent in Scala:

    object MyServerEntryPoints {
      private lazy val applicationProcess = ApplicationProcess(MyServer)
    
      def main(args: Array[String]): Unit =
        applicationProcess.main(args)
    
      def trap(signal: Int): Unit =
        applicationProcess.trap(signal)
    }

    ...with MyServer being declared as:

    object MyServer extends Application {
      override def main(args: Array[String], applicationContext: ApplicationContext): Unit = {
        ..
      }
    }

    The essential idea is that a regular JVM entry point (MyServerEntryPoints), establishes a com.cisco.streambed.ApplicationProcess of a class named MyServer. The trap method is used by Landlord for whenever an operating systemm signal is sent to the process. My extending com.cisco.streambed.Application, a com.cisco.streambed.ApplicationContext is provided by Streambed, containing almost all of what an application will require in order to startup (an actor system, metrics, logging...). The resources provided within the context are also automatically released on exit.

    Definition Classes
    cisco
  • package lora
    Definition Classes
    streambed
  • package controlplane

    LoRaWAN device meta data event declarations so that devices can be made known to the system as a whole.

    LoRaWAN device meta data event declarations so that devices can be made known to the system as a whole.

    Definition Classes
    lora
  • EndDeviceEvents
  • EndDeviceTypeEvents

object EndDeviceEvents

Declares public types for end device management within the Network Server

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. EndDeviceEvents
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. final case class BatteryLevelUpdated(nwkAddr: Int, voltage: Long, time: Instant) extends Event with Product with Serializable
  2. sealed abstract class Event extends AnyRef

    Events that can be appended representing end device state

  3. final case class LatLng(lat: BigDecimal, lng: BigDecimal, alt: Option[BigDecimal]) extends Product with Serializable

    A geographic coordinate with an optional elevation

  4. type LoRaWANVersion = Int
  5. final case class NameUpdated(nwkAddr: Int, name: String) extends Event with Product with Serializable

    Update to the name of an end device

  6. final case class NoncesUpdated(nwkAddr: Int, devNonce: DevNonce, joinNonce: JoinNonce) extends Event with Product with Serializable

    Update to the nonce values for a device

  7. final case class NwkAddrRemoved(nwkAddr: Int) extends Event with Product with Serializable

    Removal of a NwkAddr, i.e.

    Removal of a NwkAddr, i.e. device removed.

  8. final case class NwkAddrUpdated(nwkAddr: Int, devEUI: DevEUI) extends Event with Product with Serializable

    Update to the NwkAddr

  9. final case class PositionUpdated(nwkAddr: Int, time: Instant, position: LatLng) extends Event with Product with Serializable

    Update to the geographic position of an end device

  10. final case class SecretsUpdated(nwkAddr: Int, nonce: UUID) extends Event with Product with Serializable

    Update to the secret keys - AppKey and/or JoinEUI

  11. final case class SessionKeysUpdated(nwkAddr: Int) extends Event with Product with Serializable

    Update to the session keys - appSKey, fNwkSIntKey, nwkSEncKey and/or sNwkSIntKey

  12. final case class TopicUpdated(nwkAddr: Int, topic: Topic) extends Event with Product with Serializable

    Update to the Durable Queue topic that uplink data should be published to

  13. final case class VersionUpdated(nwkAddr: Int, version: LoRaWANVersion) extends Event with Product with Serializable

    Update to the version associated with the LoRaWAN device as per LoRaWANVersion

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. val EventKey: String

    The key name to use to lookup secrets in relation to encrypting/decrypting end device event data

  5. val EventTopic: Topic

    Where end device events are appended to

  6. val LoRaWANR10: LoRaWANVersion
  7. val UnknownEndDevicesTopic: String

    Where unknown end devices are appended to.

    Where unknown end devices are appended to. A string representation of the NwkAddr field is appended.

  8. def appender(getSecret: Function[String, CompletionStage[Either[FailureResponse, SecretRetrieved]]]): Flow[Event, CommandRequest[Nothing], NotUsed]

    A convenience function for encoding an end device event, encrypting it and then publishing it to a queue.

  9. def appender(getSecret: GetSecret): Flow[Event, CommandRequest[Nothing], NotUsed]

    A convenience function for encoding an end device event, encrypting it and then publishing it to a queue.

  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  14. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  15. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  16. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  19. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  20. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  22. def tailer[A](getSecret: Function[String, CompletionStage[Either[FailureResponse, SecretRetrieved]]]): Flow[Received, (Event, Long), NotUsed]

    Conveniently tail, decrypt and decode end device events.

    Conveniently tail, decrypt and decode end device events. Yields the event and its offset.

  23. def tailer(getSecret: GetSecret): Flow[Received, (Event, Long), NotUsed]

    Conveniently tail, decrypt and decode end device events.

    Conveniently tail, decrypt and decode end device events. Yields the event and its offset.

  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  28. object EventJsonProtocol extends DefaultJsonProtocol

    A JSON codec for Event

  29. object UuidJsonProtocol extends DefaultJsonProtocol

Inherited from AnyRef

Inherited from Any

Ungrouped