// Создать событие(сообщение, работу) в адрес объекта (обычно модуля) с маркером public void crEvent( String mark, String speech, int timeout, int maxCnt, String toObj, String preSound, // звук, предворяющий сообщение int alarm, // режим тревоги (0-нет,1-да) (когда игнорируется, какая зона должна звучать, // другой сигнал) String... arg // Аргументы к Яндекс сервису ) { Session s = HibernateUtil.getSessionFactory().getCurrentSession(); Query query = s.createSQLQuery( "CALL p_event.cr_event(:p_mark, :p_speech, :p_tm, :p_cd_to_obj, :p_presound, :p_alarm, :p_arg)") .setParameter("p_mark", mark) .setParameter("p_speech", speech) .setParameter("p_tm", timeout) .setParameter("p_cd_to_obj", toObj) .setParameter("p_presound", preSound) .setParameter("p_alarm", alarm) .setParameter("p_arg", (arg.length > 0 ? arg[0] : null)); int exRows = query.executeUpdate(); }
// отменить очередь событий public void cancelEvents() { Session s = HibernateUtil.getSessionFactory().getCurrentSession(); Query query = s.createSQLQuery("CALL p_event.cancel_events()"); int exRows = query.executeUpdate(); }
// Обработать расписание public void procScheduler() { Session s = HibernateUtil.getSessionFactory().getCurrentSession(); Query query = s.createSQLQuery("CALL p_event.proc_schdl()"); int exRows = query.executeUpdate(); }