Functions -
websub
| addWebSubLinkHeader |
Function to add link headers to a response to allow WebSub discovery. |
| extractTopicAndHubUrls |
Retrieves hub and topic URLs from the |
| startHub |
Starts up the Ballerina Hub. |
Function to add link headers to a response to allow WebSub discovery.
Parameters
- response Response
-
The response being sent
- hubs string[]
-
The hubs the publisher advertises as the hubs that it publishes updates to
- topic string
-
The topic to which subscribers need to subscribe to, to receive updates for the resource
Retrieves hub and topic URLs from the http:response from a publisher to a discovery request.
Parameters
- response Response
-
An
http:Responsereceived
-
Return Type
([string, string[]] | error) A
(topic, hubs)if parsing and extraction is successful or else anerrorif not
startHub
(Listener hubServiceListener, string basePath, string subscriptionResourcePath, string publishResourcePath, ServiceAuth serviceAuth, ResourceAuth subscriptionResourceAuth, ResourceAuth publisherResourceAuth, string? publicUrl, HubConfiguration hubConfiguration)
returns Hub | HubStartedUpError | HubStartupErrorStarts up the Ballerina Hub.
websub:Hub|websub:HubStartedUpError|websub:HubStartupError webSubHub = websub:startHub(new http:Listener(9191),
"/websub", "/hub");
Parameters
- hubServiceListener Listener
-
The
http:Listenerto which the hub service is attached
- basePath string (default /)
-
The base path of the hub service
- subscriptionResourcePath string (default /)
-
The resource path for subscription changes
- publishResourcePath string (default /publish)
-
The resource path for publishing and topic registration
- serviceAuth ServiceAuth (default {enabled: false})
-
The auth configuration for the hub service
- subscriptionResourceAuth ResourceAuth (default {enabled: false})
-
The auth configuration for the subscription resource of the hub service
- publisherResourceAuth ResourceAuth (default {enabled: false})
-
The auth configuration for the publisher resource of the hub service
- publicUrl string? (default ())
-
The URL for the hub for remote interaction; used in defining the subscription and publish URLs. The subscription URL is defined as {publicUrl}/{basePath}/{subscriptionResourcePath} if
publicUrlis specified, defaults tohttp(s)://localhost:{port}/{basePath}/{subscriptionResourcePath}if not. The publish URL is defined as {publicUrl}/{basePath}/{publishResourcePath} ifpublicUrlis specified, defaults tohttp(s)://localhost:{port}/{basePath}/{publishResourcePath}if not.
- hubConfiguration HubConfiguration (default {})
-
The hub specific configuration
-
Return Type
(Hub | HubStartedUpError | HubStartupError) A newly started WebSub Hub or else a
websub:HubStartedUpErrorindicating that the hub is already started, and including thewebsub:Hubobject representing the already started up hub