Class: Fairy::GroupBy

Inherits:
IOFilter show all
Defined in:
lib/fairy/client/group-by.rb

Defined Under Namespace

Modules: Interface Classes: PostFilter

Constant Summary collapse

UnhandleMethods =
[
  :post_mod_group_by_filter,
  :post_merge_group_by_filter
]

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from IOFilter

#input=

Methods inherited from Filter

#backend, #backend=, #backend_class, #def_pool_variable

Constructor Details

#initialize(fairy, opts, block_source) ⇒ GroupBy

Returns a new instance of GroupBy.



43
44
45
46
# File 'lib/fairy/client/group-by.rb', line 43

def initialize(fairy, opts, block_source)
  super
  @block_source = block_source
end

Class Method Details

.post_initializeObject



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/fairy/client/group-by.rb', line 27

def self.post_initialize
  for interface in ::Fairy::FilterInterfaces
	for m in interface.instance_methods
	  m = m.intern if m.kind_of?(String)
	  next if UnhandleMethods.include?(m)
	
	  m = m.id2name
	  GroupBy::module_eval %{
        def #{m}(*argv, &block)
   post_mod_group_by_filter(@block_source, @opts).#{m}(*argv, &block)
 end
      }
	end
  end
end

Instance Method Details

#backend_class_nameObject



48
49
50
# File 'lib/fairy/client/group-by.rb', line 48

def backend_class_name
  "CGroupBy"
end