Class: VertxWeb::RoutingContext
- Inherits:
-
Object
- Object
- VertxWeb::RoutingContext
- Defined in:
- /Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb
Overview
A new instance is created for each HTTP request that is received in the VertxWeb::Router#accept of the router.
The same instance is passed to any matching request or failure handlers during the routing of the request or failure.
The context provides access to the and and allows you to maintain arbitrary data that lives for the lifetime of the context. Contexts are discarded once they have been routed to the handler for the request.
The context also provides access to the Session, cookies and body for the request, given the correct handlers in the application.
Instance Method Summary (collapse)
-
- (Array<::VertxWeb::Locale>) acceptable_locales
Returns the locales for the current request.
-
- (Fixnum) add_body_end_handler { ... }
Add a handler that will be called just before the response body has been completely written.
-
- (self) add_cookie(cookie = nil)
Add a cookie.
-
- (Fixnum) add_headers_end_handler { ... }
Add a handler that will be called just before headers are written to the response.
-
- (void) clear_user
Clear the current user object in the context.
-
- (Fixnum) cookie_count
@return the number of cookies.
-
- (Set<::VertxWeb::Cookie>) cookies
@return a set of all the cookies.
-
- (::VertxWeb::Route) current_route
@return the current route this context is being routed through.
-
- (void) fail(param_1 = nil)
Fail the context with the specified throwable.
-
- (true, false) failed?
@return true if the context is being routed to failure handlers.
-
- (Exception) failure
If the context is being routed to failure handlers after a failure has been triggered by calling #fail then this will return that throwable.
-
- (Set<::VertxWeb::FileUpload>) file_uploads
@return a set of fileuploads (if any) for the request.
-
- (Object) get(key = nil)
Get some data from the context.
-
- (String) get_acceptable_content_type
If the route specifies produces matches, e.g.
-
- (::Vertx::Buffer) get_body
@return Get the entire HTTP request body as a .
-
- (Hash{String => Object}) get_body_as_json
@return Get the entire HTTP request body as a .
-
- (Array<String,Object>) get_body_as_json_array
@return Get the entire HTTP request body as a .
-
- (String) get_body_as_string(encoding = nil)
Get the entire HTTP request body as a string, assuming the specified encoding.
-
- (::VertxWeb::Cookie) get_cookie(name = nil)
Get the cookie with the specified name.
-
- (String) mount_point
@return the mount point for this router.
-
- (void) next
Tell the router to route this context to the next matching route (if any).
-
- (String) normalised_path
Return the normalised path for the request.
-
- (String) path_param(name = nil)
Gets the value of a single path parameter.
-
- (Hash{String => String}) path_params
Returns a map of named parameters as defined in path declaration with their actual values.
-
- (::VertxWeb::Locale) preferred_locale
Helper to return the user preferred locale.
-
- (self) put(key = nil, obj = nil)
Put some arbitrary data in the context.
-
- (true, false) remove_body_end_handler?(handlerID = nil)
Remove a body end handler.
-
- (::VertxWeb::Cookie) remove_cookie(name = nil)
Remove a cookie.
-
- (true, false) remove_headers_end_handler?(handlerID = nil)
Remove a headers end handler.
-
- (::Vertx::HttpServerRequest) request
@return the HTTP request object.
-
- (void) reroute(param_1 = nil, param_2 = nil)
Restarts the current router with a new method and path.
-
- (::Vertx::HttpServerResponse) response
@return the HTTP response object.
-
- (::VertxWeb::Session) session
Get the session.
-
- (void) set_acceptable_content_type(contentType = nil)
Set the acceptable content type.
-
- (void) set_body(body = nil)
Set the body.
-
- (void) set_session(session = nil)
Set the session.
-
- (void) set_user(user = nil)
Set the user.
-
- (Fixnum) status_code
If the context is being routed to failure handlers after a failure has been triggered by calling #fail then this will return that status code.
-
- (::VertxAuthCommon::User) user
Get the authenticated user (if any).
-
- (::Vertx::Vertx) vertx
@return the Vert.x instance associated to the initiating Router for this context.
Instance Method Details
- (Array<::VertxWeb::Locale>) acceptable_locales
420 421 422 423 424 425 426 427 428 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 420 def acceptable_locales if !block_given? if @cached_acceptable_locales != nil return @cached_acceptable_locales end return @cached_acceptable_locales = @j_del.java_method(:acceptableLocales, []).call().to_a.map { |elt| ::Vertx::Util::Utils.safe_create(elt,::VertxWeb::Locale) } end raise ArgumentError, "Invalid arguments when calling acceptable_locales()" end |
- (Fixnum) add_body_end_handler { ... }
329 330 331 332 333 334 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 329 def add_body_end_handler if block_given? return @j_del.java_method(:addBodyEndHandler, [Java::IoVertxCore::Handler.java_class]).call(Proc.new { yield }) end raise ArgumentError, "Invalid arguments when calling add_body_end_handler()" end |
- (self) add_cookie(cookie = nil)
168 169 170 171 172 173 174 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 168 def (=nil) if .class.method_defined?(:j_del) && !block_given? @j_del.java_method(:addCookie, [Java::IoVertxExtWeb::Cookie.java_class]).call(.j_del) return self end raise ArgumentError, "Invalid arguments when calling add_cookie(cookie)" end |
- (Fixnum) add_headers_end_handler { ... }
310 311 312 313 314 315 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 310 def add_headers_end_handler if block_given? return @j_del.java_method(:addHeadersEndHandler, [Java::IoVertxCore::Handler.java_class]).call(Proc.new { yield }) end raise ArgumentError, "Invalid arguments when calling add_headers_end_handler()" end |
- (void) clear_user
This method returns an undefined value.
Clear the current user object in the context. This usually is used for implementing a log out feature, since the current user is unbounded from the routing context.
382 383 384 385 386 387 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 382 def clear_user if !block_given? return @j_del.java_method(:clearUser, []).call() end raise ArgumentError, "Invalid arguments when calling clear_user()" end |
- (Fixnum) cookie_count
188 189 190 191 192 193 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 188 def if !block_given? return @j_del.java_method(:cookieCount, []).call() end raise ArgumentError, "Invalid arguments when calling cookie_count()" end |
- (Set<::VertxWeb::Cookie>) cookies
197 198 199 200 201 202 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 197 def if !block_given? return ::Vertx::Util::Utils.to_set(@j_del.java_method(:cookies, []).call()).map! { |elt| ::Vertx::Util::Utils.safe_create(elt,::VertxWeb::Cookie) } end raise ArgumentError, "Invalid arguments when calling cookies()" end |
- (::VertxWeb::Route) current_route
130 131 132 133 134 135 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 130 def current_route if !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:currentRoute, []).call(),::VertxWeb::Route) end raise ArgumentError, "Invalid arguments when calling current_route()" end |
- (void) fail(statusCode) - (void) fail(throwable)
This method returns an undefined value.
Fail the context with the specified throwable.This will cause the router to route the context to any matching failure handlers for the request. If no failure handlers match a default failure response with status code 500 will be sent.
83 84 85 86 87 88 89 90 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 83 def fail(param_1=nil) if param_1.class == Fixnum && !block_given? return @j_del.java_method(:fail, [Java::int.java_class]).call(param_1) elsif param_1.is_a?(Exception) && !block_given? return @j_del.java_method(:fail, [Java::JavaLang::Throwable.java_class]).call(::Vertx::Util::Utils.to_throwable(param_1)) end raise ArgumentError, "Invalid arguments when calling fail(param_1)" end |
- (true, false) failed?
346 347 348 349 350 351 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 346 def failed? if !block_given? return @j_del.java_method(:failed, []).call() end raise ArgumentError, "Invalid arguments when calling failed?()" end |
- (Exception) failure
273 274 275 276 277 278 279 280 281 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 273 def failure if !block_given? if @cached_failure != nil return @cached_failure end return @cached_failure = ::Vertx::Util::Utils.from_throwable(@j_del.java_method(:failure, []).call()) end raise ArgumentError, "Invalid arguments when calling failure()" end |
- (Set<::VertxWeb::FileUpload>) file_uploads
245 246 247 248 249 250 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 245 def file_uploads if !block_given? return ::Vertx::Util::Utils.to_set(@j_del.java_method(:fileUploads, []).call()).map! { |elt| ::Vertx::Util::Utils.safe_create(elt,::VertxWeb::FileUpload) } end raise ArgumentError, "Invalid arguments when calling file_uploads()" end |
- (Object) get(key = nil)
105 106 107 108 109 110 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 105 def get(key=nil) if key.class == String && !block_given? return ::Vertx::Util::Utils.from_object(@j_del.java_method(:get, [Java::java.lang.String.java_class]).call(key)) end raise ArgumentError, "Invalid arguments when calling get(key)" end |
- (String) get_acceptable_content_type
300 301 302 303 304 305 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 300 def get_acceptable_content_type if !block_given? return @j_del.java_method(:getAcceptableContentType, []).call() end raise ArgumentError, "Invalid arguments when calling get_acceptable_content_type()" end |
- (::Vertx::Buffer) get_body
236 237 238 239 240 241 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 236 def get_body if !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:getBody, []).call(),::Vertx::Buffer) end raise ArgumentError, "Invalid arguments when calling get_body()" end |
- (Hash{String => Object}) get_body_as_json
218 219 220 221 222 223 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 218 def get_body_as_json if !block_given? return @j_del.java_method(:getBodyAsJson, []).call() != nil ? JSON.parse(@j_del.java_method(:getBodyAsJson, []).call().encode) : nil end raise ArgumentError, "Invalid arguments when calling get_body_as_json()" end |
- (Array<String,Object>) get_body_as_json_array
227 228 229 230 231 232 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 227 def get_body_as_json_array if !block_given? return @j_del.java_method(:getBodyAsJsonArray, []).call() != nil ? JSON.parse(@j_del.java_method(:getBodyAsJsonArray, []).call().encode) : nil end raise ArgumentError, "Invalid arguments when calling get_body_as_json_array()" end |
- (String) get_body_as_string(encoding = nil)
207 208 209 210 211 212 213 214 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 207 def get_body_as_string(encoding=nil) if !block_given? && encoding == nil return @j_del.java_method(:getBodyAsString, []).call() elsif encoding.class == String && !block_given? return @j_del.java_method(:getBodyAsString, [Java::java.lang.String.java_class]).call(encoding) end raise ArgumentError, "Invalid arguments when calling get_body_as_string(encoding)" end |
- (::VertxWeb::Cookie) get_cookie(name = nil)
158 159 160 161 162 163 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 158 def (name=nil) if name.class == String && !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:getCookie, [Java::java.lang.String.java_class]).call(name),::VertxWeb::Cookie) end raise ArgumentError, "Invalid arguments when calling get_cookie(name)" end |
- (String) mount_point
122 123 124 125 126 127 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 122 def mount_point if !block_given? return @j_del.java_method(:mountPoint, []).call() end raise ArgumentError, "Invalid arguments when calling mount_point()" end |
- (void) next
This method returns an undefined value.
Tell the router to route this context to the next matching route (if any). This method, if called, does not need to be called during the execution of the handler, it can be called some arbitrary time later, if required.If next is not called for a handler then the handler should make sure it ends the response or no response will be sent.
68 69 70 71 72 73 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 68 def next if !block_given? return @j_del.java_method(:next, []).call() end raise ArgumentError, "Invalid arguments when calling next()" end |
- (String) normalised_path
The normalised path is where the URI path has been decoded, i.e. any unicode or other illegal URL characters that were encoded in the original URL with `%` will be returned to their original form. E.g. `%20` will revert to a space. Also `+` reverts to a space in a query.
The normalised path will also not contain any `..` character sequences to prevent resources being accessed outside of the permitted area.
It's recommended to always use the normalised path as opposed to if accessing server resources requested by a client.
148 149 150 151 152 153 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 148 def normalised_path if !block_given? return @j_del.java_method(:normalisedPath, []).call() end raise ArgumentError, "Invalid arguments when calling normalised_path()" end |
- (String) path_param(name = nil)
449 450 451 452 453 454 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 449 def path_param(name=nil) if name.class == String && !block_given? return @j_del.java_method(:pathParam, [Java::java.lang.String.java_class]).call(name) end raise ArgumentError, "Invalid arguments when calling path_param(name)" end |
- (Hash{String => String}) path_params
440 441 442 443 444 445 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 440 def path_params if !block_given? return Java::IoVertxLangRuby::Helper.adaptingMap(@j_del.java_method(:pathParams, []).call(), Proc.new { |val| ::Vertx::Util::Utils.from_object(val) }, Proc.new { |val| ::Vertx::Util::Utils.to_string(val) }) end raise ArgumentError, "Invalid arguments when calling path_params()" end |
- (::VertxWeb::Locale) preferred_locale
432 433 434 435 436 437 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 432 def preferred_locale if !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:preferredLocale, []).call(),::VertxWeb::Locale) end raise ArgumentError, "Invalid arguments when calling preferred_locale()" end |
- (self) put(key = nil, obj = nil)
95 96 97 98 99 100 101 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 95 def put(key=nil,obj=nil) if key.class == String && (obj.class == String || obj.class == Hash || obj.class == Array || obj.class == NilClass || obj.class == TrueClass || obj.class == FalseClass || obj.class == Fixnum || obj.class == Float) && !block_given? @j_del.java_method(:put, [Java::java.lang.String.java_class,Java::java.lang.Object.java_class]).call(key,::Vertx::Util::Utils.to_object(obj)) return self end raise ArgumentError, "Invalid arguments when calling put(key,obj)" end |
- (true, false) remove_body_end_handler?(handlerID = nil)
338 339 340 341 342 343 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 338 def remove_body_end_handler?(handlerID=nil) if handlerID.class == Fixnum && !block_given? return @j_del.java_method(:removeBodyEndHandler, [Java::int.java_class]).call(handlerID) end raise ArgumentError, "Invalid arguments when calling remove_body_end_handler?(handlerID)" end |
- (::VertxWeb::Cookie) remove_cookie(name = nil)
179 180 181 182 183 184 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 179 def (name=nil) if name.class == String && !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:removeCookie, [Java::java.lang.String.java_class]).call(name),::VertxWeb::Cookie) end raise ArgumentError, "Invalid arguments when calling remove_cookie(name)" end |
- (true, false) remove_headers_end_handler?(handlerID = nil)
319 320 321 322 323 324 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 319 def remove_headers_end_handler?(handlerID=nil) if handlerID.class == Fixnum && !block_given? return @j_del.java_method(:removeHeadersEndHandler, [Java::int.java_class]).call(handlerID) end raise ArgumentError, "Invalid arguments when calling remove_headers_end_handler?(handlerID)" end |
- (::Vertx::HttpServerRequest) request
41 42 43 44 45 46 47 48 49 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 41 def request if !block_given? if @cached_request != nil return @cached_request end return @cached_request = ::Vertx::Util::Utils.safe_create(@j_del.java_method(:request, []).call(),::Vertx::HttpServerRequest) end raise ArgumentError, "Invalid arguments when calling request()" end |
- (void) reroute(path) - (void) reroute(method, path)
This method returns an undefined value.
Restarts the current router with a new method and path. All path parameters are then parsed and available on the params list.
405 406 407 408 409 410 411 412 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 405 def reroute(param_1=nil,param_2=nil) if param_1.class == String && !block_given? && param_2 == nil return @j_del.java_method(:reroute, [Java::java.lang.String.java_class]).call(param_1) elsif param_1.class == Symbol && param_2.class == String && !block_given? return @j_del.java_method(:reroute, [Java::IoVertxCoreHttp::HttpMethod.java_class,Java::java.lang.String.java_class]).call(Java::IoVertxCoreHttp::HttpMethod.valueOf(param_1),param_2) end raise ArgumentError, "Invalid arguments when calling reroute(param_1,param_2)" end |
- (::Vertx::HttpServerResponse) response
52 53 54 55 56 57 58 59 60 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 52 def response if !block_given? if @cached_response != nil return @cached_response end return @cached_response = ::Vertx::Util::Utils.safe_create(@j_del.java_method(:response, []).call(),::Vertx::HttpServerResponse) end raise ArgumentError, "Invalid arguments when calling response()" end |
- (::VertxWeb::Session) session
255 256 257 258 259 260 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 255 def session if !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:session, []).call(),::VertxWeb::Session) end raise ArgumentError, "Invalid arguments when calling session()" end |
- (void) set_acceptable_content_type(contentType = nil)
This method returns an undefined value.
Set the acceptable content type. Used by
391 392 393 394 395 396 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 391 def set_acceptable_content_type(contentType=nil) if contentType.class == String && !block_given? return @j_del.java_method(:setAcceptableContentType, [Java::java.lang.String.java_class]).call(contentType) end raise ArgumentError, "Invalid arguments when calling set_acceptable_content_type(contentType)" end |
- (void) set_body(body = nil)
This method returns an undefined value.
Set the body. Used by the BodyHandler. You will not normally call this method.
355 356 357 358 359 360 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 355 def set_body(body=nil) if body.class.method_defined?(:j_del) && !block_given? return @j_del.java_method(:setBody, [Java::IoVertxCoreBuffer::Buffer.java_class]).call(body.j_del) end raise ArgumentError, "Invalid arguments when calling set_body(body)" end |
- (void) set_session(session = nil)
This method returns an undefined value.
Set the session. Used by the SessionHandler. You will not normally call this method.
364 365 366 367 368 369 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 364 def set_session(session=nil) if session.class.method_defined?(:j_del) && !block_given? return @j_del.java_method(:setSession, [Java::IoVertxExtWeb::Session.java_class]).call(session.j_del) end raise ArgumentError, "Invalid arguments when calling set_session(session)" end |
- (void) set_user(user = nil)
This method returns an undefined value.
Set the user. Usually used by auth handlers to inject a User. You will not normally call this method.
373 374 375 376 377 378 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 373 def set_user(user=nil) if user.class.method_defined?(:j_del) && !block_given? return @j_del.java_method(:setUser, [Java::IoVertxExtAuth::User.java_class]).call(user.j_del) end raise ArgumentError, "Invalid arguments when calling set_user(user)" end |
- (Fixnum) status_code
288 289 290 291 292 293 294 295 296 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 288 def status_code if !block_given? if @cached_status_code != nil return @cached_status_code end return @cached_status_code = @j_del.java_method(:statusCode, []).call() end raise ArgumentError, "Invalid arguments when calling status_code()" end |
- (::VertxAuthCommon::User) user
263 264 265 266 267 268 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 263 def user if !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:user, []).call(),::VertxAuthCommon::User) end raise ArgumentError, "Invalid arguments when calling user()" end |
- (::Vertx::Vertx) vertx
113 114 115 116 117 118 |
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/routing_context.rb', line 113 def vertx if !block_given? return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:vertx, []).call(),::Vertx::Vertx) end raise ArgumentError, "Invalid arguments when calling vertx()" end |