Class: VertxConsul::Watch

Inherits:
Object
  • Object
show all
Defined in:
/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-consul/watch.rb

Overview

Watches are a way of specifying a view of data (e.g. list of nodes, KV pairs, health checks) which is monitored for updates. When an update is detected, an Handler with AsyncResult is invoked. As an example, you could watch the status of health checks and notify when a check is critical.

Class Method Summary (collapse)

Instance Method Summary (collapse)

Class Method Details

+ (::VertxConsul::Watch) events(event, vertx) + (::VertxConsul::Watch) events(event, vertx, options)

Creates Watch to monitoring the custom user events. This maps to the /v1/event/list API internally.

Overloads:

  • + (::VertxConsul::Watch) events(event, vertx)

    Parameters:

    • event (String)
      the event name
    • vertx (::Vertx::Vertx)
      the Vertx instance
  • + (::VertxConsul::Watch) events(event, vertx, options)

    Parameters:

    • event (String)
      the event name
    • vertx (::Vertx::Vertx)
      the Vertx instance
    • options (Hash{String => Object})
      the options to create underlying Consul client

Returns:



158
159
160
161
162
163
164
165
166
167
168
169
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-consul/watch.rb', line 158

def self.events(*args)
  if args[0].class == String && args[1].class.method_defined?(:j_del) && !block_given? && args[2] == nil
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:events, [Java::java.lang.String.java_class,Java::IoVertxCore::Vertx.java_class]).call(args[0],args[1].j_del),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::EventList))
  elsif args[0].class == String && args[1].class.method_defined?(:j_del) && args[2].class == Hash && !block_given?
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:events, [Java::java.lang.String.java_class,Java::IoVertxCore::Vertx.java_class,Java::IoVertxExtConsul::ConsulClientOptions.java_class]).call(args[0],args[1].j_del,Java::IoVertxExtConsul::ConsulClientOptions.new(::Vertx::Util::Utils.to_json_object(args[2]))),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::EventList))
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling events(#{args[0]},#{args[1]},#{args[2]})"
  end
end

+ (::VertxConsul::Watch) key(key, vertx) + (::VertxConsul::Watch) key(key, vertx, options)

Creates Watch to monitoring a specific key in the KV store. This maps to the /v1/kv/ API internally.

Overloads:

  • + (::VertxConsul::Watch) key(key, vertx)

    Parameters:

    • key (String)
      the key
    • vertx (::Vertx::Vertx)
      the Vertx instance
  • + (::VertxConsul::Watch) key(key, vertx, options)

    Parameters:

    • key (String)
      the key
    • vertx (::Vertx::Vertx)
      the Vertx instance
    • options (Hash{String => Object})
      the options to create underlying Consul client

Returns:



180
181
182
183
184
185
186
187
188
189
190
191
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-consul/watch.rb', line 180

def self.key(*args)
  if args[0].class == String && args[1].class.method_defined?(:j_del) && !block_given? && args[2] == nil
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:key, [Java::java.lang.String.java_class,Java::IoVertxCore::Vertx.java_class]).call(args[0],args[1].j_del),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::KeyValue))
  elsif args[0].class == String && args[1].class.method_defined?(:j_del) && args[2].class == Hash && !block_given?
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:key, [Java::java.lang.String.java_class,Java::IoVertxCore::Vertx.java_class,Java::IoVertxExtConsul::ConsulClientOptions.java_class]).call(args[0],args[1].j_del,Java::IoVertxExtConsul::ConsulClientOptions.new(::Vertx::Util::Utils.to_json_object(args[2]))),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::KeyValue))
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling key(#{args[0]},#{args[1]},#{args[2]})"
  end
end

+ (::VertxConsul::Watch) keyPrefix(keyPrefix, vertx) + (::VertxConsul::Watch) keyPrefix(keyPrefix, vertx, options)

Creates Watch to monitoring a prefix of keys in the KV store. This maps to the /v1/kv/ API internally.

Overloads:

  • + (::VertxConsul::Watch) keyPrefix(keyPrefix, vertx)

    Parameters:

    • keyPrefix (String)
      the key
    • vertx (::Vertx::Vertx)
      the Vertx instance
  • + (::VertxConsul::Watch) keyPrefix(keyPrefix, vertx, options)

    Parameters:

    • keyPrefix (String)
      the key
    • vertx (::Vertx::Vertx)
      the Vertx instance
    • options (Hash{String => Object})
      the options to create underlying Consul client

Returns:



136
137
138
139
140
141
142
143
144
145
146
147
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-consul/watch.rb', line 136

def self.key_prefix(*args)
  if args[0].class == String && args[1].class.method_defined?(:j_del) && !block_given? && args[2] == nil
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:keyPrefix, [Java::java.lang.String.java_class,Java::IoVertxCore::Vertx.java_class]).call(args[0],args[1].j_del),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::KeyValueList))
  elsif args[0].class == String && args[1].class.method_defined?(:j_del) && args[2].class == Hash && !block_given?
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:keyPrefix, [Java::java.lang.String.java_class,Java::IoVertxCore::Vertx.java_class,Java::IoVertxExtConsul::ConsulClientOptions.java_class]).call(args[0],args[1].j_del,Java::IoVertxExtConsul::ConsulClientOptions.new(::Vertx::Util::Utils.to_json_object(args[2]))),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::KeyValueList))
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling key_prefix(#{args[0]},#{args[1]},#{args[2]})"
  end
end

+ (::VertxConsul::Watch) nodes(vertx) + (::VertxConsul::Watch) nodes(vertx, options)

Creates Watch to monitoring the list of available nodes. This maps to the /v1/catalog/nodes API internally.

Overloads:

Returns:



45
46
47
48
49
50
51
52
53
54
55
56
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-consul/watch.rb', line 45

def self.nodes(*args)
  if args[0].class.method_defined?(:j_del) && !block_given? && args[1] == nil
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:nodes, [Java::IoVertxCore::Vertx.java_class]).call(args[0].j_del),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::NodeList))
  elsif args[0].class.method_defined?(:j_del) && args[1].class == Hash && !block_given?
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:nodes, [Java::IoVertxCore::Vertx.java_class,Java::IoVertxExtConsul::ConsulClientOptions.java_class]).call(args[0].j_del,Java::IoVertxExtConsul::ConsulClientOptions.new(::Vertx::Util::Utils.to_json_object(args[1]))),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::NodeList))
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling nodes(#{args[0]},#{args[1]})"
  end
end

+ (::VertxConsul::Watch) service(service, vertx) + (::VertxConsul::Watch) service(service, vertx, options)

Creates Watch to monitoring the nodes providing the service. This maps to the /v1/health/service/<service> API internally.

Overloads:

  • + (::VertxConsul::Watch) service(service, vertx)

    Parameters:

    • service (String)
      the service name
    • vertx (::Vertx::Vertx)
      the Vertx instance
  • + (::VertxConsul::Watch) service(service, vertx, options)

    Parameters:

    • service (String)
      the service name
    • vertx (::Vertx::Vertx)
      the Vertx instance
    • options (Hash{String => Object})
      the options to create underlying Consul client

Returns:



80
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-consul/watch.rb', line 80

def self.service(*args)
  if args[0].class == String && args[1].class.method_defined?(:j_del) && !block_given? && args[2] == nil
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:service, [Java::java.lang.String.java_class,Java::IoVertxCore::Vertx.java_class]).call(args[0],args[1].j_del),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::ServiceEntryList))
  elsif args[0].class == String && args[1].class.method_defined?(:j_del) && args[2].class == Hash && !block_given?
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:service, [Java::java.lang.String.java_class,Java::IoVertxCore::Vertx.java_class,Java::IoVertxExtConsul::ConsulClientOptions.java_class]).call(args[0],args[1].j_del,Java::IoVertxExtConsul::ConsulClientOptions.new(::Vertx::Util::Utils.to_json_object(args[2]))),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::ServiceEntryList))
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling service(#{args[0]},#{args[1]},#{args[2]})"
  end
end

+ (::VertxConsul::Watch) services(vertx) + (::VertxConsul::Watch) services(vertx, options)

Creates Watch to monitoring the list of available services. This maps to the /v1/catalog/services API internally.

Overloads:

Returns:



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-consul/watch.rb', line 114

def self.services(*args)
  if args[0].class.method_defined?(:j_del) && !block_given? && args[1] == nil
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:services, [Java::IoVertxCore::Vertx.java_class]).call(args[0].j_del),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::ServiceList))
  elsif args[0].class.method_defined?(:j_del) && args[1].class == Hash && !block_given?
    return ::Vertx::Util::Utils.safe_create(Java::IoVertxExtConsul::Watch.java_method(:services, [Java::IoVertxCore::Vertx.java_class,Java::IoVertxExtConsul::ConsulClientOptions.java_class]).call(args[0].j_del,Java::IoVertxExtConsul::ConsulClientOptions.new(::Vertx::Util::Utils.to_json_object(args[1]))),::VertxConsul::Watch,::Vertx::Util::data_object_type(Java::IoVertxExtConsul::ServiceList))
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling services(#{args[0]},#{args[1]})"
  end
end

Instance Method Details

- (self) setHandler(handler) { ... }

Set the result handler. As data is changed, the handler will be called with the result.

Yields:

  • the result handler

Returns:

  • (self)


26
27
28
29
30
31
32
33
34
35
36
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-consul/watch.rb', line 26

def set_handler
  if true
    @j_del.java_method(:setHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.safe_create(event,::VertxConsul::WatchResult, nil)) unless !block_given? }))
    return self
  end
  if defined?(super)
    super
  else
    raise ArgumentError, "Invalid arguments when calling set_handler()"
  end
end

- (self) start

Start this Watch

Returns:

  • (self)


95
96
97
98
99
100
101
102
103
104
105
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-consul/watch.rb', line 95

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

- (void) stop

This method returns an undefined value.

Stop the watch and release its resources


60
61
62
63
64
65
66
67
68
69
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx-consul/watch.rb', line 60

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