The Endpoint is an entrypoint to the Server. To add a custom Endpoint
to a Server, create a subclass and place it in the endpoints directory.
Code will generated that builds the corresponding client library. To add
methods that can be accessed from the client, make sure that the first
argument of the method is a Session parameter.
The EndpointDispatch is responsible for directing requests to the Server
to the correct Endpoint and method. Typically, this class is overridden
by an Endpoints class that is generated.
Superclass of a FutureCall, override the invoke method to create a
custom FutureCall. The call also needs to be registered with the top
ServerPod object before starting the Server.
A Session used internally in the ServerPod. Typically used to access
the database and do logging for events that are not triggered from a call,
or a stream.
The MessageCentral handles communication within the server, and between
servers in a cluster. It is especially useful when working with streaming
endpoints. The message central can pass on any serializable to a channel.
The channel can be listened to by from any place in the server.
When a call is made to the Server a MethodCallSession object is created.
It contains all data associated with the current connection and provides
easy access to the database.
The MethodStreamConnector hooks up a method with its name and
implementation. The method communicates with the client using a websocket
connection. Enabling support for streaming return values or parameters.
When a connection is made to the Server to an endpoint method that uses a
stream MethodStreamSession object is created. It contains all data
associated with the current connection and provides easy access to the
database.
Used to define who can access an Endpoint. Authenticated users can be
associated with a Scope, if the same scope is defined in the Endpoint
the user is granted access. The scope is defined by its name.
The SerializationManager is responsible for creating objects from a
serialization, but also for serializing objects. This class is typically
overridden by generated code. SerializationManagerServer is an extension to
also handle Tables.
Represents a snapshot of a specific health metric. An entry is written every
minute for each server. All health data can be accessed through Serverpod
Insights.
The Serverpod handles all setup and manages the main Server. In addition
to the user managed server, it also runs a server for handling the
DistributedCache and other connections through the InsightsEndpoint.
When a call is made to the Server a Session object is created. It
contains all data associated with the current connection and provides
easy access to the database.
When a web socket connection is opened to the Server a StreamingSession
object is created. It contains all data associated with the current
connection and provides easy access to the database.
When a request is made to the web server a WebCallSession object is
created. It contains all data associated with the current connection and
provides easy access to the database.