code: Map<String,Object> executeEvent(Transaction trans, Map<String,Object> args, StringBuilder statementHolder) throws PersistenceException {
          logger.debug("enter - execute(Transaction, Map)");
          state = "EXECUTING";
          try {
              if( logger.isDebugEnabled() ) {
                  logger.debug("Getting connection from transaction: " + trans.getTransactionId());
              }
              connection = trans.getConnection();
              data = args;
              try {
                  String sql = loadStatement(connection, args);
                  Map<String,Object> res;
                  
                  if( logger.isDebugEnabled() ) {
                      logger.debug("Preparing: " + sql);
                  }
                  if( statementHolder != null ) {
                      statementHolder.append(sql);
                  }
                  statement = connection.prepareStatement(sql);
                  try {
                      logger.debug("And executing the prepared statement.");
                  
                      res = run(trans, args);
                  }
                  finally {
                      try { statement.close(); statement = null; }
                      catch( Throwable ignore ) { }
                  }
                  if( logger.isDebugEnabled() ) {
                      logger.debug("RESULTS: " + res);
                  }
                  if( res ==  null ) {
                      return null;
                  }
                  else if( res instanceof HashMap ) {
                      return (HashMap<String,Object>)res;
                  }
                  else {
                      HashMap<String,Object> tmp = new HashMap<String,Object>();
                      
                      tmp.putAll(res);
                      return tmp;
                  }
              }
              catch( SQLException e ) {
                  logger.debug("Error executing event: " + e.getMessage(), e);
                  throw new PersistenceException(e.getMessage());
              }
          }
          finally {
              state = "IDLE";
              logger.debug("exit - execute(Transaction, Map)");
          }
      }
docs: /*
  Map<String,Object> executeEvent(Transaction trans, Map<String,Object> args) throws PersistenceException {
  return executeEvent(trans, args, null);
  }