rubeus 0.0.3-java → 0.0.4-java

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/examples/notepad.rb CHANGED
@@ -1,7 +1,6 @@
1
1
  include Java
2
2
 
3
3
  require 'rubygems'
4
- gem 'rubeus'
5
4
  require 'rubeus'
6
5
 
7
6
  Rubeus::Swing.irb
@@ -0,0 +1,31 @@
1
+ # �ɂ�񂱂т�[���[���番������
2
+ # �h���b�O&�h���b�v�Ή��̉摜�\���p���x��
3
+ #
4
+ # 2008/6/22 Junya Murabe (Lancard.com)
5
+ #
6
+
7
+ include Java
8
+
9
+ module DD
10
+ #implements interface
11
+ include java.awt.dnd.DropTargetListener
12
+ def dragEnter(e)
13
+ e.accept_drag java.awt.dnd.DnDConstants::ACTION_COPY
14
+ end
15
+
16
+ def dragExit(e); end
17
+ def dragOver(e); end
18
+ def drop(e); end
19
+ def dropActionChanged(e); end
20
+
21
+ end
22
+
23
+ class NyancoDispLabel < javax.swing.JLabel
24
+ include DD
25
+ def drop(e)
26
+ e.accept_drop java.awt.dnd.DnDConstants::ACTION_COPY_OR_MOVE
27
+ java_file_list_flavor = java.awt.datatransfer.DataFlavor.javaFileListFlavor
28
+ image_path = e.transferable.get_transfer_data(java_file_list_flavor)[0].absolute_path
29
+ self.icon = javax.swing.ImageIcon.new(image_path)
30
+ end
31
+ end
@@ -0,0 +1,39 @@
1
+ #!/usr/bin/env jruby
2
+ #
3
+ # にゃんこびゅーあー Rubeus 0.0.3
4
+ #
5
+ # 2008/7/3 Junya Murabe (Lancard.com)
6
+ #
7
+
8
+ include Java
9
+
10
+ require 'rubygems'
11
+ gem 'rubeus', '=0.0.4'
12
+ require 'rubeus'
13
+ Rubeus::Swing.irb
14
+
15
+ JFrame.new('にゃんこびゅーあー Rubeus') do |frame|
16
+ frame.set_size 400, 300
17
+ frame.default_close_operation = JFrame::EXIT_ON_CLOSE
18
+ frame.icon_image = ImageIcon.new(File.join(File.dirname(__FILE__), 'nekobean_s.png')).image
19
+
20
+ JPanel.new do |base_pane|
21
+ base_pane.layout = java.awt.BorderLayout.new
22
+ JScrollPane.new do |sp|
23
+ layout = java.awt.FlowLayout.new
24
+ layout.alignment = java.awt.FlowLayout::LEFT
25
+ sp.viewport.layout = layout
26
+
27
+ require File.join(File.dirname(__FILE__), 'nyanco_disp_label')
28
+ lb = NyancoDispLabel.new
29
+
30
+ #ドラッグ&ドロップを有効に
31
+ [lb, sp].each do |dt|
32
+ java.awt.dnd.DropTarget.new dt, lb
33
+ dt.tool_tip_text = 'にゃんこの画像をここにポイッ♪'
34
+ end
35
+ end
36
+ end
37
+
38
+ frame.visible = true
39
+ end
@@ -1,32 +1,21 @@
1
1
  include Java
2
2
 
3
3
  require 'rubygems'
4
- gem "rubeus"
5
4
  require "rubeus"
6
5
 
7
6
  Rubeus::Swing.irb
8
7
 
9
- # JFrameなどのコンテナのnewに渡されたブロックの中でnewされたコンポーネントは
10
- # 自動的にaddされます。
11
8
  JFrame.new("Rubeus Swing Example 01") do |frame|
12
9
  frame.layout = BoxLayout.new(:Y_AXIS)
13
10
  JSplitPane.new(JSplitPane::VERTICAL_SPLIT) do
14
11
  JPanel.new do |panel|
15
12
  panel.layout = BoxLayout.new(:X_AXIS)
16
- # キーのイベントもメソッドを指定してハンドリングできます。
17
- # newにブロックを渡すとlisten(:key, :pressed)が実行されます。
18
13
  @text_field = JTextField.new do |event|
19
14
  if event.key_code == 10 # RETURN
20
15
  @textpane.text += @text_field.text + "\n"
21
16
  @text_field.text = ''
22
17
  end
23
18
  end
24
- # 以下のように書くこともできますです
25
- # @text_field = JTextField.new
26
- # @text_field.listen(:key, :key_pressed, :key_code => 10) do |event|
27
- # @textpane.text += @text_field.text + "\n"
28
- # @text_field.text = ''
29
- # end
30
19
  JButton.new("append") do
31
20
  @textpane.text += @text_field.text
32
21
  @text_field.text = ''
@@ -1,34 +1,23 @@
1
1
  include Java
2
2
 
3
3
  require 'rubygems'
4
- gem "rubeus"
5
4
  require "rubeus"
6
5
 
7
6
  class Example01
8
7
  extend Rubeus::Swing
9
8
 
10
9
  def show
11
- # JFrameなどのコンテナのnewに渡されたブロックの中でnewされたコンポーネントは
12
- # 自動的にaddされます。
13
10
  JFrame.new("Rubeus Swing Example 01") do |frame|
14
11
  frame.layout = BoxLayout.new(:Y_AXIS)
15
12
  JSplitPane.new(JSplitPane::VERTICAL_SPLIT) do
16
13
  JPanel.new do |panel|
17
14
  panel.layout = BoxLayout.new(:X_AXIS)
18
- # キーのイベントもメソッドを指定してハンドリングできます。
19
- # newにブロックを渡すとlisten(:key, :pressed)が実行されます。
20
15
  @text_field = JTextField.new do |event|
21
16
  if event.key_code == 10 # RETURN
22
17
  @textpane.text += @text_field.text + "\n"
23
18
  @text_field.text = ''
24
19
  end
25
20
  end
26
- # 以下のように書くこともできますです
27
- # @text_field = JTextField.new
28
- # @text_field.listen(:key, :key_pressed, :key_code => 10) do |event|
29
- # @textpane.text += @text_field.text + "\n"
30
- # @text_field.text = ''
31
- # end
32
21
  JButton.new("append") do
33
22
  @textpane.text += @text_field.text + "\n"
34
23
  @text_field.text = ''
@@ -18,6 +18,7 @@ module Rubeus::Awt
18
18
  else
19
19
  attributes.each do |attr, value|
20
20
  begin
21
+ value = (self.const_get(value) rescue value) if value.is_a?(Symbol)
21
22
  result.send("#{attr.to_s}=", value)
22
23
  rescue
23
24
  raise ArgumentError, "Failed setting #{value.inspect} to #{attr.inspect} cause of #{$!.to_s}"
data/lib/rubeus/awt.rb CHANGED
@@ -1,7 +1,12 @@
1
1
  require "rubeus/component_loader"
2
2
 
3
3
  module Rubeus
4
- Awt = ComponentLoader.new("java.awt")
4
+ Awt = ComponentLoader.new("java.awt") do
5
+ class_to_package.update(
6
+ # $JAVA_HOME/lib/classlistにないものリスト
7
+ 'DnDConstants' => 'java.awt.dnd'
8
+ )
9
+ end
5
10
  end
6
11
 
7
12
  require "rubeus/awt/attributes"
@@ -19,13 +19,16 @@ module Rubeus
19
19
  attr_reader :class_to_package
20
20
 
21
21
  def initialize(java_package, &block)
22
- @java_package = java_package
23
- build_class_to_package_table
22
+ build_class_to_package_table(java_package)
23
+ java_package = JavaUtilities.get_package_module_dot_format(java_package)
24
+ class << java_package
25
+ include Rubeus::JavaPackage
26
+ end
24
27
  super(&block)
25
28
  end
26
29
 
27
- def build_class_to_package_table
28
- class_names = ::Rubeus::ComponentLoader.class_names(@java_package)
30
+ def build_class_to_package_table(java_package)
31
+ class_names = ::Rubeus::ComponentLoader.class_names(java_package)
29
32
  @class_to_package = {}
30
33
  class_names.each do |fqn|
31
34
  parts = fqn.split('.')
@@ -38,29 +41,35 @@ module Rubeus
38
41
  [@class_to_package[class_name], package] : package
39
42
  end
40
43
  end
44
+
45
+ def included(mod)
46
+ mod.extend(self)
47
+ end
41
48
 
42
49
  def extended(object)
43
- mod = Module.new do
44
- def const_missing(java_class_name)
45
- @loader.const_get(java_class_name)
50
+ class_name_for_method = self.name.underscore.gsub('/', '_')
51
+ const_missing_with = "const_missing_with_#{class_name_for_method}"
52
+ const_missing_without = "const_missing_without_#{class_name_for_method}"
53
+ return if object.singleton_methods.include?(const_missing_with)
54
+ loader_name = "@loader_#{class_name_for_method}".to_sym
55
+ mod = Module.new
56
+ mod.send(:define_method, const_missing_with) do |const_name|
57
+ begin
58
+ instance_variable_get(loader_name).const_get(const_name)
46
59
  rescue
47
- super
60
+ send(const_missing_without, const_name)
48
61
  end
49
62
  end
50
- object.instance_variable_set("@loader", self)
51
63
  object.extend(mod)
64
+ object.instance_variable_set(loader_name, self)
65
+ object.instance_eval <<-EOS
66
+ alias :#{const_missing_without} :const_missing
67
+ alias :const_missing :#{const_missing_with}
68
+ EOS
52
69
  end
53
-
54
- def autolodings
55
- @autolodings ||= {}
56
- end
57
-
58
- def autoload(const_name, feature = nil)
59
- autolodings[const_name.to_s] = feature ||"#{self.name}::#{java_class_name.to_s}".underscore
60
- end
61
-
62
- def autoload?(const_name)
63
- autolodings[const_name.to_s]
70
+
71
+ def extend_with(mod = Object)
72
+ mod.send(:extend, self)
64
73
  end
65
74
 
66
75
  def const_missing(java_class_name)
@@ -75,12 +84,6 @@ module Rubeus
75
84
  raise NameError, "cannot specified package name for #{java_class_name}: #{package.join(', ')}"
76
85
  end
77
86
  java_fqn = package.empty? ? java_class_name.to_s : "#{package}.#{java_class_name.to_s}"
78
- extension = extension_for(java_fqn)
79
- if extension
80
- JavaUtilities.extend_proxy(java_fqn) do
81
- include extension
82
- end
83
- end
84
87
  result = instance_eval(java_fqn)
85
88
  self.const_set(java_class_name, result)
86
89
  result
@@ -90,35 +93,54 @@ module Rubeus
90
93
  super
91
94
  end
92
95
 
96
+ def autolodings
97
+ @autolodings ||= {}
98
+ end
99
+
100
+ def autoload(const_name, feature = nil)
101
+ autolodings[const_name.to_s] = feature ||"#{self.name}::#{java_class_name.to_s}".underscore
102
+ end
103
+
104
+ def autoload?(const_name)
105
+ autolodings[const_name.to_s]
106
+ end
107
+
93
108
  def depend_on(*java_class_names)
94
109
  java_class_names.each{|java_class_name| self.const_get(java_class_name)}
95
110
  end
96
111
 
97
- def extension_path_for(java_fqn_or_parts)
98
- parts = java_fqn_or_parts.is_a?(Array) ? java_fqn_or_parts : java_fqn_or_parts.split('.')
99
- "rubeus/extensions/%s" % parts.map{|part|part.underscore}.join('/')
100
- end
112
+ end
101
113
 
102
- def extension_class_name_for(java_fqn_or_parts)
103
- parts = java_fqn_or_parts.is_a?(Array) ? java_fqn_or_parts : java_fqn_or_parts.split('.')
104
- "Rubeus::Extensions::%s" % parts.map{|part|part.camelize}.join('::')
114
+ module JavaPackage
115
+ def self.included(object)
116
+ raise "JavaPackage must be extended by a Module" unless object.is_a?(Module)
117
+ object.module_eval do
118
+ alias :method_missing_without_rubeus :method_missing
119
+ alias :method_missing :method_missing_with_rubeus
120
+ alias :const_missing_without_rubeus :const_missing
121
+ alias :const_missing :const_missing_with_rubeus
122
+ end
105
123
  end
106
124
 
107
- def extension_for(java_fqn)
108
- parts = java_fqn.split('.')
109
- extension_path = extension_path_for(parts)
110
- begin
111
- require(extension_path)
112
- rescue LoadError => e
113
- # puts "warning: #{e}"
114
- return nil
125
+ def method_missing_with_rubeus(method, *args)
126
+ java_fqn = "#{@package_name}#{method.to_s}"
127
+ extension = Rubeus::Extensions.find_for(java_fqn)
128
+ if extension
129
+ JavaUtilities.extend_proxy(java_fqn) do
130
+ include extension
131
+ end
115
132
  end
116
- begin
117
- instance_eval(extension_class_name_for(parts))
118
- rescue NameError => e
119
- # puts "warning: #{e}"
120
- return nil
133
+ result = method_missing_without_rubeus(method, *args)
134
+ class << result
135
+ include ::Rubeus::JavaPackage
121
136
  end
137
+ result
138
+ end
139
+
140
+ def const_missing_with_rubeus(const_name)
141
+ result = const_missing_without_rubeus(const_name)
142
+ puts("#{self.name}.const_missing(#{const_name.inspect}) => #{result.inspect}")
143
+ result
122
144
  end
123
145
  end
124
146
  end
@@ -0,0 +1,13 @@
1
+ module Rubeus::Extensions::Java::Sql
2
+ module Connection
3
+ include Rubeus::Jdbc::CloseableResource
4
+
5
+ def statement(*args, &block)
6
+ with_close(create_statement(*args), &block)
7
+ end
8
+
9
+ def query(sql, &block)
10
+ statement{|st| st.query(sql, &block)}
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,9 @@
1
+ module Rubeus::Extensions::Java::Sql
2
+ module DriverManager
3
+ extend Rubeus::Jdbc::CloseableResource
4
+
5
+ def connect(url, user, password, &block)
6
+ with_close(get_connection(url, user, password), &block)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,30 @@
1
+ module Rubeus::Extensions::Java::Sql
2
+ module ResultSet
3
+ include Enumerable
4
+
5
+ def each(&block)
6
+ return unless block_given?
7
+ yield(self) while self.next
8
+ end
9
+
10
+ def each_array
11
+ each{|rs| yield(rs.to_a)}
12
+ end
13
+
14
+ def each_hash
15
+ each{|rs| yield(rs.to_hash)}
16
+ end
17
+
18
+ def to_a(default_value = nil)
19
+ meta_data.map{|i| get_object(i) || default_value}
20
+ end
21
+
22
+ def to_hash
23
+ column_names = meta_data.column_names
24
+ meta_data.inject({}) do |dest, i|
25
+ dest[column_names[i]] = get_object(i)
26
+ dest
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,36 @@
1
+ module Rubeus::Extensions::Java::Sql
2
+ module ResultSetMetaData
3
+ include Enumerable
4
+
5
+ def each(&block)
6
+ return unless block_given?
7
+ @column_count ||= get_column_count
8
+ (1..@column_count).each(&block)
9
+ end
10
+
11
+ def columns
12
+ @columns ||= build_columns
13
+ end
14
+
15
+ def column_names
16
+ @column_names ||= columns.inject({}) do |dest, column|
17
+ dest[column.index] = column.name
18
+ dest
19
+ end
20
+ end
21
+
22
+ private
23
+ def build_columns
24
+ result = []
25
+ attrs = Rubeus::Jdbc::Column::ATTRIBUTES
26
+ each do |i|
27
+ column_hash = attrs.inject({}) do |dest, attr|
28
+ dest[attr] = send(attr, i)
29
+ dest
30
+ end
31
+ result << Rubeus::Jdbc::Column.new(i,column_hash)
32
+ end
33
+ result
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,9 @@
1
+ module Rubeus::Extensions::Java::Sql
2
+ module Statement
3
+ include Rubeus::Jdbc::CloseableResource
4
+
5
+ def query(sql, &block)
6
+ with_close(execute_query(sql), &block)
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,4 @@
1
+ module Rubeus::Extensions::Java
2
+ module Sql
3
+ end
4
+ end
@@ -7,7 +7,7 @@ module Rubeus::Extensions::Javax::Swing
7
7
  base.perform_as_container
8
8
  base.default_attributes = {
9
9
  :size => [400, 300],
10
- :default_close_operation => javax.swing.JFrame::EXIT_ON_CLOSE
10
+ :default_close_operation => :EXIT_ON_CLOSE
11
11
  }
12
12
  if ENV_JAVA["java.specification.version"] == "1.6"
13
13
  base.module_eval do
@@ -2,5 +2,34 @@ module Rubeus
2
2
  module Extensions
3
3
  autoload :Java, 'rubeus/extensions/java'
4
4
  autoload :Javax, 'rubeus/extensions/javax'
5
+
6
+ class << self
7
+ def path_for(java_fqn_or_parts)
8
+ parts = java_fqn_or_parts.is_a?(Array) ? java_fqn_or_parts : java_fqn_or_parts.split('.')
9
+ "rubeus/extensions/%s" % parts.map{|part|part.underscore}.join('/')
10
+ end
11
+
12
+ def class_name_for(java_fqn_or_parts)
13
+ parts = java_fqn_or_parts.is_a?(Array) ? java_fqn_or_parts : java_fqn_or_parts.split('.')
14
+ "Rubeus::Extensions::%s" % parts.map{|part|part.camelize}.join('::')
15
+ end
16
+
17
+ def find_for(java_fqn)
18
+ parts = java_fqn.split('.')
19
+ extension_path = path_for(parts)
20
+ begin
21
+ require(extension_path)
22
+ rescue LoadError => e
23
+ # puts "warning: #{e}"
24
+ return nil
25
+ end
26
+ begin
27
+ instance_eval(class_name_for(parts))
28
+ rescue NameError => e
29
+ # puts "warning: #{e}"
30
+ return nil
31
+ end
32
+ end
33
+ end
5
34
  end
6
35
  end
@@ -0,0 +1,16 @@
1
+ module Rubeus::Jdbc
2
+ module CloseableResource
3
+ def with_close(resource)
4
+ if block_given?
5
+ begin
6
+ yield(resource)
7
+ ensure
8
+ resource.close
9
+ end
10
+ return nil
11
+ else
12
+ resource
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,53 @@
1
+ module Rubeus::Jdbc
2
+ # ResultSetMetaDataから生成されます
3
+ class Column
4
+ ATTRIBUTES = [
5
+ :column_index , #
6
+ :catalog_name , # String # 指定された列のテーブルのカタログ名を取得します。
7
+ :column_class_name , # String # Java クラスの完全指定された名前を返します。
8
+ :column_display_size, # int # 指定された列の通常の最大幅を文字数で示します。
9
+ :column_label , # String # 印刷や表示に使用する、指定された列の推奨タイトルを取得します。
10
+ :column_name , # String # 指定された列の名前を取得します。
11
+ :column_type , # int # 指定された列の SQL 型を取得します。
12
+ :column_typeName , # String # 指定された列のデータベース固有の型名を取得します。
13
+ :precision , # int # 指定された列の 10 進桁数を取得します。
14
+ :scale , # int # 指定された列の小数点以下の桁数を取得します。
15
+ :schema_name , # String # 指定された列のテーブルのスキーマを取得します。
16
+ :table_name , # String # 指定された列のテーブル名を取得します。
17
+ :auto_increment , # boolean # 指定された列が自動的に番号付けされて読み取り専用として扱われるかどうかを示します。
18
+ :case_sensitive , # boolean # 列の大文字と小文字が区別されるかどうかを示します。
19
+ :currency , # boolean # 指定された列がキャッシュの値かどうかを示します。
20
+ :definitely_writable, # boolean # 指定された列の書き込みが必ず成功するかどうかを示します。
21
+ :nullable , # int # 指定された列に NULL をセットできるかどうかを示します。
22
+ :read_only , # boolean # 指定された列が絶対的に書き込み可能でないかどうかを示します。
23
+ :searchable , # boolean # 指定された列を where 節で使用できるかどうかを示します。
24
+ :signed , # boolean # 指定された列の値が符号付き数値かどうかを示します。
25
+ :writable # boolean # 指定された列への書き込みを成功させることができるかどうかを示します。
26
+ ]
27
+ attr_reader(*ATTRIBUTES)
28
+
29
+ alias_method :index , :column_index
30
+ alias_method :class_name , :column_class_name
31
+ alias_method :display_size, :column_display_size
32
+ alias_method :label , :column_label
33
+ alias_method :name , :column_name
34
+ alias_method :type_name , :column_type_name
35
+
36
+ alias_method :auto_increment? , :auto_increment
37
+ alias_method :case_sensitive? , :case_sensitive
38
+ alias_method :currency? , :currency
39
+ alias_method :definitely_writable?, :definitely_writable
40
+ # alias_method :nullable?
41
+ alias_method :read_only? , :read_only
42
+ alias_method :searchable? , :searchable
43
+ alias_method :signed? , :signed
44
+ alias_method :writable? , :writable
45
+
46
+ def initialize(index, attributes = {})
47
+ @index = index
48
+ attributes.each do |key, value|
49
+ instance_variable_set("@#{key.to_s}", value)
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,6 @@
1
+ module Rubeus
2
+ module Jdbc
3
+ autoload :CloseableResource, 'rubeus/jdbc/closeable_resource'
4
+ autoload :Column, 'rubeus/jdbc/column'
5
+ end
6
+ end
data/lib/rubeus/swing.rb CHANGED
@@ -11,10 +11,12 @@ module Rubeus
11
11
  class_to_package['DefaultStyledDocument'] ||= 'javax.swing.text' # Windowsにない
12
12
 
13
13
  def self.irb
14
- Object.send(:extend, self)
14
+ Rubeus::Awt.extend_with
15
+ self.extend_with
15
16
  end
16
17
  end
17
18
  end
19
+ Rubeus::Swing.depend_on('JComponent')
18
20
 
19
21
 
20
22
  =begin
data/lib/rubeus.rb CHANGED
@@ -4,8 +4,9 @@ gem "activesupport", ">=2.0.2"
4
4
  require "active_support/core_ext/string"
5
5
 
6
6
  module Rubeus
7
- VERSION = "0.0.2"
8
- autoload :Extensions, "rubeus/extensions"
7
+ VERSION = "0.0.4"
9
8
  autoload :Awt, "rubeus/awt"
10
9
  autoload :Swing, "rubeus/swing"
10
+ # autoload :Jdbc, "rubeus/jdbc"
11
11
  end
12
+ require "rubeus/extensions"
metadata CHANGED
@@ -3,14 +3,15 @@ extensions: []
3
3
  homepage: http://code.google.com/p/rubeus/
4
4
  executables: []
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.0.3
6
+ version: 0.0.4
7
7
  post_install_message:
8
- date: 2008-06-28 15:00:00 +00:00
8
+ date: 2008-07-07 15:00:00 +00:00
9
9
  files:
10
10
  - lib/rubeus.rb
11
11
  - lib/rubeus/awt.rb
12
12
  - lib/rubeus/component_loader.rb
13
13
  - lib/rubeus/extensions.rb
14
+ - lib/rubeus/jdbc.rb
14
15
  - lib/rubeus/swing.rb
15
16
  - lib/rubeus/awt/attributes.rb
16
17
  - lib/rubeus/awt/event.rb
@@ -19,9 +20,15 @@ files:
19
20
  - lib/rubeus/extensions/java.rb
20
21
  - lib/rubeus/extensions/javax.rb
21
22
  - lib/rubeus/extensions/java/awt.rb
23
+ - lib/rubeus/extensions/java/sql.rb
22
24
  - lib/rubeus/extensions/java/awt/component.rb
23
25
  - lib/rubeus/extensions/java/awt/container.rb
24
26
  - lib/rubeus/extensions/java/awt/dimension.rb
27
+ - lib/rubeus/extensions/java/sql/connection.rb
28
+ - lib/rubeus/extensions/java/sql/driver_manager.rb
29
+ - lib/rubeus/extensions/java/sql/result_set.rb
30
+ - lib/rubeus/extensions/java/sql/result_set_meta_data.rb
31
+ - lib/rubeus/extensions/java/sql/statement.rb
25
32
  - lib/rubeus/extensions/javax/swing.rb
26
33
  - lib/rubeus/extensions/javax/swing/box_layout.rb
27
34
  - lib/rubeus/extensions/javax/swing/j_applet.rb
@@ -32,10 +39,15 @@ files:
32
39
  - lib/rubeus/extensions/javax/swing/j_split_pane.rb
33
40
  - lib/rubeus/extensions/javax/swing/j_text_field.rb
34
41
  - lib/rubeus/extensions/javax/swing/j_window.rb
42
+ - lib/rubeus/jdbc/closeable_resource.rb
43
+ - lib/rubeus/jdbc/column.rb
35
44
  - examples/notepad.rb
36
45
  - examples/rubeus_swing_example01.rb
37
46
  - examples/rubeus_swing_example01_with_class.rb
47
+ - examples/nyanco_viewer/nyanco_disp_label.rb
48
+ - examples/nyanco_viewer/nyanco_viewer_rubeus.rb
38
49
  - examples/notepad.rtf
50
+ - examples/nyanco_viewer/nekobean_s.png
39
51
  rubygems_version: 1.1.1
40
52
  rdoc_options: []
41
53
  signing_key:
@@ -77,6 +89,7 @@ email: rubeus@googlegroups.com
77
89
  authors:
78
90
  - Takeshi Akima
79
91
  extra_rdoc_files: []
80
- requirements: []
92
+ requirements:
93
+ - none
81
94
  rubyforge_project: rubybizcommons
82
- autorequire:
95
+ autorequire: rubeus