@@ -22,31 +22,28 @@ def add_cell(cell)
2222 @cells << cell
2323 end
2424
25- def int ( val )
26- add_cell IntCell . new ( val )
27- self
28- end
29-
30- def long ( val )
31- add_cell LongCell . new ( val )
32- self
33- end
34-
35- def string ( val )
36- add_cell StringCell . new ( val )
37- self
38- end
39-
40- def double ( val )
41- add_cell DoubleCell . new ( val )
42- self
43- end
44-
45- # workadound for RowKey class
46- def stringCell ( val )
47- add_cell StringCell . new ( val )
48- self
49- end
25+ # generate methods for compatibility with previous release
26+ [
27+ [ :int , IntCell ] ,
28+ [ :long , LongCell ] ,
29+ [ :string , StringCell ] ,
30+ [ :double , DoubleCell ] ,
31+ [ :stringCell , StringCell ] # workaround for RowKey class
32+ ] . each do |name , cls |
33+ Object . send ( :define_method , name ) do |val |
34+ add_cell cls . new ( val )
35+ self
36+ end
37+ end
38+
39+ # generate an appropriate methods for any types annotated in the output model
40+ $outColumnTypes. each do |name |
41+ cls = const_get name
42+ Object . send ( :define_method , name ) do |val |
43+ add_cell cls . new ( val )
44+ self
45+ end
46+ end
5047 end
5148
5249 class Cells
@@ -56,7 +53,7 @@ class Cells
5653 end
5754
5855 # This method allows to display any text to indicate current
59- # calclulation progress
56+ # calculation progress
6057 def setProgress ( *val )
6158 $exec. setProgress ( *val )
6259 end
@@ -88,25 +85,15 @@ def snippetRunner
8885 end
8986 end
9087end
91- include Knime
92-
93- # Extended knime class
94- class DoubleCell
95- include DataConverter
96- end
9788
98- # Extended knime class
99- class IntCell
100- include DataConverter
101- end
89+ include Knime
10290
103- # Extended knime class
104- class LongCell
105- include DataConverter
91+ [ DoubleCell , IntCell , LongCell ] . each do |cls |
92+ cls . class_exec { include DataConverter }
10693end
10794
10895# Extended knime class
109- class Java :: OrgKnimeCoreDataContainer :: BlobSupportDataRow
96+ class BlobSupportDataRow
11097 include CellUtility
11198
11299 # Append new columns by previously added chain of cells
@@ -130,7 +117,7 @@ def [](idx)
130117end
131118
132119# Extended knime class
133- class Java :: OrgKnimeCoreNode :: BufferedDataTable
120+ class BufferedDataTable
134121 # Add Ruby specific methods
135122 def length
136123 getRowCount
@@ -154,7 +141,7 @@ def new_row(obj_cells = nil)
154141end
155142
156143# Extended knime class
157- class Java :: OrgKnimeCoreDataContainer :: DataContainer
144+ class DataContainer
158145 # Add row in the data container.
159146 # Row can be copied from input data container or created.
160147 def <<( obj )
0 commit comments