Sha256: 096a3d88151b8d47e86d5633fef3de9a2e9a4a34b1446cc2b40dda9cd5c3d08e

Contents?: true

Size: 788 Bytes

Versions: 6

Compression:

Stored size: 788 Bytes

Contents

# Copyright 2007 Jeff Mesnil (http://jmesnil.net)
#
# This file adds methods to CompositeData proxies so that they can behave like
# regular (read-only) Ruby Hash
require 'java'

JavaUtilities.extend_proxy('javax.management.openmbean.CompositeDataSupport') do
  include Enumerable
  def each
    self.get_composite_type.key_set.each do |k|
      yield(k,self.get(k))
    end
    self
  end

  def key?(k)
    self.contains_key k
  end
  alias has_key? key?
  alias include? key?
  alias member? key?
  
  def keys
    self.get_composite_type.key_set
  end
  
  def [](key)
    self.get key
  end
end

JavaUtilities.extend_proxy('javax.management.openmbean.TabularDataSupport') do
  include Enumerable
  def each
    self.values.each do |value|
      yield value
    end
    self
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
jmx4r-0.1.2 lib/open_data_helper.rb
jmx4r-0.1.1 lib/open_data_helper.rb
jmx4r-0.1.0 lib/open_data_helper.rb
jmx4r-0.0.6 lib/open_data_helper.rb
jmx4r-0.0.7 lib/open_data_helper.rb
jmx4r-0.0.8 lib/open_data_helper.rb