Class: VertxAuthCommon::ChainAuth

Inherits:
AuthProvider show all
Defined in:
/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb

Overview

Chain several auth providers as if they were one. This is useful for cases where one want to authenticate across several providers, for example, database and fallback to passwd file.

Constant Summary

@@j_api_type =
Object.new

Class Method Summary (collapse)

Instance Method Summary (collapse)

Methods inherited from AuthenticationProvider

#authenticate

Class Method Details

+ (Boolean) accept?(obj)

Returns:

  • (Boolean)


21
22
23
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb', line 21

def @@j_api_type.accept?(obj)
  obj.class == ChainAuth
end

+ (::VertxAuthCommon::ChainAuth) create

Create a Chainable Auth Provider auth provider

Returns:



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-auth-common/chain_auth.rb', line 52

def self.create
  if !block_given?
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtAuth::ChainAuth.java_method(:create, []).call(),::VertxAuthCommon::ChainAuth)
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling create()"
  end
end

+ (Object) j_api_type



30
31
32
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb', line 30

def self.j_api_type
  @@j_api_type
end

+ (Object) j_class



33
34
35
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb', line 33

def self.j_class
  Java::IoVertxExtAuth::ChainAuth.java_class
end

+ (Object) unwrap(obj)



27
28
29
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb', line 27

def @@j_api_type.unwrap(obj)
  obj.j_del
end

+ (Object) wrap(obj)



24
25
26
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb', line 24

def @@j_api_type.wrap(obj)
  ChainAuth.new(obj)
end

Instance Method Details

- (self) append(other)

Appends a auth provider to the chain.

Parameters:

Returns:

  • (self)


80
81
82
83
84
85
86
87
88
89
90
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb', line 80

def append(*args)
  if args[0].class.method_defined?(:j_del) && !block_given?
    @j_del.java_method(:append, [Java::IoVertxExtAuth::AuthProvider.java_class]).call(args[0].j_del)
    return self
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling append(#{args[0]})"
  end
end

- (void) clear

This method returns an undefined value.

Clears the chain.


39
40
41
42
43
44
45
46
47
48
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb', line 39

def clear
  if !block_given?
    return @j_del.java_method(:clear, []).call()
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling clear()"
  end
end

- (true, false) remove(other)

Removes a provider from the chain.

Parameters:

Returns:

  • (true, false)
    true if provider was removed, false if non existent in the chain.


66
67
68
69
70
71
72
73
74
75
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-auth-common/chain_auth.rb', line 66

def remove?(*args)
  if args[0].class.method_defined?(:j_del) && !block_given?
    return @j_del.java_method(:remove, [Java::IoVertxExtAuth::AuthProvider.java_class]).call(args[0].j_del)
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling remove?(#{args[0]})"
  end
end