Class PathTemplate (4.4.0)

 public sealed class PathTemplate 

Represents a path template used for resource names which may be composed of multiple IDs.

Inheritance

object > PathTemplate

Namespace

Google.Api.Gax

Assembly

Google.Api.Gax.dll

Remarks

Templates use a subset of the syntax of the API platform. See https://github.com/googleapis/googleapis/blob/master/google/api/http.proto for details of the API platform.

This class performs no URL escaping or unescaping. It is designed for use within GRPC, where no URL encoding is required.

Constructors

PathTemplate(string)

 public PathTemplate(string template) 

Constructs a template from its textual representation, such as shelves/ /books/ * .

Parameter
Name
Description
template
string

The textual representation of the template. Must not be null.

Properties

ParameterCount

 public int ParameterCount { get; } 

The number of parameter segments (regular wildcards or path wildcards, named or unnamed) in the template.

Property Value
Type
Description
int

ParameterNames

 public IReadOnlyList<string> ParameterNames { get; } 

The names of the parameters within the template. This collection has one element per parameter, but unnamed parameters have a name of null .

Property Value
Type
Description

Methods

Expand(params string[])

 public string Expand(params string[] resourceIds) 

Validates that the given resource IDs are valid for this template, and returns a string representation

Parameter
Name
Description
resourceIds
string

The resource IDs to use to populate the parameters in this template. Must not be null.

Returns
Type
Description

The string representation of the resource name.

Remarks

This is equivalent to calling new ResourceName(template, resourceIds).ToString() , but simpler in calling code and more efficient in terms of memory allocation.

This method assumes no service name is required. Call ExpandWithService(string, params string[]) to specify a service name.

ExpandWithService(string, params string[])

 public string ExpandWithService(string serviceName, params string[] resourceIds) 

Validates that the given resource IDs are valid for this template, and returns a string representation

Parameters
Name
Description
serviceName
string

The service name, which may be null.

resourceIds
string

The resource IDs to use to populate the parameters in this template. Must not be null.

Returns
Type
Description

The string representation of the resource name.

ParseName(string)

 public TemplatedResourceName ParseName(string name) 

Attempts to parse the given resource name against this template, throwing ArgumentException on failure.

Parameter
Name
Description
name
string

The resource name to parse against this template. Must not be null.

Returns
Type
Description

ToString()

 public override string ToString() 

Returns the textual representation of this template.

Returns
Type
Description

The same textual representation that this template was initially constructed with.

Overrides

TryParseName(string, out TemplatedResourceName)

 public bool TryParseName(string name, out TemplatedResourceName result) 

Attempts to parse the given resource name against this template, returning null on failure.

Parameters
Name
Description
name
string

The resource name to parse against this template. Must not be null.

result
TemplatedResourceName

When this method returns, the parsed resource name or null if parsing fails.

Returns
Type
Description

true if the name was parsed successfully; false otherwise.

Remarks

Although this method returns null if a name is passed in which doesn't match the template, it still throws ArgumentNullException if name is null, as this would usually indicate a programming error rather than a data error.

Create a Mobile Website
View Site in Mobile | Classic
Share by: