Class List Method List File List

# Class: Vertx::MessageProducer

Inherits:
  Object
  - Object
  - Vertx::MessageProducer
  show all
Includes:
  WriteStream
Defined in:
  /Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb

## Overview

Represents a stream of message that can be written to.

## Instance Method Summary (collapse)

- - (String) address
  The address to which the producer produces messages.
- - (void) close
  Closes the producer, this method should be called when the message producer is not used anymore.
- - (self) delivery_options(options = nil)
  Update the delivery options of this producer.
- - (self) drain_handler { ... }
- - (void) end(t = nil)
  Same as #end but writes some data to the stream before ending.
- - (self) exception_handler { ... }
- - (::Vertx::MessageProducer) send(message = nil) { ... }
- - (self) set_write_queue_max_size(maxSize = nil)
- - (self) write(data = nil)
- - (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.

## 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`)

    98
    99
    100
    101
    102
    103
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb', line 98

    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`)

    106
    107
    108
    109
    110
    111
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb', line 106

    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`)

    90
    91
    92
    93
    94
    95
    96
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb', line 90

    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`)

    80
    81
    82
    83
    84
    85
    86
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb', line 80

    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-stack/stack-docs/target/rb/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`)

    53
    54
    55
    56
    57
    58
    59
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb', line 53

    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) { ... }

Parameters:

- message (`Object`) (defaults to: `nil`)

Yields:

Returns:

- (`::Vertx::MessageProducer`)

Raises:

- (`ArgumentError`)

    43
    44
    45
    46
    47
    48
    49
    50
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb', line 43

    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`)

    71
    72
    73
    74
    75
    76
    77
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb', line 71

    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`)

    62
    63
    64
    65
    66
    67
    68
    # File '/Users/julien/java/vertx-stack/stack-docs/target/rb/vertx/message_producer.rb', line 62

    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-stack/stack-docs/target/rb/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