Skip to main content
Version: v1.25.x LTS

URI Broker

URI Broker

The URI Broker is an object in the application plug-in web framework, which facilitates calls to the Zowe™ Application Server by constructing URIs that use the context from the calling application plug-in.

  1. Accessing the URI Broker
    1. Natively
    2. In an iframe
  2. Functions
    1. Accessing App's Dataservices
      1. HTTP Dataservice URI
      2. Websocket Dataservice URI
    2. Accessing App's Configuration Resources
      1. Standard Configuration Access
      2. Scoped Configuration Access
    3. Accessing Static Content
    4. Accessing the App's Root
    5. Server Queries
      1. Accessing List of Plugins

Accessing the URI Broker#

The URI Broker is accessible independent of other frameworks involved such as Angular, and is also accessible through iframe. This is because it is attached to a global when within the Zowe Desktop. For more information, see Zowe Desktop and window management. Access the URI Broker through one of two locations:

Natively:

window.ZoweZLUX.uriBroker

In an iframe:

window.parent.ZoweZLUX.uriBroker

Functions#

The URI Broker builds the following categories of URIs depending upon what the application plug-in is designed to call.

Accessing an application plug-in's dataservices#

Dataservices can be based on HTTP (REST) or Websocket. For more information, see Dataservices.

HTTP Dataservice URI#

pluginRESTUri(plugin:ZLUX.Plugin, serviceName: string, relativePath:string): string

Returns: A URI for making an HTTP service request.

Websocket Dataservice URI#

pluginWSUri(plugin: ZLUX.Plugin, serviceName:string, relativePath:string): string

Returns: A URI for making a Websocket connection to the service.

Accessing application plug-in's configuration resources#

Defaults and user storage might exist for an application plug-in such that they can be retrieved through the Configuration Dataservice.

There are different scopes and actions to take with this service, and therefore there are a few URIs that can be built:

Standard configuration access#

pluginConfigUri(pluginDefinition: ZLUX.Plugin, resourcePath:string, resourceName?:string): string

Returns: A URI for accessing the requested resource under the user's storage.

Scoped configuration access#

pluginConfigForScopeUri(pluginDefinition: ZLUX.Plugin, scope: string, resourcePath:string, resourceName?:string): string

Returns: A URI for accessing a specific scope for a given resource.

Accessing static content#

Content under an application plug-in's web directory is static content accessible by a browser. This can be accessed through:

pluginResourceUri(pluginDefinition: ZLUX.Plugin, relativePath: string): string

Returns: A URI for getting static content.

For more information about the web directory, see Application plug-in filesystem structure.

Accessing the application plug-in's root#

Static content and services are accessed off of the root URI of an application plug-in. If there are other points that you must access on that application plug-in, you can get the root:

pluginRootUri(pluginDefinition: ZLUX.Plugin): string

Returns: A URI to the root of the application plug-in.

Server queries#

A client can find different information about a server's configuration or the configuration as seen by the current user by accessing specific APIs.

Accessing a list of plug-ins#

pluginListUri(pluginType: ZLUX.PluginType): string

Returns: A URI, which when accessed returns the list of existing plug-ins on the server by type, such as "Application" or "all".