Class: VertxWeb::JWTAuthHandler
- Inherits:
-
Object
- Object
- VertxWeb::JWTAuthHandler
- Includes:
- AuthHandler
- Defined in:
- /Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb
Overview
An auth handler that provides JWT Authentication support.
Constant Summary
- @@j_api_type =
Object.new
Class Method Summary (collapse)
- + (Boolean) accept?(obj)
-
+ (::VertxWeb::JWTAuthHandler) create(*args)
Create a JWT auth handler.
- + (Object) j_api_type
- + (Object) j_class
- + (Object) unwrap(obj)
- + (Object) wrap(obj)
Instance Method Summary (collapse)
-
- (self) addAuthorities(authorities)
Add a set of required authorities for this auth handler.
-
- (self) addAuthority(authority)
Add a required authority for this auth handler.
-
- (void) authorize(user, handler) { ... }
Authorizes the given user against all added authorities.
-
- (void) handle(event)
Something has happened, so handle it.
-
- (void) parseCredentials(context, handler) { ... }
Parses the credentials from the request into a JsonObject.
-
- (self) setAudience(audience)
Set the audience list.
-
- (self) setIgnoreExpiration(ignoreExpiration)
Set whether expiration is ignored.
-
- (self) setIssuer(issuer)
Set the issuer.
Class Method Details
+ (Boolean) accept?(obj)
24 25 26 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 24 def @@j_api_type.accept?(obj) obj.class == JWTAuthHandler end |
+ (::VertxWeb::JWTAuthHandler) create(authProvider) + (::VertxWeb::JWTAuthHandler) create(authProvider, skip)
Create a JWT auth handler
114 115 116 117 118 119 120 121 122 123 124 125 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 114 def self.create(*args) if args[0].class.method_defined?(:j_del) && !block_given? && args[1] == nil return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtWebHandler::JWTAuthHandler.java_method(:create, [Java::IoVertxExtAuthJwt::JWTAuth.java_class]).call(args[0].j_del),::VertxWeb::JWTAuthHandler) elsif args[0].class.method_defined?(:j_del) && args[1].class == String && !block_given? return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtWebHandler::JWTAuthHandler.java_method(:create, [Java::IoVertxExtAuthJwt::JWTAuth.java_class,Java::java.lang.String.java_class]).call(args[0].j_del,args[1]),::VertxWeb::JWTAuthHandler) end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling create(#{args[0]},#{args[1]})" end end |
+ (Object) j_api_type
33 34 35 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 33 def self.j_api_type @@j_api_type end |
+ (Object) j_class
36 37 38 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 36 def self.j_class Java::IoVertxExtWebHandler::JWTAuthHandler.java_class end |
+ (Object) unwrap(obj)
30 31 32 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 30 def @@j_api_type.unwrap(obj) obj.j_del end |
+ (Object) wrap(obj)
27 28 29 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 27 def @@j_api_type.wrap(obj) JWTAuthHandler.new(obj) end |
Instance Method Details
- (self) addAuthorities(authorities)
Add a set of required authorities for this auth handler
66 67 68 69 70 71 72 73 74 75 76 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 66 def (*args) if args[0].class == Set && !block_given? @j_del.java_method(:addAuthorities, [Java::JavaUtil::Set.java_class]).call(Java::JavaUtil::LinkedHashSet.new(args[0].map { |element| element })) return self end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling add_authorities(#{args[0]})" end end |
- (self) addAuthority(authority)
Add a required authority for this auth handler
130 131 132 133 134 135 136 137 138 139 140 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 130 def (*args) if args[0].class == String && !block_given? @j_del.java_method(:addAuthority, [Java::java.lang.String.java_class]).call(args[0]) return self end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling add_authority(#{args[0]})" end end |
- (void) authorize(user, handler) { ... }
This method returns an undefined value.
Authorizes the given user against all added authorities.
160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 160 def (*args) if args[0].class.method_defined?(:j_del) && true if (block_given?) return @j_del.java_method(:authorize, [Java::IoVertxExtAuth::User.java_class,Java::IoVertxCore::Handler.java_class]).call(args[0].j_del,block_given? ? Proc.new { |ar| yield(ar.failed ? ar.cause : nil, ar.succeeded ? nil : nil) } : promise) else promise = ::Vertx::Util::Utils.promise @j_del.java_method(:authorize, [Java::IoVertxExtAuth::User.java_class,Java::IoVertxCore::Handler.java_class]).call(args[0].j_del,block_given? ? Proc.new { |ar| yield(ar.failed ? ar.cause : nil, ar.succeeded ? nil : nil) } : promise) return ::Vertx::Util::Utils.safe_create(promise.future(),::Vertx::Future, nil) end end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling authorize(#{args[0]})" end end |
- (void) handle(event)
This method returns an undefined value.
Something has happened, so handle it.
145 146 147 148 149 150 151 152 153 154 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 145 def handle(*args) if args[0].class.method_defined?(:j_del) && !block_given? return @j_del.java_method(:handle, [Java::IoVertxExtWeb::RoutingContext.java_class]).call(args[0].j_del) end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling handle(#{args[0]})" end end |
- (void) parseCredentials(context, handler) { ... }
This method returns an undefined value.
Parses the credentials from the request into a JsonObject. The implementation should be able to extract the required info for the auth provider in the format the provider expects.
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 46 def parse_credentials(*args) if args[0].class.method_defined?(:j_del) && true if (block_given?) return @j_del.java_method(:parseCredentials, [Java::IoVertxExtWeb::RoutingContext.java_class,Java::IoVertxCore::Handler.java_class]).call(args[0].j_del,block_given? ? Proc.new { |ar| yield(ar.failed ? ar.cause : nil, ar.succeeded ? ar.result != nil ? JSON.parse(ar.result.encode) : nil : nil) } : promise) else promise = ::Vertx::Util::Utils.promise @j_del.java_method(:parseCredentials, [Java::IoVertxExtWeb::RoutingContext.java_class,Java::IoVertxCore::Handler.java_class]).call(args[0].j_del,block_given? ? Proc.new { |ar| yield(ar.failed ? ar.cause : nil, ar.succeeded ? ar.result != nil ? JSON.parse(ar.result.encode) : nil : nil) } : promise) return ::Vertx::Util::Utils.safe_create(promise.future(),::Vertx::Future, nil) end end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling parse_credentials(#{args[0]})" end end |
- (self) setAudience(audience)
Set the audience list
180 181 182 183 184 185 186 187 188 189 190 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 180 def set_audience(*args) if args[0].class == Array && !block_given? @j_del.java_method(:setAudience, [Java::JavaUtil::List.java_class]).call(args[0].map { |element| element }) return self end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling set_audience(#{args[0]})" end end |
- (self) setIgnoreExpiration(ignoreExpiration)
Set whether expiration is ignored
96 97 98 99 100 101 102 103 104 105 106 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 96 def set_ignore_expiration(*args) if (args[0].class == TrueClass || args[0].class == FalseClass) && !block_given? @j_del.java_method(:setIgnoreExpiration, [Java::boolean.java_class]).call(args[0]) return self end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling set_ignore_expiration(#{args[0]})" end end |
- (self) setIssuer(issuer)
Set the issuer
81 82 83 84 85 86 87 88 89 90 91 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/jwt_auth_handler.rb', line 81 def set_issuer(*args) if args[0].class == String && !block_given? @j_del.java_method(:setIssuer, [Java::java.lang.String.java_class]).call(args[0]) return self end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling set_issuer(#{args[0]})" end end |