def lookup(participant_name, workitem, opts={})

      pinfo = participant_name.is_a?(String) ?
        lookup_info(participant_name, workitem) : participant_name

      instantiate(pinfo, opts)
    end
def lookup(participant_name, workitem, opts={})

      pinfo = participant_name.is_a?(String) ?
        lookup_info(participant_name, workitem) : participant_name

      instantiate(pinfo, opts)
    end
Returns a participant instance, or nil if there is no participant
 for the given participant name.

 Mostly a combination of #lookup_info and #instantiate.