Class: OpenWFE::PrintExpression

Inherits:
FlowExpression show all
Includes:
ValueMixin
Defined in:
lib/openwfe/expressions/fe_misc.rb

Overview

A debug/test expression (it’s mostly used in the test suite used for the development of OpenWFEru). Outputs a message to the STDOUT (via the “puts” Ruby method).

<print>hello</print>

_print "hello"
_print do
    "in a block"
end

Note that when expressing the process in Ruby, an underscore has to be placed in front of the expression name to avoid a collision with the Ruby ‘print’ function.

If there is an object bound in the application context under the name ‘__tracer’, this expression will append its message to this instance instead of emitting to the STDOUT. (this is how the OpenWFEru test suite uses this expression).

Instance Attribute Summary

Attributes inherited from FlowExpression

#apply_time, #attributes, #children, #environment_id, #fei, #parent_id, #raw_representation

Attributes included from Contextual

#application_context

Instance Method Summary collapse

Methods included from ValueMixin

#apply, #lookup_field_attribute, #lookup_variable_attribute

Methods inherited from FlowExpression

#apply, #cancel, #clean_children, #delete_variable, #dup_environment, #fetch_environment, #fetch_text_content, #get_binding, #get_environment, #get_parent, #get_root_environment, #has_attribute, #initialize, is_definition, is_definition?, #lookup_attribute, #lookup_attributes, #lookup_boolean_attribute, #lookup_comma_list_attribute, #lookup_downcase_attribute, #lookup_ref, #lookup_string_attribute, #lookup_sym_attribute, #lookup_value, #lookup_variable, #lookup_vf_attribute, names, #new_environment, new_exp, #owns_its_environment?, #paused?, #remove_child, #reply_to_parent, #set_variable, #store_itself, #synchronize, #to_s, #to_yaml_properties

Methods included from Contextual

#get_work_directory, #init_service, #lookup

Methods included from Logging

#ldebug, #ldebug_callstack, #lerror, #lfatal, #linfo, #llog, #lunknown, #lwarn

Methods included from OwfeServiceLocator

#get_engine, #get_error_journal, #get_expool, #get_expression_map, #get_expression_pool, #get_expression_storage, #get_expression_storages, #get_journal, #get_participant_map, #get_scheduler, #get_wfid_generator

Methods inherited from ObjectWithMeta

#class_def, meta_def, meta_eval, metaclass

Constructor Details

This class inherits a constructor from OpenWFE::FlowExpression

Instance Method Details

#reply(workitem) ⇒ Object



73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'lib/openwfe/expressions/fe_misc.rb', line 73

def reply (workitem)

    text = workitem.get_result.to_s
    text << "\n"

    tracer = @application_context['__tracer']

    if tracer
        tracer << text
    else
        puts text
    end

    reply_to_parent workitem
end