Package org.yamcs.http
Class HttpServer
java.lang.Object
com.google.common.util.concurrent.AbstractService
org.yamcs.AbstractYamcsService
org.yamcs.http.HttpServer
- All Implemented Interfaces:
com.google.common.util.concurrent.Service
,YamcsService
Server-wide HTTP server based on Netty that provides a number of Yamcs web services:
- REST API
- WebSocket API
- Static file serving
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.google.common.util.concurrent.Service
com.google.common.util.concurrent.Service.Listener, com.google.common.util.concurrent.Service.State
-
Field Summary
Fields inherited from class org.yamcs.AbstractYamcsService
config, log, serviceName, yamcsInstance
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
addRoute
(String pathSegment, Supplier<HttpHandler> handler) void
closeChannel
(String id) protected void
doStart()
protected void
doStop()
List<io.netty.channel.Channel>
io.netty.handler.codec.http.cors.CorsConfig
io.netty.handler.traffic.GlobalTrafficShapingHandler
com.google.protobuf.util.JsonFormat.Parser
com.google.protobuf.util.JsonFormat.Printer
com.codahale.metrics.MetricRegistry
boolean
getSpec()
Returns the valid configuration options for this service.void
init
(String yamcsInstance, String serviceName, YConfiguration config) Initialize this service.void
Methods inherited from class org.yamcs.AbstractYamcsService
getConfig, getYamcsInstance
Methods inherited from class com.google.common.util.concurrent.AbstractService
addListener, awaitRunning, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, awaitTerminated, doCancelStart, failureCause, isRunning, notifyFailed, notifyStarted, notifyStopped, startAsync, state, stopAsync, toString
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.google.common.util.concurrent.Service
addListener, awaitRunning, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, awaitTerminated, failureCause, isRunning, startAsync, state, stopAsync
-
Field Details
-
WEBSOCKET_ROUTE
-
TYPE_URL_PREFIX
- See Also:
-
-
Constructor Details
-
HttpServer
public HttpServer()
-
-
Method Details
-
getSpec
Description copied from interface:YamcsService
Returns the valid configuration options for this service.- Returns:
- the argument specification, or
null
if the args should not be validated.
-
init
public void init(String yamcsInstance, String serviceName, YConfiguration config) throws InitException Description copied from interface:YamcsService
Initialize this service. This is called before the service is started. All operations should finish fast.- Specified by:
init
in interfaceYamcsService
- Overrides:
init
in classAbstractYamcsService
- Parameters:
yamcsInstance
- The yamcs instance, ornull
if this is a global service.serviceName
- The service name.config
- The configured arguments for this service. IfYamcsService.getSpec()
is implemented then this contains the arguments after being validated (including any defaults).- Throws:
InitException
- When something goes wrong during the execution of this method.
-
addRoute
-
addApi
-
doStart
protected void doStart()- Specified by:
doStart
in classcom.google.common.util.concurrent.AbstractService
-
startServer
- Throws:
Exception
-
getTokenStore
-
getAuditLog
-
getBindings
-
getContextPath
-
getRoutes
-
getTopics
-
getProtobufRegistry
-
getGlobalTrafficShapingHandler
public io.netty.handler.traffic.GlobalTrafficShapingHandler getGlobalTrafficShapingHandler() -
getJsonParser
public com.google.protobuf.util.JsonFormat.Parser getJsonParser() -
getJsonPrinter
public com.google.protobuf.util.JsonFormat.Printer getJsonPrinter() -
getReverseLookup
public boolean getReverseLookup() -
getCorsConfig
public io.netty.handler.codec.http.cors.CorsConfig getCorsConfig() -
getMetricRegistry
public com.codahale.metrics.MetricRegistry getMetricRegistry() -
getClientChannels
-
closeChannel
-
doStop
protected void doStop()- Specified by:
doStop
in classcom.google.common.util.concurrent.AbstractService
-