Module swim.kernel
Package swim.kernel

Interface KernelContext

  • All Superinterfaces:
    swim.io.IpInterface, Kernel, swim.util.Log
    All Known Implementing Classes:
    BootKernel, KernelProxy

    public interface KernelContext
    extends Kernel, swim.io.IpInterface, swim.util.Log
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      swim.io.IpServiceRef bindTcp​(InetSocketAddress localAddress, swim.io.IpService service, swim.io.IpSettings ipSettings)  
      swim.io.IpServiceRef bindTls​(InetSocketAddress localAddress, swim.io.IpService service, swim.io.IpSettings ipSettings)  
      swim.io.IpSocketRef connectTcp​(InetSocketAddress remoteAddress, swim.io.IpSocket socket, swim.io.IpSettings ipSettings)  
      swim.io.IpSocketRef connectTls​(InetSocketAddress remoteAddress, swim.io.IpSocket socket, swim.io.IpSettings ipSettings)  
      <A extends swim.api.agent.Agent>
      swim.api.agent.AgentFactory<A>
      createAgentFactory​(Class<? extends A> agentClass)  
      swim.api.agent.AgentFactory<?> createAgentFactory​(swim.api.agent.AgentDef agentDef, ClassLoader classLoader)  
      <A extends swim.api.agent.Agent>
      swim.api.agent.AgentFactory<A>
      createAgentFactory​(swim.system.NodeBinding node, Class<? extends A> agentClass)  
      swim.api.agent.AgentFactory<?> createAgentFactory​(swim.system.NodeBinding node, swim.api.agent.AgentDef agentDef)  
      <A extends swim.api.agent.Agent>
      swim.api.agent.AgentRoute<A>
      createAgentRoute​(swim.system.EdgeBinding edge, Class<? extends A> agentClass)  
      swim.api.auth.Authenticator createAuthenticator​(swim.api.auth.AuthenticatorDef authenticatorDef, ClassLoader classLoader)  
      swim.system.EdgeBinding createEdge​(swim.system.EdgeAddress edgeAddress)  
      swim.system.HostBinding createHost​(swim.system.HostAddress hostAddress)  
      swim.system.HostBinding createHost​(swim.system.PartBinding part, swim.system.HostDef hostDef)  
      swim.system.LaneBinding createLane​(swim.system.LaneAddress laneAddress)  
      swim.system.LaneBinding createLane​(swim.system.NodeBinding node, swim.system.LaneDef laneDef)  
      swim.util.Log createLog​(swim.system.CellAddress cellAddress)  
      swim.util.Log createLog​(swim.system.LogDef logDef)  
      swim.system.MeshBinding createMesh​(swim.system.EdgeBinding edge, swim.system.MeshDef meshDef)  
      swim.system.MeshBinding createMesh​(swim.system.MeshAddress meshAddress)  
      swim.system.NodeBinding createNode​(swim.system.HostBinding host, swim.system.NodeDef nodeDef)  
      swim.system.NodeBinding createNode​(swim.system.NodeAddress nodeAddress)  
      swim.system.PartBinding createPart​(swim.system.MeshBinding mesh, swim.system.PartDef partDef)  
      swim.system.PartBinding createPart​(swim.system.PartAddress partAddress)  
      <P extends swim.api.plane.Plane>
      swim.api.plane.PlaneFactory<P>
      createPlaneFactory​(Class<? extends P> planeClass)  
      swim.api.plane.PlaneFactory<?> createPlaneFactory​(swim.api.plane.PlaneDef planeDef, ClassLoader classLoader)  
      swim.api.policy.Policy createPolicy​(swim.system.CellAddress cellAddress)  
      swim.api.policy.Policy createPolicy​(swim.system.PolicyDef policyDef)  
      swim.concurrent.Schedule createSchedule​(swim.concurrent.ScheduleDef scheduleDef, swim.concurrent.Stage stage)  
      swim.api.service.ServiceFactory<?> createServiceFactory​(swim.api.service.ServiceDef serviceDef, ClassLoader classLoader)  
      swim.concurrent.Stage createStage​(swim.concurrent.StageDef stageDef)  
      swim.concurrent.Stage createStage​(swim.system.CellAddress cellAddress)  
      swim.store.StoreBinding createStore​(swim.store.StoreDef storeDef, ClassLoader classLoader)  
      swim.store.StoreBinding createStore​(swim.system.CellAddress cellAddress)  
      swim.api.agent.AgentDef defineAgent​(swim.structure.Item agentConfig)  
      swim.api.auth.AuthenticatorDef defineAuthenticator​(swim.structure.Item authenticatorConfig)  
      swim.system.HostDef defineHost​(swim.structure.Item hostConfig)  
      swim.system.LaneDef defineLane​(swim.structure.Item laneConfig)  
      swim.system.LogDef defineLog​(swim.structure.Item logConfig)  
      swim.system.MeshDef defineMesh​(swim.structure.Item meshConfig)  
      swim.system.NodeDef defineNode​(swim.structure.Item nodeConfig)  
      swim.system.PartDef definePart​(swim.structure.Item partConfig)  
      swim.api.plane.PlaneDef definePlane​(swim.structure.Item planeConfig)  
      swim.system.PolicyDef definePolicy​(swim.structure.Item policyConfig)  
      swim.concurrent.ScheduleDef defineSchedule​(swim.structure.Item scheduleConfig)  
      swim.api.service.ServiceDef defineService​(swim.structure.Item serviceConfig)  
      swim.api.space.SpaceDef defineSpace​(swim.structure.Item spaceConfig)  
      swim.concurrent.StageDef defineStage​(swim.structure.Item stageConfig)  
      swim.store.StoreDef defineStore​(swim.structure.Item storeConfig)  
      swim.system.HostDef getHostDef​(swim.system.HostAddress hostAddress)  
      swim.system.LaneDef getLaneDef​(swim.system.LaneAddress laneAddress)  
      swim.system.MeshDef getMeshDef​(swim.system.MeshAddress meshAddress)  
      swim.system.NodeDef getNodeDef​(swim.system.NodeAddress nodeAddress)  
      swim.system.PartDef getPartDef​(swim.system.PartAddress partAddress)  
      swim.api.service.Service getService​(String serviceName)  
      swim.api.space.Space getSpace​(String spaceName)  
      swim.api.auth.Authenticator injectAuthenticator​(swim.api.auth.Authenticator authenticator)  
      swim.system.EdgeBinding injectEdge​(swim.system.EdgeAddress edgeAddress, swim.system.EdgeBinding edge)  
      swim.system.HostBinding injectHost​(swim.system.HostAddress hostAddress, swim.system.HostBinding host)  
      swim.system.LaneBinding injectLane​(swim.system.LaneAddress laneAddress, swim.system.LaneBinding lane)  
      swim.util.Log injectLog​(swim.util.Log log)  
      swim.system.MeshBinding injectMesh​(swim.system.MeshAddress meshAddress, swim.system.MeshBinding mesh)  
      swim.system.NodeBinding injectNode​(swim.system.NodeAddress nodeAddress, swim.system.NodeBinding node)  
      swim.system.PartBinding injectPart​(swim.system.PartAddress partAddress, swim.system.PartBinding part)  
      swim.api.plane.Plane injectPlane​(swim.api.plane.Plane plane)  
      swim.api.policy.Policy injectPolicy​(swim.api.policy.Policy policy)  
      swim.concurrent.Schedule injectSchedule​(swim.concurrent.Schedule schedule)  
      swim.api.service.Service injectService​(swim.api.service.Service service)  
      swim.concurrent.Stage injectStage​(swim.concurrent.Stage stage)  
      swim.store.StoreBinding injectStore​(swim.store.StoreBinding store)  
      swim.io.IpSettings ipSettings()  
      KernelBinding kernelBinding()  
      KernelBinding kernelWrapper()  
      swim.collections.FingerTrieSeq<Kernel> modules()  
      void openAgents​(swim.system.NodeBinding node)  
      void openLanes​(swim.system.NodeBinding node)  
      void openMetaDownlink​(swim.system.LinkBinding downlink, swim.system.NodeBinding metaDownlink)  
      void openMetaEdge​(swim.system.EdgeBinding edge, swim.system.NodeBinding metaEdge)  
      void openMetaHost​(swim.system.HostBinding host, swim.system.NodeBinding metaHost)  
      void openMetaLane​(swim.system.LaneBinding lane, swim.system.NodeBinding metaLane)  
      void openMetaMesh​(swim.system.MeshBinding mesh, swim.system.NodeBinding metaMesh)  
      void openMetaNode​(swim.system.NodeBinding node, swim.system.NodeBinding metaNode)  
      void openMetaPart​(swim.system.PartBinding part, swim.system.NodeBinding metaPart)  
      void openMetaUplink​(swim.system.LinkBinding uplink, swim.system.NodeBinding metaUplink)  
      <S extends swim.api.service.Service>
      S
      openService​(String serviceName, swim.api.service.ServiceFactory<S> serviceFactory)  
      swim.api.space.Space openSpace​(swim.api.space.SpaceDef spaceDef)  
      void reportDown​(swim.system.Metric metric)  
      swim.web.WebResponse routeRequest​(swim.web.WebRequest request)  
      void setKernelBinding​(KernelBinding kernelBinding)  
      swim.concurrent.Stage stage()  
      swim.io.Station station()  
      • Methods inherited from interface swim.io.IpInterface

        bindTcp, bindTcp, bindTcp, bindTls, bindTls, bindTls, connectTcp, connectTcp, connectTcp, connectTcp, connectTcp, connectTcp, connectTcp, connectTls, connectTls, connectTls, connectTls, connectTls, connectTls, connectTls
      • Methods inherited from interface swim.util.Log

        debug, error, fail, info, trace, warn
    • Method Detail

      • setKernelBinding

        void setKernelBinding​(KernelBinding kernelBinding)
      • modules

        swim.collections.FingerTrieSeq<Kernel> modules()
      • stage

        swim.concurrent.Stage stage()
      • station

        swim.io.Station station()
      • defineLog

        swim.system.LogDef defineLog​(swim.structure.Item logConfig)
      • createLog

        swim.util.Log createLog​(swim.system.LogDef logDef)
      • createLog

        swim.util.Log createLog​(swim.system.CellAddress cellAddress)
      • injectLog

        swim.util.Log injectLog​(swim.util.Log log)
      • definePolicy

        swim.system.PolicyDef definePolicy​(swim.structure.Item policyConfig)
      • createPolicy

        swim.api.policy.Policy createPolicy​(swim.system.PolicyDef policyDef)
      • createPolicy

        swim.api.policy.Policy createPolicy​(swim.system.CellAddress cellAddress)
      • injectPolicy

        swim.api.policy.Policy injectPolicy​(swim.api.policy.Policy policy)
      • defineSchedule

        swim.concurrent.ScheduleDef defineSchedule​(swim.structure.Item scheduleConfig)
      • createSchedule

        swim.concurrent.Schedule createSchedule​(swim.concurrent.ScheduleDef scheduleDef,
                                                swim.concurrent.Stage stage)
      • injectSchedule

        swim.concurrent.Schedule injectSchedule​(swim.concurrent.Schedule schedule)
      • defineStage

        swim.concurrent.StageDef defineStage​(swim.structure.Item stageConfig)
      • createStage

        swim.concurrent.Stage createStage​(swim.concurrent.StageDef stageDef)
      • createStage

        swim.concurrent.Stage createStage​(swim.system.CellAddress cellAddress)
      • injectStage

        swim.concurrent.Stage injectStage​(swim.concurrent.Stage stage)
      • defineStore

        swim.store.StoreDef defineStore​(swim.structure.Item storeConfig)
      • createStore

        swim.store.StoreBinding createStore​(swim.store.StoreDef storeDef,
                                            ClassLoader classLoader)
      • createStore

        swim.store.StoreBinding createStore​(swim.system.CellAddress cellAddress)
      • injectStore

        swim.store.StoreBinding injectStore​(swim.store.StoreBinding store)
      • defineAuthenticator

        swim.api.auth.AuthenticatorDef defineAuthenticator​(swim.structure.Item authenticatorConfig)
      • createAuthenticator

        swim.api.auth.Authenticator createAuthenticator​(swim.api.auth.AuthenticatorDef authenticatorDef,
                                                        ClassLoader classLoader)
      • injectAuthenticator

        swim.api.auth.Authenticator injectAuthenticator​(swim.api.auth.Authenticator authenticator)
      • ipSettings

        swim.io.IpSettings ipSettings()
        Specified by:
        ipSettings in interface swim.io.IpInterface
      • bindTcp

        swim.io.IpServiceRef bindTcp​(InetSocketAddress localAddress,
                                     swim.io.IpService service,
                                     swim.io.IpSettings ipSettings)
        Specified by:
        bindTcp in interface swim.io.IpInterface
      • bindTls

        swim.io.IpServiceRef bindTls​(InetSocketAddress localAddress,
                                     swim.io.IpService service,
                                     swim.io.IpSettings ipSettings)
        Specified by:
        bindTls in interface swim.io.IpInterface
      • connectTcp

        swim.io.IpSocketRef connectTcp​(InetSocketAddress remoteAddress,
                                       swim.io.IpSocket socket,
                                       swim.io.IpSettings ipSettings)
        Specified by:
        connectTcp in interface swim.io.IpInterface
      • connectTls

        swim.io.IpSocketRef connectTls​(InetSocketAddress remoteAddress,
                                       swim.io.IpSocket socket,
                                       swim.io.IpSettings ipSettings)
        Specified by:
        connectTls in interface swim.io.IpInterface
      • getService

        swim.api.service.Service getService​(String serviceName)
        Specified by:
        getService in interface Kernel
      • defineService

        swim.api.service.ServiceDef defineService​(swim.structure.Item serviceConfig)
        Specified by:
        defineService in interface Kernel
      • createServiceFactory

        swim.api.service.ServiceFactory<?> createServiceFactory​(swim.api.service.ServiceDef serviceDef,
                                                                ClassLoader classLoader)
        Specified by:
        createServiceFactory in interface Kernel
      • openService

        <S extends swim.api.service.Service> S openService​(String serviceName,
                                                           swim.api.service.ServiceFactory<S> serviceFactory)
        Specified by:
        openService in interface Kernel
      • injectService

        swim.api.service.Service injectService​(swim.api.service.Service service)
      • routeRequest

        swim.web.WebResponse routeRequest​(swim.web.WebRequest request)
      • getSpace

        swim.api.space.Space getSpace​(String spaceName)
        Specified by:
        getSpace in interface Kernel
      • defineSpace

        swim.api.space.SpaceDef defineSpace​(swim.structure.Item spaceConfig)
        Specified by:
        defineSpace in interface Kernel
      • openSpace

        swim.api.space.Space openSpace​(swim.api.space.SpaceDef spaceDef)
        Specified by:
        openSpace in interface Kernel
      • definePlane

        swim.api.plane.PlaneDef definePlane​(swim.structure.Item planeConfig)
        Specified by:
        definePlane in interface Kernel
      • createPlaneFactory

        swim.api.plane.PlaneFactory<?> createPlaneFactory​(swim.api.plane.PlaneDef planeDef,
                                                          ClassLoader classLoader)
        Specified by:
        createPlaneFactory in interface Kernel
      • createPlaneFactory

        <P extends swim.api.plane.Plane> swim.api.plane.PlaneFactory<P> createPlaneFactory​(Class<? extends P> planeClass)
        Specified by:
        createPlaneFactory in interface Kernel
      • injectPlane

        swim.api.plane.Plane injectPlane​(swim.api.plane.Plane plane)
      • defineAgent

        swim.api.agent.AgentDef defineAgent​(swim.structure.Item agentConfig)
        Specified by:
        defineAgent in interface Kernel
      • createAgentFactory

        swim.api.agent.AgentFactory<?> createAgentFactory​(swim.api.agent.AgentDef agentDef,
                                                          ClassLoader classLoader)
        Specified by:
        createAgentFactory in interface Kernel
      • createAgentFactory

        swim.api.agent.AgentFactory<?> createAgentFactory​(swim.system.NodeBinding node,
                                                          swim.api.agent.AgentDef agentDef)
      • createAgentFactory

        <A extends swim.api.agent.Agent> swim.api.agent.AgentFactory<A> createAgentFactory​(Class<? extends A> agentClass)
        Specified by:
        createAgentFactory in interface Kernel
      • createAgentFactory

        <A extends swim.api.agent.Agent> swim.api.agent.AgentFactory<A> createAgentFactory​(swim.system.NodeBinding node,
                                                                                           Class<? extends A> agentClass)
      • createAgentRoute

        <A extends swim.api.agent.Agent> swim.api.agent.AgentRoute<A> createAgentRoute​(swim.system.EdgeBinding edge,
                                                                                       Class<? extends A> agentClass)
      • openAgents

        void openAgents​(swim.system.NodeBinding node)
      • openLanes

        void openLanes​(swim.system.NodeBinding node)
      • createEdge

        swim.system.EdgeBinding createEdge​(swim.system.EdgeAddress edgeAddress)
      • injectEdge

        swim.system.EdgeBinding injectEdge​(swim.system.EdgeAddress edgeAddress,
                                           swim.system.EdgeBinding edge)
      • openMetaEdge

        void openMetaEdge​(swim.system.EdgeBinding edge,
                          swim.system.NodeBinding metaEdge)
      • defineMesh

        swim.system.MeshDef defineMesh​(swim.structure.Item meshConfig)
      • getMeshDef

        swim.system.MeshDef getMeshDef​(swim.system.MeshAddress meshAddress)
      • createMesh

        swim.system.MeshBinding createMesh​(swim.system.EdgeBinding edge,
                                           swim.system.MeshDef meshDef)
      • createMesh

        swim.system.MeshBinding createMesh​(swim.system.MeshAddress meshAddress)
      • injectMesh

        swim.system.MeshBinding injectMesh​(swim.system.MeshAddress meshAddress,
                                           swim.system.MeshBinding mesh)
      • openMetaMesh

        void openMetaMesh​(swim.system.MeshBinding mesh,
                          swim.system.NodeBinding metaMesh)
      • definePart

        swim.system.PartDef definePart​(swim.structure.Item partConfig)
      • getPartDef

        swim.system.PartDef getPartDef​(swim.system.PartAddress partAddress)
      • createPart

        swim.system.PartBinding createPart​(swim.system.MeshBinding mesh,
                                           swim.system.PartDef partDef)
      • createPart

        swim.system.PartBinding createPart​(swim.system.PartAddress partAddress)
      • injectPart

        swim.system.PartBinding injectPart​(swim.system.PartAddress partAddress,
                                           swim.system.PartBinding part)
      • openMetaPart

        void openMetaPart​(swim.system.PartBinding part,
                          swim.system.NodeBinding metaPart)
      • defineHost

        swim.system.HostDef defineHost​(swim.structure.Item hostConfig)
      • getHostDef

        swim.system.HostDef getHostDef​(swim.system.HostAddress hostAddress)
      • createHost

        swim.system.HostBinding createHost​(swim.system.PartBinding part,
                                           swim.system.HostDef hostDef)
      • createHost

        swim.system.HostBinding createHost​(swim.system.HostAddress hostAddress)
      • injectHost

        swim.system.HostBinding injectHost​(swim.system.HostAddress hostAddress,
                                           swim.system.HostBinding host)
      • openMetaHost

        void openMetaHost​(swim.system.HostBinding host,
                          swim.system.NodeBinding metaHost)
      • defineNode

        swim.system.NodeDef defineNode​(swim.structure.Item nodeConfig)
      • getNodeDef

        swim.system.NodeDef getNodeDef​(swim.system.NodeAddress nodeAddress)
      • createNode

        swim.system.NodeBinding createNode​(swim.system.HostBinding host,
                                           swim.system.NodeDef nodeDef)
      • createNode

        swim.system.NodeBinding createNode​(swim.system.NodeAddress nodeAddress)
      • injectNode

        swim.system.NodeBinding injectNode​(swim.system.NodeAddress nodeAddress,
                                           swim.system.NodeBinding node)
      • openMetaNode

        void openMetaNode​(swim.system.NodeBinding node,
                          swim.system.NodeBinding metaNode)
      • defineLane

        swim.system.LaneDef defineLane​(swim.structure.Item laneConfig)
      • getLaneDef

        swim.system.LaneDef getLaneDef​(swim.system.LaneAddress laneAddress)
      • createLane

        swim.system.LaneBinding createLane​(swim.system.NodeBinding node,
                                           swim.system.LaneDef laneDef)
      • createLane

        swim.system.LaneBinding createLane​(swim.system.LaneAddress laneAddress)
      • injectLane

        swim.system.LaneBinding injectLane​(swim.system.LaneAddress laneAddress,
                                           swim.system.LaneBinding lane)
      • openMetaLane

        void openMetaLane​(swim.system.LaneBinding lane,
                          swim.system.NodeBinding metaLane)
      • openMetaUplink

        void openMetaUplink​(swim.system.LinkBinding uplink,
                            swim.system.NodeBinding metaUplink)
      • openMetaDownlink

        void openMetaDownlink​(swim.system.LinkBinding downlink,
                              swim.system.NodeBinding metaDownlink)
      • reportDown

        void reportDown​(swim.system.Metric metric)