Sha256: 70a7a8930cbde864e26e4f1bf5447e06ceb47179b5c067473bf9ed5db2acb3bd

Contents?: true

Size: 895 Bytes

Versions: 11

Compression:

Stored size: 895 Bytes

Contents

# This will/should bring in available components and their schemas
require 'rflow/components'
require 'rflow/message'

# Example of creating and registering a data extension
module SimpleDataExtension
  # Use this to default/verify the data in data_object
  def self.extended(base_data)
    base_data.data_object
  end

  def my_method; end
end
RFlow::Configuration.add_available_data_extension('RFlow::Message::Data::Integer', SimpleDataExtension)

class RFlow::Components::FileOutput < RFlow::Component
  attr_accessor :output_file_path
  input_port :in

  def configure!(config)
    self.output_file_path = config['output_file_path']
  end

  def process_message(input_port, input_port_key, connection, message)
    File.open(output_file_path, 'a') do |f|
      f.flock(File::LOCK_EX)
      f.puts message.data.data_object.inspect
      f.flush
      f.flock(File::LOCK_UN)
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
rflow-1.3.2 example/basic_extensions.rb
rflow-1.3.1 example/basic_extensions.rb
rflow-1.3.0 example/basic_extensions.rb
rflow-1.3.0a1 example/basic_extensions.rb
rflow-1.2.0 example/basic_extensions.rb
rflow-1.1.0 example/basic_extensions.rb
rflow-1.0.1 example/basic_extensions.rb
rflow-1.0.0 example/basic_extensions.rb
rflow-1.0.0a6 example/basic_extensions.rb
rflow-1.0.0a5 example/basic_extensions.rb
rflow-1.0.0a4 example/basic_extensions.rb