Class: VertxConsul::Watch
- Inherits:
-
Object
- Object
- VertxConsul::Watch
- 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)
-
+ (::VertxConsul::Watch) events(*args)
Creates Watch to monitoring the custom user events.
-
+ (::VertxConsul::Watch) key(*args)
Creates Watch to monitoring a specific key in the KV store.
-
+ (::VertxConsul::Watch) key_prefix(*args)
Creates Watch to monitoring a prefix of keys in the KV store.
-
+ (::VertxConsul::Watch) nodes(*args)
Creates Watch to monitoring the list of available nodes.
-
+ (::VertxConsul::Watch) service(*args)
Creates Watch to monitoring the nodes providing the service.
-
+ (::VertxConsul::Watch) services(*args)
Creates Watch to monitoring the list of available services.
Instance Method Summary (collapse)
-
- (self) setHandler(handler) { ... }
Set the result handler.
-
- (self) start
Start this Watch.
-
- (void) stop
Stop the watch and release its resources.
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.
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.
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.
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.
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.
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.
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.
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
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 |