Class: VertxWeb::OAuth2AuthHandler
- Inherits:
-
Object
- Object
- VertxWeb::OAuth2AuthHandler
- Includes:
- AuthHandler
- Defined in:
- /Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb
Overview
An auth handler that provides OAuth2 Authentication support. This handler is suitable for AuthCode flows.
Constant Summary
- @@j_api_type =
Object.new
Class Method Summary (collapse)
- + (Boolean) accept?(obj)
-
+ (::VertxWeb::OAuth2AuthHandler) create(*args)
Create a OAuth2 auth handler with host pinning.
- + (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.
-
- (self) extraParams(extraParams)
Extra parameters needed to be passed while requesting a token.
-
- (void) handle(event)
Something has happened, so handle it.
-
- (void) parseCredentials(context, handler) { ... }
Parses the credentials from the request into a JsonObject.
-
- (self) setupCallback(route)
add the callback handler to a given route.
Class Method Details
+ (Boolean) accept?(obj)
25 26 27 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 25 def @@j_api_type.accept?(obj) obj.class == OAuth2AuthHandler end |
+ (::VertxWeb::OAuth2AuthHandler) create(authProvider) + (::VertxWeb::OAuth2AuthHandler) create(authProvider, callbackURL)
Create a OAuth2 auth handler with host pinning
100 101 102 103 104 105 106 107 108 109 110 111 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 100 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::OAuth2AuthHandler.java_method(:create, [Java::IoVertxExtAuthOauth2::OAuth2Auth.java_class]).call(args[0].j_del),::VertxWeb::OAuth2AuthHandler) elsif args[0].class.method_defined?(:j_del) && args[1].class == String && !block_given? return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtWebHandler::OAuth2AuthHandler.java_method(:create, [Java::IoVertxExtAuthOauth2::OAuth2Auth.java_class,Java::java.lang.String.java_class]).call(args[0].j_del,args[1]),::VertxWeb::OAuth2AuthHandler) end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling create(#{args[0]},#{args[1]})" end end |
+ (Object) j_api_type
34 35 36 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 34 def self.j_api_type @@j_api_type end |
+ (Object) j_class
37 38 39 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 37 def self.j_class Java::IoVertxExtWebHandler::OAuth2AuthHandler.java_class end |
+ (Object) unwrap(obj)
31 32 33 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 31 def @@j_api_type.unwrap(obj) obj.j_del end |
+ (Object) wrap(obj)
28 29 30 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 28 def @@j_api_type.wrap(obj) OAuth2AuthHandler.new(obj) end |
Instance Method Details
- (self) addAuthorities(authorities)
Add a set of required authorities for this auth handler
67 68 69 70 71 72 73 74 75 76 77 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 67 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
116 117 118 119 120 121 122 123 124 125 126 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 116 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.
161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 161 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 |
- (self) extraParams(extraParams)
Extra parameters needed to be passed while requesting a token.
131 132 133 134 135 136 137 138 139 140 141 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 131 def extra_params(*args) if args[0].class == Hash && !block_given? @j_del.java_method(:extraParams, [Java::IoVertxCoreJson::JsonObject.java_class]).call(::Vertx::Util::Utils.to_json_object(args[0])) return self end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling extra_params(#{args[0]})" end end |
- (void) handle(event)
This method returns an undefined value.
Something has happened, so handle it.
146 147 148 149 150 151 152 153 154 155 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 146 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.
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 47 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) setupCallback(route)
add the callback handler to a given route.
82 83 84 85 86 87 88 89 90 91 92 |
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-web/o_auth2_auth_handler.rb', line 82 def setup_callback(*args) if args[0].class.method_defined?(:j_del) && !block_given? @j_del.java_method(:setupCallback, [Java::IoVertxExtWeb::Route.java_class]).call(args[0].j_del) return self end if defined?(super) super else raise ArgumentError, "Invalid arguments when calling setup_callback(#{args[0]})" end end |