Package com.azure.core.annotation
Annotation Type PathParam
Annotation to annotate replacement for a named path segment in REST endpoint URL.
A parameter that is annotated with PathParam will be ignored if the "uri template" does not contain a path
segment variable with name value()
.
Example 1:
@Get("subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/" + "virtualMachines/") VirtualMachine getByResourceGroup(@PathParam("subscriptionId") String subscriptionId, @PathParam("resourceGroupName") String rgName, @PathParam("foo") String bar); // The value of parameters subscriptionId, resourceGroupName will be encoded and used to replace the // corresponding path segments {subscriptionId}, {resourceGroupName} respectively.
Example 2: (A use case where PathParam.encoded=true will be used)
// It is possible that a path segment variable can be used to represent sub path: @Get("http://wq.com/foo/{subpath}/value") String getValue(@PathParam("subpath") String param1); // In this case, if consumer pass "a/b" as the value for param1 then the resolved url looks like: // "http://wq.com/foo/a%2Fb/value".
// For such cases the encoded attribute can be used: @Get("http://wq.com/foo/{subpath}/values") List<String> getValues(@PathParam(value = "subpath", encoded = true) String param1); // In this case, if consumer pass "a/b" as the value for param1 then the resolved url looks as expected: // "http://wq.com/foo/a/b/values".
-
Required Element Summary
-
Optional Element Summary
-
Element Details
-
value
String valueThe name of the variable in the endpoint uri template which will be replaced with the value of the parameter annotated with this annotation.- Returns:
- The name of the variable in the endpoint uri template which will be replaced with the value of the parameter annotated with this annotation.
-
-
-
encoded
boolean encodedA value true for this argument indicates that value ofvalue()
is already encoded hence engine should not encode it, by default value will be encoded.- Returns:
- Whether or not this path parameter is already encoded.
- Default:
- false
-