Class: Vertx::MessageProducer

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

Overview

Represents a stream of message that can be written to.

Class Method Summary (collapse)

Instance Method Summary (collapse)

Class Method Details

+ (Object) DEFAULT_WRITE_QUEUE_MAX_SIZE



114
115
116
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 114

def self.DEFAULT_WRITE_QUEUE_MAX_SIZE
  Java::IoVertxCoreEventbus::MessageProducer.DEFAULT_WRITE_QUEUE_MAX_SIZE
end

Instance Method Details

- (String) address

Returns The address to which the producer produces messages.

Returns:

  • (String)
    The address to which the producer produces messages.

Raises:

  • (ArgumentError)


100
101
102
103
104
105
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 100

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

- (void) close

This method returns an undefined value.

Closes the producer, this method should be called when the message producer is not used anymore.

Raises:

  • (ArgumentError)


108
109
110
111
112
113
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 108

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

- (self) delivery_options(options = nil)

Update the delivery options of this producer.

Parameters:

  • options (Hash) (defaults to: nil)
    the new options

Returns:

  • (self)

Raises:

  • (ArgumentError)


92
93
94
95
96
97
98
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 92

def delivery_options(options=nil)
  if options.class == Hash && !block_given?
    @j_del.java_method(:deliveryOptions, [Java::IoVertxCoreEventbus::DeliveryOptions.java_class]).call(Java::IoVertxCoreEventbus::DeliveryOptions.new(::Vertx::Util::Utils.to_json_object(options)))
    return self
  end
  raise ArgumentError, "Invalid arguments when calling delivery_options(#{options})"
end

- (self) drain_handler { ... }

Yields:

Returns:

  • (self)

Raises:

  • (ArgumentError)


82
83
84
85
86
87
88
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 82

def drain_handler
  if block_given?
    @j_del.java_method(:drainHandler, [Java::IoVertxCore::Handler.java_class]).call(Proc.new { yield })
    return self
  end
  raise ArgumentError, "Invalid arguments when calling drain_handler()"
end

- (void) end(t = nil)

This method returns an undefined value.

Same as #end but writes some data to the stream before ending.

Parameters:

  • t (Object) (defaults to: nil)

Raises:

  • (ArgumentError)


24
25
26
27
28
29
30
31
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 24

def end(t=nil)
  if !block_given? && t == nil
    return @j_del.java_method(:end, []).call()
  elsif @j_arg_T.accept?(t) && !block_given?
    return @j_del.java_method(:end, [Java::java.lang.Object.java_class]).call(@j_arg_T.unwrap(t))
  end
  raise ArgumentError, "Invalid arguments when calling end(#{t})"
end

- (self) exception_handler { ... }

Yields:

Returns:

  • (self)

Raises:

  • (ArgumentError)


55
56
57
58
59
60
61
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 55

def exception_handler
  if block_given?
    @j_del.java_method(:exceptionHandler, [Java::IoVertxCore::Handler.java_class]).call((Proc.new { |event| yield(::Vertx::Util::Utils.from_throwable(event)) }))
    return self
  end
  raise ArgumentError, "Invalid arguments when calling exception_handler()"
end

- (::Vertx::MessageProducer) send(message = nil) { ... }

Like #send but specifying a replyHandler that will be called if the recipient subsequently replies to the message.

Parameters:

  • message (Object) (defaults to: nil)
    the message to send

Yields:

  • reply handler will be called when any reply from the recipient is received, may be null

Returns:

Raises:

  • (ArgumentError)


45
46
47
48
49
50
51
52
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 45

def send(message=nil)
  if @j_arg_T.accept?(message) && !block_given?
    return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:send, [Java::java.lang.Object.java_class]).call(@j_arg_T.unwrap(message)),::Vertx::MessageProducer, nil)
  elsif @j_arg_T.accept?(message) && block_given?
    return ::Vertx::Util::Utils.safe_create(@j_del.java_method(:send, [Java::java.lang.Object.java_class,Java::IoVertxCore::Handler.java_class]).call(@j_arg_T.unwrap(message),(Proc.new { |ar| yield(ar.failed ? ar.cause : nil, ar.succeeded ? ::Vertx::Util::Utils.safe_create(ar.result,::Vertx::Message, nil) : nil) })),::Vertx::MessageProducer, nil)
  end
  raise ArgumentError, "Invalid arguments when calling send(#{message})"
end

- (self) set_write_queue_max_size(maxSize = nil)

Parameters:

  • maxSize (Fixnum) (defaults to: nil)

Returns:

  • (self)

Raises:

  • (ArgumentError)


73
74
75
76
77
78
79
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 73

def set_write_queue_max_size(maxSize=nil)
  if maxSize.class == Fixnum && !block_given?
    @j_del.java_method(:setWriteQueueMaxSize, [Java::int.java_class]).call(maxSize)
    return self
  end
  raise ArgumentError, "Invalid arguments when calling set_write_queue_max_size(#{maxSize})"
end

- (self) write(data = nil)

Parameters:

  • data (Object) (defaults to: nil)

Returns:

  • (self)

Raises:

  • (ArgumentError)


64
65
66
67
68
69
70
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 64

def write(data=nil)
  if @j_arg_T.accept?(data) && !block_given?
    @j_del.java_method(:write, [Java::java.lang.Object.java_class]).call(@j_arg_T.unwrap(data))
    return self
  end
  raise ArgumentError, "Invalid arguments when calling write(#{data})"
end

- (true, false) write_queue_full?

This will return true if there are more bytes in the write queue than the value set using #set_write_queue_max_size

Returns:

  • (true, false)
    true if write queue is full

Raises:

  • (ArgumentError)


34
35
36
37
38
39
# File '/Users/julien/java/vertx-aggregator/modules/vertx-lang-ruby/vertx-lang-ruby/target/classes/vertx/message_producer.rb', line 34

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