Class: OpenWFE::LogExpression

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

Overview

This expression simply emits a message to the application log (by default logs/openwferu.log).

<sequence>
    <log>before participant alpha</log>
    <participant ref="alpha" />
    <log>after participant alpha</log>
    <log level="warn">after participant alpha</log>
</sequence>

And an example with a Ruby process definition :

sequence do
    log "simple debug message"
    log do
        "another debug message"
    end
    log :message => "yet another debug message"
    log :message => "an info level message", :level => "info"
end

Possible log levels are ‘debug’ (the default), ‘info’, ‘warn’ and ‘fatal’.

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



359
360
361
362
363
364
365
366
367
368
369
370
371
372
# File 'lib/openwfe/expressions/fe_misc.rb', line 359

def reply (workitem)

    text = lookup_attribute('message', workitem) || workitem.get_result

    level = lookup_attribute('level', workitem)
    level = level.downcase.to_sym if level

    level = :debug \
        unless [ :info, :warn, :error, :fatal ].include?(level)

    get_engine.llog(level, text) if text

    reply_to_parent workitem
end