Class: VertxWeb::SessionHandler

Inherits:
Object
  • Object
show all
Defined in:
/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/session_handler.rb

Overview

A handler that maintains a Session for each browser session.

It looks up the session for each request based on a session cookie which contains a session ID. It stores the session when the response is ended in the session store.

The session is available on the routing context with .

The session handler requires a CookieHandler to be on the routing chain before it.

Class Method Summary (collapse)

Instance Method Summary (collapse)

Class Method Details

+ (::VertxWeb::SessionHandler) create(sessionStore = nil)

Create a session handler

Parameters:

Returns:

Raises:

  • (ArgumentError)


36
37
38
39
40
41
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/session_handler.rb', line 36

def self.create(sessionStore=nil)
  if sessionStore.class.method_defined?(:j_del) && !block_given?
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtWebHandler::SessionHandler.java_method(:create, [Java::IoVertxExtWebSstore::SessionStore.java_class]).call(sessionStore.j_del),::VertxWeb::SessionHandler)
  end
  raise ArgumentError, "Invalid arguments when calling create(sessionStore)"
end

Instance Method Details

- (void) handle(arg0 = nil)

This method returns an undefined value.

Parameters:

Raises:

  • (ArgumentError)


27
28
29
30
31
32
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/session_handler.rb', line 27

def handle(arg0=nil)
  if arg0.class.method_defined?(:j_del) && !block_given?
    return @j_del.java_method(:handle, [Java::IoVertxExtWeb::RoutingContext.java_class]).call(arg0.j_del)
  end
  raise ArgumentError, "Invalid arguments when calling handle(arg0)"
end
Sets whether the 'HttpOnly' flag should be set for the session cookie. When set this flag instructs browsers to prevent Javascript access to the the cookie. Used as a line of defence against the most common XSS attacks.

Parameters:

  • httpOnly (true, false) (defaults to: nil)
    true to set the HttpOnly flag on the cookie

Returns:

  • (self)

Raises:

  • (ArgumentError)


78
79
80
81
82
83
84
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/session_handler.rb', line 78

def set_cookie_http_only_flag(httpOnly=nil)
  if (httpOnly.class == TrueClass || httpOnly.class == FalseClass) && !block_given?
    @j_del.java_method(:setCookieHttpOnlyFlag, [Java::boolean.java_class]).call(httpOnly)
    return self
  end
  raise ArgumentError, "Invalid arguments when calling set_cookie_http_only_flag(httpOnly)"
end
Sets whether the 'secure' flag should be set for the session cookie. When set this flag instructs browsers to only send the cookie over HTTPS. Note that this will probably stop your sessions working if used without HTTPS (e.g. in development).

Parameters:

  • secure (true, false) (defaults to: nil)
    true to set the secure flag on the cookie

Returns:

  • (self)

Raises:

  • (ArgumentError)


67
68
69
70
71
72
73
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/session_handler.rb', line 67

def set_cookie_secure_flag(secure=nil)
  if (secure.class == TrueClass || secure.class == FalseClass) && !block_given?
    @j_del.java_method(:setCookieSecureFlag, [Java::boolean.java_class]).call(secure)
    return self
  end
  raise ArgumentError, "Invalid arguments when calling set_cookie_secure_flag(secure)"
end

- (self) set_nag_https(nag = nil)

Set whether a nagging log warning should be written if the session handler is accessed over HTTP, not HTTPS

Parameters:

  • nag (true, false) (defaults to: nil)
    true to nag

Returns:

  • (self)

Raises:

  • (ArgumentError)


56
57
58
59
60
61
62
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/session_handler.rb', line 56

def set_nag_https(nag=nil)
  if (nag.class == TrueClass || nag.class == FalseClass) && !block_given?
    @j_del.java_method(:setNagHttps, [Java::boolean.java_class]).call(nag)
    return self
  end
  raise ArgumentError, "Invalid arguments when calling set_nag_https(nag)"
end
Set the session cookie name

Parameters:

  • sessionCookieName (String) (defaults to: nil)
    the session cookie name

Returns:

  • (self)

Raises:

  • (ArgumentError)


88
89
90
91
92
93
94
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/session_handler.rb', line 88

def set_session_cookie_name(sessionCookieName=nil)
  if sessionCookieName.class == String && !block_given?
    @j_del.java_method(:setSessionCookieName, [Java::java.lang.String.java_class]).call(sessionCookieName)
    return self
  end
  raise ArgumentError, "Invalid arguments when calling set_session_cookie_name(sessionCookieName)"
end

- (self) set_session_timeout(timeout = nil)

Set the session timeout

Parameters:

  • timeout (Fixnum) (defaults to: nil)
    the timeout, in ms.

Returns:

  • (self)

Raises:

  • (ArgumentError)


45
46
47
48
49
50
51
# File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx-web/session_handler.rb', line 45

def set_session_timeout(timeout=nil)
  if timeout.class == Fixnum && !block_given?
    @j_del.java_method(:setSessionTimeout, [Java::long.java_class]).call(timeout)
    return self
  end
  raise ArgumentError, "Invalid arguments when calling set_session_timeout(timeout)"
end