public List < Return > executeEvents ( final EventType _eventType , final Object ... _objectTuples ) throws EFapsException { List < Return > ret = new ArrayList <> ( ) ; final AbstractCommand command ; if ( this . callingCmdUUID == null ) { command = this . getCommand ( ) ; } else { command = getCallingCommand ( ) ; } if ( command . hasEvents ( _eventType ) ) { final Parameter param = new Parameter ( ) ; if ( _objectTuples != null ) { // add all parameters for ( int i = 0 ; i < _objectTuples . length ; i += 2 ) { if ( i + 1 < _objectTuples . length && _objectTuples [ i ] instanceof ParameterValues ) { param . put ( ( ParameterValues ) _objectTuples [ i ] , _objectTuples [ i + 1 ] ) ; } } } param . put ( ParameterValues . PARAMETERS , Context . getThreadContext ( ) . getParameters ( ) ) ; if ( getInstance ( ) != null ) { final String [ ] contextoid = { getInstanceKey ( ) } ; Context . getThreadContext ( ) . getParameters ( ) . put ( "oid" , contextoid ) ; param . put ( ParameterValues . CALL_INSTANCE , getInstance ( ) ) ; param . put ( ParameterValues . INSTANCE , getInstance ( ) ) ; } ret = command . executeEvents ( _eventType , param ) ; } return ret ; }
Execute the events .