The Resource Manager is a thing named PTC.Resource.ResourceManager that serves as the primary application interface for using
the resource providers. It provides three options for calling services on a resource through its resource provider:
- CallServiceOnProvider—This takes the thing name of a resource provider as a parameter and calls a service on the resource
provider thing by its name as another parameter. The parameters of the service are passed as an InfoTable parameter. This
InfoTable should have only one row with a column for each parameter for the service invoked on the resource provider. The
result is also an InfoTable that typically represents the resources. The "Id" attribute of each resource is prepended with
the thing name of the resource provider as a URN format: [Resource Provider Name]:[Id]. The original "Id" is kept in a separate
"OriginalId" attribute.
- CallServiceOnResources—This takes the same parameters as CallServiceOnProvider, but instead of the resource provider thing
name, an InfoTable is passed to represent the resources. Each of the resources should have its "Id" attribute in the URN format
such that its resource provider can be inferred to invoke the service.
- CallServiceByCriteria—This is a more generic form of invoking a service on any resource provider that matches the criteria
parameters—a thing template name and a list of thing shape names in an InfoTable. The thing template is for a resource provider
template that the service will be invoked on every resource provider thing of the template. The thing shapes are for capability
service providers that may filter these resource providers to have the service invoked only on those that implement these
thing shapes. If the thing template name is not passed, the service would be invoked on any resource providers that implement
these capability service provider thing shapes such that the result would be any type of the resources that have the capabilities
of the thing shapes.