Binds a route variable from HTTPRequestPath.variables to an HTTPController responder method argument.
Routes may have path variables, e.g., a route declared as follows has a path variable named 'id':
router.route("/users/[:id]");
HTTPController responder methods may bind path variables to their arguments with this metadata. A responder method is invoked if it has exactly the same path bindings as the incoming request's path variables. For example, consider the above route and a controller with the following responder methods:
class UserController extends HTTPController {
@httpGet
Future<Response> getUsers() async => new Response.ok(getAllUsers());
@httpGet
Future<Response> getOneUser(@HTTPPath("id") int id) async => new Response.ok(getUser(id));
}
If the request path is /users/1, /users/2, etc., getOneUser
is invoked because the path variable id
is present and matches
the HTTPPath argument. If no path variables are present, getUsers
is invoked.
- Inheritance
- Object
- HTTPBinding
- HTTPPath
Constructors
- HTTPPath(String segment)
-
Binds a route variable from HTTPRequestPath.variables to an HTTPController responder method argument.
const
Properties
- type → String
-
@override, read-only
- externalName → String
-
The name of the variable in the HTTP request.
final, inherited - hashCode → int
-
The hash code for this object.
read-only, inherited - runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
Operators
-
operator ==(
other) → bool -
The equality operator.
inherited
Methods
-
parse(
ClassMirror intoType, Request request) → dynamic -
convertParameterListWithMirror(
List<String> parameterValues, TypeMirror typeMirror) → dynamic -
inherited
-
convertParameterWithMirror(
String parameterValue, TypeMirror typeMirror) → dynamic -
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
inherited -
toString(
) → String -
Returns a string representation of this object.
inherited