orbit-server
Module Contents
alltypes
Module Contents
interface AddressableDirectory : AsyncMap<NamespacedAddressableReference, AddressableLease>, HealthCheck
class AddressableManagementService : AddressableManagementImplBase
class AddressableManager
data class AuthInfo
class AuthStep : PipelineStep
class AuthSystem
class BlankStep : PipelineStep
class ClientConnection : MessageSender
class ClusterManager
Module Contents
ClusterManager(config: OrbitServerConfig, clock: Clock, nodeDirectory: NodeDirectory)
fun findRoute(sourceNode: NodeId, targetNode: NodeId): List<NodeId>
fun getAllNodes(): Collection<NodeInfo>
suspend fun getNode(nodeId: NodeId, forceRefresh: Boolean = false): NodeInfo?
suspend fun joinCluster(namespace: String, capabilities: NodeCapabilities, url: String? = null, nodeStatus: NodeStatus): NodeInfo
suspend fun renewLease(nodeId: NodeId, challengeToken: ChallengeToken, capabilities: NodeCapabilities): NodeInfo
suspend fun tick(): Unit
suspend fun updateNode(nodeId: NodeId, body: (NodeInfo?) -> NodeInfo?): NodeInfo?
class ConnectionManager
class ConnectionService : ConnectionImplBase
class EchoStep : PipelineStep
class GrpcEndpoint
interface HealthCheck
class HealthCheckList
class HealthService : HealthImplBase
class IdentityStep : PipelineStep
data class LeaseDuration
class LocalAddressableDirectory : HashMapBackedAsyncMap<NamespacedAddressableReference, AddressableLease>, AddressableDirectory
class LocalMeterRegistry : SimpleMeterRegistry
class LocalNodeDirectory : HashMapBackedAsyncMap<NodeId, NodeInfo>, NodeDirectory
class LocalNodeInfo : HealthCheck
data class LocalServerInfo
class MessageContainer
enum class MessageDirection
data class MessageMetadata
interface MessageSender
open class Meters
interface NodeDirectory : AsyncMap<NodeId, NodeInfo>
class NodeManagementService : NodeManagementImplBase
class OrbitServer
data class OrbitServerConfig
Module Contents
OrbitServerConfig(serverInfo: LocalServerInfo = LocalServerInfo(
port = System.getenv("ORBIT_PORT")?.toInt(10) ?: 50056,
url = System.getenv("ORBIT_URL") ?: "localhost:50056"
), tickRate: Duration = Duration.ofSeconds(1), pipelineRailCount: Int = 32, pipelineBufferCount: Int = 10_000, clock: Clock = Clock(), nodeLeaseDuration: LeaseDuration = LeaseDuration(10), addressableLeaseDuration: LeaseDuration = LeaseDuration(600), cpuPool: CoroutineDispatcher = Pools.createFixedPool("orbit-cpu"), ioPool: CoroutineDispatcher = Pools.createCachedPool("orbit-io"), acquireShutdownLatch: Boolean = true, nodeDirectory: ExternallyConfigured<NodeDirectory> = LocalNodeDirectory.LocalNodeDirectorySingleton, addressableDirectory: ExternallyConfigured<AddressableDirectory> = LocalAddressableDirectory.LocalAddressableDirectorySingleton, meterRegistry: ExternallyConfigured<MeterRegistry> = LocalMeterRegistry.LocalMeterRegistrySingleton, containerOverrides: ComponentContainerRoot.() -> Unit = { })
val acquireShutdownLatch: Boolean
val addressableDirectory: ExternallyConfigured<AddressableDirectory>
val addressableLeaseDuration: LeaseDuration
val clock: Clock
val containerOverrides: ComponentContainerRoot.() -> Unit
val cpuPool: CoroutineDispatcher
val ioPool: CoroutineDispatcher
val meterRegistry: ExternallyConfigured<MeterRegistry>
val nodeDirectory: ExternallyConfigured<NodeDirectory>
val nodeLeaseDuration: LeaseDuration
val pipelineBufferCount: Int
val pipelineRailCount: Int
val serverInfo: LocalServerInfo
val tickRate: Duration
class Pipeline
class PipelineContext
class PipelineException : Throwable
interface PipelineStep
class PipelineSteps
class PlacementStep : PipelineStep
class RemoteMeshNodeConnection : MessageSender
class RemoteMeshNodeManager
class Router
class RoutingStep : PipelineStep
data class RuntimePools
class RuntimeScopes
class ServerAuthInterceptor : ServerInterceptor
class TransportStep : PipelineStep
class VerifyStep : PipelineStep
package orbit.server
Module Contents
class OrbitServer
data class OrbitServerConfig
Module Contents
OrbitServerConfig(serverInfo: LocalServerInfo = LocalServerInfo(
port = System.getenv("ORBIT_PORT")?.toInt(10) ?: 50056,
url = System.getenv("ORBIT_URL") ?: "localhost:50056"
), tickRate: Duration = Duration.ofSeconds(1), pipelineRailCount: Int = 32, pipelineBufferCount: Int = 10_000, clock: Clock = Clock(), nodeLeaseDuration: LeaseDuration = LeaseDuration(10), addressableLeaseDuration: LeaseDuration = LeaseDuration(600), cpuPool: CoroutineDispatcher = Pools.createFixedPool("orbit-cpu"), ioPool: CoroutineDispatcher = Pools.createCachedPool("orbit-io"), acquireShutdownLatch: Boolean = true, nodeDirectory: ExternallyConfigured<NodeDirectory> = LocalNodeDirectory.LocalNodeDirectorySingleton, addressableDirectory: ExternallyConfigured<AddressableDirectory> = LocalAddressableDirectory.LocalAddressableDirectorySingleton, meterRegistry: ExternallyConfigured<MeterRegistry> = LocalMeterRegistry.LocalMeterRegistrySingleton, containerOverrides: ComponentContainerRoot.() -> Unit = { })
val acquireShutdownLatch: Boolean
val addressableDirectory: ExternallyConfigured<AddressableDirectory>
val addressableLeaseDuration: LeaseDuration
val clock: Clock
val containerOverrides: ComponentContainerRoot.() -> Unit
val cpuPool: CoroutineDispatcher
val ioPool: CoroutineDispatcher
val meterRegistry: ExternallyConfigured<MeterRegistry>
val nodeDirectory: ExternallyConfigured<NodeDirectory>
val nodeLeaseDuration: LeaseDuration
val pipelineBufferCount: Int
val pipelineRailCount: Int
val serverInfo: LocalServerInfo
val tickRate: Duration
package orbit.server.auth
package orbit.server.concurrent
package orbit.server.mesh
Module Contents
interface AddressableDirectory : AsyncMap<NamespacedAddressableReference, AddressableLease>, HealthCheck
class AddressableManager
class ClusterManager
Module Contents
ClusterManager(config: OrbitServerConfig, clock: Clock, nodeDirectory: NodeDirectory)
fun findRoute(sourceNode: NodeId, targetNode: NodeId): List<NodeId>
fun getAllNodes(): Collection<NodeInfo>
suspend fun getNode(nodeId: NodeId, forceRefresh: Boolean = false): NodeInfo?
suspend fun joinCluster(namespace: String, capabilities: NodeCapabilities, url: String? = null, nodeStatus: NodeStatus): NodeInfo
suspend fun renewLease(nodeId: NodeId, challengeToken: ChallengeToken, capabilities: NodeCapabilities): NodeInfo
suspend fun tick(): Unit
suspend fun updateNode(nodeId: NodeId, body: (NodeInfo?) -> NodeInfo?): NodeInfo?
data class LeaseDuration
class LocalNodeInfo : HealthCheck
data class LocalServerInfo
const val MANAGEMENT_NAMESPACE: String
interface NodeDirectory : AsyncMap<NodeId, NodeInfo>
package orbit.server.mesh.local
package orbit.server.net
package orbit.server.pipeline
package orbit.server.pipeline.step
package orbit.server.router
package orbit.server.service