All Classes and Interfaces

Class
Description
Abstract base class that can be used for objects that need to be configurable.
Abstract base class for all services that are configurable.
Abstract base class for all services.
Abstract base class for all concrete VFSSource classes.
Specialized SpawnProcess designed around starting adapters.
Class that supports single (one-shot) or recurring callbacks, allows the delay to be adjusted while the timer is running, and has variance support to add a degree of randomness to the timer.
Matcher that returns true if the logical AND of all child matchers are true.
This interface provides callback methods for when routers are added or removed from the forwarding table.
System component used to interact with applications running on nodes within a kOS cluster.
Class annotation that indicates that the class contains endpoints.
The ApiEndpoint annotation is used to declare and document an HTTP (RESTful) endpoint.
 
Data class used by ApiClient to make API calls to local and remote nodes.
Base class for all kOS applications.
Listener for Application-related events.
Class responsible for loading an application from the filesystem.
Wrapper for the system message broker that prefixes the topics with the application id.
Service that manages applications within kOS.
An assembly is used to describe a collection of hardware that can be added or removed as an atomic unit within kOS.
Interface for objects that are directly linked to an Assembly object.
Listener for Assembly-related events.
Manages assemblies in kOS.
Interface that is implemented by any bean that has attributes.
Annotation that informs the BeanContext that a dependent field needs its object reference injected, which is also known as autowired.
Specialized list class supports autowiring.
 
Exception thrown when the web client/caller passes in invalid data.
A Unit class that represents pressure in bars.
Base class for application configuration beans.
Base class for various callback classes.
Base class for Device config beans.
Base class for all future DeviceManifest implementations which contains just the manifest version.
Base class for describing a kab in a manifest.
Base class for a region.
Class that tracks changes to values for a single bean during the configure/update process.
System component that provides a very lightweight IOC-style context.
Data class that contains updates to apply to a bean with the specified handle path.
Implementation of BinaryMsg for sessions.
Client for BinaryMsg protocol.
Handler interface to register with a BinaryMsgClient.
Handler interface to register with a BinaryMsgClient.
Base exception for checked BinaryMsg exceptions.
Session setup data for BinaryMsg connections.
 
Base class for a messaging interface over BinaryMsgSession.
Given the name of an interface from a BinaryMsgSession, return an instance of BinaryMsgIface or null.
Interface for a BinaryMsgIface connection listener.
Listener for receiving a BinaryMsg.
Extends ByteArrayOutputStream so that it can automatically build the correct header for the message.
Implementation of the BinaryMsg protocol for adapters.
Can be attached to a BlinkConn to receive a callback when the connection is closed.
A single blink connection.
Base class for blink identity information.
A protocol that sits on top of a connection and decodes the incoming data.
Session that sits on top of a connection and implements a particular protocol as well as the api used to interact with the protocol.
Implementation of the Blockable interface.
Interface that allows objects to be blocked.
Logical representation of a circuit board in the system.
Uniquely identifies a board in an assembly.
HardwareLink class for BoardIface devices.
Interface for board link / unlink callbacks.
Interface for Troubles that implements the board iface.
A logical browser control object.
Identifies a particular browser on a node.
Service that manages browsers connected to this service.
Interface for browser connections to plug into BrowserService by connecting to a Browser object.
Interface for operation supported by ByteOrderInputStream.
An input stream that reads objects in little or big endian format.
Interface for operation supported by ByteOrderOutputStream.
An output stream that writes objects in little or big endian format.
A Unit class that represents temperature in degrees Celsius.
Base class for Chrome commands.
Loader that searches resources relative to a ClassLoader.
Matcher that returns true if the class of the trouble matches the specified class or optionally a subclass.
Interface for objects that contain a ConfigBean.
Optional base class for config beans.
Listener for changes to a given ConfigBean.
Listener for all config changes.
When beans are configured, the changes to the beans are recorded in this object.
Annotation that allows you to attach a description to a configuration property.
Exception thrown when an error occurs while loading configuration data.
Standard config formats.
Annotation that tells the configuration system to ignore the associated property.
Base class for describing options for a config property.
System service that manages all configuration data and can apply configuration data on top of any ConfigAware object.
Interface that contains the source of configuration data.
Base class for all context exceptions.
Extension of HandleAware for objects that should be children of the Handle associated with a BeanContext.
Parser for converting string values to other formats.
Data conversion exception.
Interface to mark an Assembly as CoreAssembly which will prevent the assembly from being unloaded.
Interface that allows a bean to accept callbacks from BeanContext when a child context is destroyed.
Interface that allows a bean to accept callbacks from BeanContext when the context is destroyed.
Interface that allows a bean to accept callbacks from the kOS BeanContext after certain autowiring steps have completed.
Base interface for all context listeners.
Date format for "dd/MM/yy" Java format.
Date format for "MM/dd/yy" Java format.
Date format for "yyyy-MM-dd" Java format.
Interface used to migrate database content across schema versions.
Describes a date format for both Java and JavaScript.
Listener interface for day change events.
A representation of the device.
Abstraction of a top level device manifest.
Service that tracks the active manifest.
JsonView class to expose data for the over arching view of the entire device.
InstallBuilder where all the kabs associated with the install are located in a specified directory.
Implementation of KabSource that indexes the contents of the specified directory.
Loader that searches resources on the filesystem relative to a base directory.
Exception thrown when a there's an attempt to create a subscription to a topic that already exists for the given session.
Exception thrown whenever BinaryMsg returns an error.
A Unit class that represents temperature in degrees Fahrenheit.
A future that immediately fails when started.
Loader that searches resources on the filesystem.
Output stream that writes to a remote file server a FileSrv server.
Class that corresponds to a directory on a filesystem.
Service that handles updating firmware on update-capable devices.
Interface for any device that can have firmware updated.
Base class for HardwareLink can supports firmware update.
Callback interface for firmware update events.
Interface for the actual update routine for a given device.
A Unit class that represents volume in fluid ounces.
A mount object returned from FuseService when a mount is successful.
Service that mounts KAB files into the local filesystem via fuseMounter native program.
Types of FutureWork callback events.
A functional interface for associating runnable code with a future, whether the primary code of the future or callbacks based on future events.
Possible FutureWork states, which are: SUCCESS: the operation successfully ran to completion FAIL: the operation ran to completion but failed CANCEL: the operation was cancelled by the user ABORT: the operation was aborted by the software
This is the kOS equivalent of Java's FutureTask.
A Unit class that represents mass in grams.
Building block for allocating a handle to an object.
Interface for objects that can be identified by a handle.
Interface for fetching beans by handles.
System wrapper around HandleMgr, as HandleMgr should only be used by internal kOS code.
Interface for Troubles that implements the handle iface.
Annotation that binds a method variable to a bean handle.
JsonView class to expose data from handles endpoints.
Base class that implements the backend protocol for a particular board.
Interface to add a new way of matching HardwareLink to a Board.
Base interface for hardware related listeners.
Service that manages all external hardware.
Interface that abstracts out the common request methods used by the system dispatcher.
Interface that abstracts out the common response methods used by the system dispatcher.
Class that contains HTTP status code constants.
Matcher that returns true if any of the specified objects are in the impact list of a trouble.
All inbound messages to the router are in text form since they originate from a websocket message.
Builder used to define a kOS installation.
Base class for all future DeviceManifest implementations which implements the @{code PrimaryManifestInstallView} interface which is sufficient for a primary node to identify any missing artifacts and install them, even if it doesn't understand the actual manifest format.
Exception thrown when the web request unexpectedly fails.
Exception thrown when there is an attempt to use an out-of-range API number for BinaryMsg.
Exception thrown when there is an attempt to use an invalid BinaryMsgIface.
Encapsulation of a descriptor file used by various resources such as KAB files and assemblies.
Interface for objects that can return a JsonDescriptor.
Data class that encapsulates information related to the return values associated with JsonTemplate calls.
System component that provides an easy way to issue HTTP/REST calls, such at GET, POST, PUT, and DELETE.
An object wrapper that applies a custom view to the object being wrapped.
Custom serializer for JsonViewWrapper.
Cache for JSON writers used to serialize data.
Interface for applying access control information to a KabEntry before being written to the KAB file.
Data class that contains information about a single entry in a KAB archive file.
Opens an existing archive file and provides access to its contents.
KetSet that loads key and cert from a STUIDO_KEY_SET kab file.
Output stream for creating an archive.
Builder to make it easier to create a KabOutputStream.
Interface for objects that can return kab files by id.
Class that wraps a KAB file.
Interface that provides access to a private key and cert that are used to sign kabs in kos.
Wrapper around KeyValService that binds all accesses to a particular namespace.
Controller that can wrap a KeyValNameSpace and make it accessible via endpoints.
Key/val storage service.
Data class encapsulating the pieces that make up a kOS network address.
Exception thrown whenever a poorly formatted or invalid KosAddress is detected.
Static accessor for a number of core kOS components that are so common it's inefficient to inject them everywhere they're needed.
Marker interface for all standard kOS descriptor fragments.
Static accessor for a number of core kOS components that are so common it's inefficient to inject them everywhere they're needed.
Standard descriptor fragment for describing available languages.
 
Class that contains the lifecycle of a single spawning of a process.
Matcher that returns true if any of the specified objects are in the link list of a trouble.
Interface which allows lambdas to be used with fireEvent() methods.
Thread-safe listener list with lambda event support.
Interface for beans that are dynamically loaded and have require lifecycles to prepare them.
Information about a manifest section that has a "kos.app." or "kos.autostart." prefix.
Representation of a kab file within a manifest.
Section within a node manifest.
Service that tracks the active manifest.
System component that provides the ability to publish (send) and subscribe to (receive) messages over the kOS network.
Interface that defines the callback method that gets called when a broker message matching a subscribed topic is fired (published).
A MessageBroker message forwarded to a subscriber, typically via the MessageBrokerCallback interface.
Convert a Message to text.
Exception thrown whenever an attempt to migrate (either upgrade or rollback) a database to a different schema fails.
A Unit class that represents volume in milliliters.
Enumeration indicating the modes of operation that your kOS application can run in.
Class used to coordinate multiple asynchronous states to trigger a ready callback.
Specialized class that behaves like a map of lists, which means that each key can hold multiple values.
Mutable source of configuration data.
Data class that provides the link between a logical directory name and its corresponding physical location on the disk.
A nodeId is the combination of a node type and node name.
Exception thrown whenever a poorly formatted or invalid NodeId is detected.
Manifest that defines the state for a single node.
Service for interacting with nodeMgr clients within the cluster.
Service that tracks the active manifest.
Exception thrown when there is an attempt to use a BinaryMsgSession object when one did not exist.
Exception thrown when the requested resource is not found.
Exception when trying to access board features when the board doesn't have a hardware link.
Generated when trying to resolve a trouble that doesn't implement ResolvableTrouble.
Class that describes the configuration data for numeric keypad data entry.
Class that describes the available options as a list of specific values.
Creates a numeric range based on dividing a given range into a fixed number of values.
Creates a numeric range based on dividing a given range into the specified interval.
Class that describes the configuration data for numeric keypad data entry.
 
UnitSystem variation of OptionsList which allows for different lists by unit system name.
UnitSystem variation of OptionsRangeCount that contains a map of range data based on unit system names.
 
UnitSystem variation of OptionsRangeInterval that contains a map of range data based on unit system names.
 
A Unit class that represents mass in ounces.
Outbound messages passed to the router from java to be sent to another node / client on the network.
Allows a collection of individual futures to be run in parallel, where the overall state of ParallelFuture reflects the result of the child futures.
System component that is used to define well-known filesystem paths by name, which are used with relative paths elsewhere in the code.
Class that wraps another source.
Annotation that binds a method variable to a path parameter.
This class gathers KAB file permissions, then sets them for each KAB entry in the KabAccessProvider interface's setAccess(KabEntry) method.
Interface used to extract information from a manifest that identifies the minimum information required to correctly install an updated on the primary node of a device such that the primary and all child nodes in the device can be properly updated.
Class that wraps another source.
A Unit class that represents pressure in pounds-per-square-inch (PSI).
Class used to schedule a callback after a specified delay, but can be used in three different ways: Using start(), the timer acts like a typical timer that runs for the specified delay.
Interface indicating that the implementing bean supports the "ready" protocol.
Abstract convenience base class that incorporates both the Ready and ReadListener interfaces.
Interface providing a callback method that is attached to the ReadyIndicator to receive a ready notification.
Class used by Ready beans to indicate when the bean has become ready.
When a bean implements this interface, then it receives callbacks when fields annotated with WhenReady become "ready".
Optional data that is associated with a reason code.
Listener for region changes.
Provides access to region information.
Base class to hold application specific region settings.
Annotation indicating that the request's body should be parsed in a request mapping and made available in the associated method parameter.
Base exception for all exceptions that can be thrown when a client makes a web request.
Enumeration containing the complete list of HTTP request methods.
Annotation that binds a method variable to a query parameter.
A wrapper around DeviceManifest that enumerates all node manifests and resolves them which identifies all the locally installed kab files as well as any missing artifacts.
A resolved ManifestArtifact.
A resolved version of a manifest section.
A wrapper around NodeManifest that provides a flat list of all referenced artifacts and the associated locally installed KAB files.
Exception generated when trying to resolve a trouble that is already performing the resolve action.
Interface for loading resources from a filename.
List of resource loaders that act as a list of search paths for finding a specified resource.
Data class that encapsulates the response from an HTTP/REST endpoint.
Data class that holds an HTTP/REST endpoint's version number, which is used in the ResponseEnvelope.
Abstract base class for all messages that pass through the router.
Represents a router connection which is the combination of address and websocket connection to the router.
This is the core of the websocket router.
This interface provides callback methods for when routers are added or removed from the forwarding table.
When a message is to be processed locally by the router it will search the list of registered handlers for the message type and forward the message to the handler for processing.
Base exception for runtime BinaryMsg exceptions.
System component that provides access to standard thread pools used throughout the kOS system.
Allows a list of individual futures to be run in sequence, where the overall state of SequencedFuture reflects the result of the sequence.
Factory that is notified of serial devices and can return an adapter for a given device to claim the device and have the adapter automatically started.
Wraps a UdevDevice and provides easy access to serial specific data.
Service that manages serial devices.
KeySet that is manually created from key and cert.
This class encompases the International System of Units, known by the abbreviation "SI".
Builder to construct a SoftwareInfo from a ResolvedDeviceManifest.
Standard descriptor fragment that will be included when describing what is in a kOS manifest.
Base exception for all spawn-related errors.
Exception thrown when a spawn attempt fails when either the specified path is not found or is not executable.
Class that represents a single process that can be spawned.
Service that is used to start/stop native programs on this node or other nodes using a spawn session.
Exception thrown when a spawn attempt fails because there was no response from the adapter.
Implementation of VFSSource that supports stacked sources.
Interface that can be added to object that are put into BeanContext to indicate that they contains a StateBean for use with StateService.
Base class for beans that hold state and can be broadcast via message broker when they change.
Interface for being notified when a StateBean changes state.
File finder that backs all the file managers.
Utility class that handles various string-based operations.
This streaming JSON reader allows callbacks to be attached to logical paths of data in a JSON payload, which means that data can be extracted while the JSON is being parsed.
Callback interface for token matching in StreamingJsonReader.
Base class for system applications, which simply adds convenience methods to the base Application type.
Time format for "HH:mm" Java format, which is the 24-hour clock.
Time format for "hh:mm a" Java format, which is the 12-hour clock.
Listener interface for time/date change events.
Describes a time format for both Java and JavaScript.
Base listener interface for time events.
Exception thrown when a BinaryMsg response times out.
Listener interface for timezone change events.
Exception thrown when the BinaryMsg payload exceeds the maximum limit of 256K bytes.
Annotation that binds a method parameter to a special tracker variable.
Interface for objects that provide a tracker property.
Class that triggers a callback after the configured delay.
Base class for troubles.
 
Views used to serialize trouble data.
Interface that objects can implement to be notified when a trouble is added / removed where the object is in the impacted list of the trouble.
Adapter class for TroubleAware.
Base exception for troubles.
Base interface for all Trouble ifaces.
Information about how to display a trouble to the user.
Simple implementation of TroubleInfoFactory that loads an array of TroubleInfo objects from a json stream.
Interface to listen to trouble events.
Simple implementation TroubleListener which allows selective callbacks to be overridden as needed.
Interface for defining custom logic for matching troubles.
Service that manages troubles.
Device from udev adapter.
Listener interface to listen to device adds and removes.
Listener interface to listen to device availability.
Base listener for udev events.
Interface that allows a UdevDevice to be claimed / released.
All udev information about a node.
Service that manages events from udev adapter.
Exception thrown when the client making a web request doesn't have rights to the requested resource.
This class describes a single unit within a unit system.
This class contains a full description of a "unit system".
Base class for a for update tasks generated by a given FirmwareUpdater which contains all the state necessary for the updater to actually perform the update of the associated device.
General-purpose URI builder class.
Data class that serves as a parameter for some UriBuilder methods.
This class encompases the United States (US) unit system.
Data class used track a current or new value verses a previous value.
Allows multiple VFS sources to be virtually mounted to form a virtual read-only filesystem.
Interface for parent VFS nodes in a VFS hierarchy.
Interface for returning in input stream for a given path.
Websocket client with support for automatic reconnects using exponential backoff.
Interface to receive websocket connection events.
Interface for a websocket connection.
Interface that processes websocket connect events and is able to close a connection if it doesn't have correct authentication.
Interface to receive websocket connection events.
Data class containing fields that identify a websocket endpoint.
Interface to receive websocket messages.
This is the front-end to the websocket router.
Annotation that monitors a field for when it becomes ready.
Exception from the XML code.
Factory for loading BaseRegion objects from one or more XML files.
A few common utility methods for working with XML.