StatusRestService class Null safety

Service that returns microservice status information via HTTP/REST protocol.

The service responds on /status route (can be changed) with a JSON object: { - 'id': unique container id (usually hostname) - 'name': container name (from ContextInfo) - 'description': container description (from ContextInfo) - 'start_time': time when container was started - 'current_time': current time in UTC - 'uptime': duration since container start time in milliseconds - 'properties': additional container properties (from ContextInfo) - 'components': descriptors of components registered in the container }

Configuration parameters

  • base_route: base route for remote URI
  • route: status route (default: 'status')
  • dependencies:
    • endpoint: override for HTTP Endpoint dependency
    • controller: override for Controller dependency
  • connection(s):
    • discovery_key: (optional) a key to retrieve the connection from IDiscovery
    • protocol: connection protocol: http or https
    • host: host name or IP address
    • port: port number
    • uri: resource URI or connection string with all parameters in it

References

  • \*:logger:\*:\*:1.0 (optional) ILoggerhttps://pub.dev/documentation/pip_services3_components/latest/pip_services3_components/ILogger-class.html components to pass log messages
  • \*:counters:\*:\*:1.0 (optional) ICountershttps://pub.dev/documentation/pip_services3_components/latest/pip_services3_components/ICounters-class.html components to pass collected measurements
  • \*:discovery:\*:\*:1.0 (optional) IDiscovery services to resolve connection
  • \*:endpoint:http:\*:1.0 (optional) HttpEndpoint reference

See RestService See RestClient

Example

var service = StatusService();
service.configure(ConfigParams.fromTuples([
    'connection.protocol', 'http',
    'connection.host', 'localhost',
    'connection.port', 8080
]));

await service.open('123')
console.log('The Status service is accessible at http://+:8080/status');
Inheritance

Constructors

StatusRestService()
Creates a new instance of this service.

Properties

baseRoute String?
The base route.
read / writeinherited
config ConfigParams?
read / writeinherited
counters CompositeCounters
The performance counters.
read / writeinherited
dependencyResolver DependencyResolver
The dependency resolver.
read / writeinherited
endpoint HttpEndpoint?
The HTTP endpoint that exposes this service.
read / writeinherited
hashCode int
The hash code for this object.
read-onlyinherited
logger CompositeLogger
The logger.
read / writeinherited
runtimeType Type
A representation of the runtime type of the object.
read-onlyinherited
swaggerEnable bool
read / writeinherited
swaggerRoute String
read / writeinherited
tracer CompositeTracer
read / writeinherited

Methods

close(String? correlationId) Future
Closes component and frees used resources.
inherited
configure(ConfigParams config) → void
Configures component by passing configuration parameters.
override
getCorrelationId(Request req) String?
Returns correlationId from request
inherited
instrument(String? correlationId, String name) InstrumentTiming
Adds instrumentation to log calls and measure call time. It returns a Timing object that is used to end the time measurement.
inherited
instrumentError(String? correlationId, String name, dynamic err, [bool? reerror = false]) → void
Adds instrumentation to error handling.
inherited
isOpen() bool
Checks if the component is opened.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
inherited
open(String? correlationId) Future
Opens the component.
inherited
register() → void
Registers all service routes in HTTP endpoint.
override
registerInterceptor(String route, dynamic action(Request req)) → void
Registers a middleware for a given route in HTTP endpoint.
inherited
registerOpenApiSpec_(String content) → void
inherited
registerOpenApiSpecFromFile(String path) → void
inherited
registerRoute(String method, String route, Schema? schema, FutureOr<Response> action(Request req)) → void
Registers a route in HTTP endpoint.
inherited
registerRouteWithAuth(String method, String route, Schema schema, FutureOr<Response?> authorize(Request req, Future next()), FutureOr<Response> action(Request req)) → void
Registers a route with authorization in HTTP endpoint.
inherited
sendCreatedResult(Request req, dynamic result) FutureOr<Response>
Creates function that sends newly created object as JSON. That function call be called directly or passed as a parameter to business logic components.
inherited
sendDeletedResult(Request req, dynamic result) FutureOr<Response>
Creates a function that sends deleted object as JSON. That function call be called directly or passed as a parameter to business logic components.
inherited
sendError(Request req, dynamic error) FutureOr<Response>
Sends error serialized as ErrorDescription object and appropriate HTTP status code. If status code is not defined, it uses 500 status code.
inherited
sendResult(Request req, dynamic result) FutureOr<Response>
Sends result as JSON object. That function call be called directly or passed as a parameter to business logic components.
inherited
setReferences(IReferences references) → void
Sets references to dependent components.
override
toString() String
A string representation of this object.
inherited
unsetReferences() → void
Unsets (clears) previously set references to dependent components.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited