@Override public List<ListenerDefinition> getListeners() throws MessagingException { try { Connection connection = null; try { connection = dataSource.getConnection(); return listenerPersistenceManager.findAll(connection, ListenerDefinition.class); } finally { if (connection != null) { connection.close(); } } } catch (SQLException e) { throw new MessagingException(e); } }
@Override public ListenerDefinition getListener(String location) throws MessagingException { try { Connection connection = null; try { connection = dataSource.getConnection(); return listenerPersistenceManager.find(connection, ListenerDefinition.class, location); } finally { if (connection != null) { connection.close(); } } } catch (SQLException e) { throw new MessagingException(e); } }
@Override public void removeListener(String location) throws MessagingException { try { Connection connection = null; try { connection = dataSource.getConnection(); listenerPersistenceManager.delete(connection, ListenerDefinition.class, location); } finally { if (connection != null) { connection.close(); } } } catch (SQLException e) { throw new MessagingException(e); } }
destination = session.createTopic(this.name); } else { throw new MessagingException(format("Invalid Destination Type [{0}] for destination [{1}]", this.type, this.name));
destination = session.createTopic(this.name); } else { throw new MessagingException("Invalid Destination Type: " + this.type); ScriptEngineExecutorsManager.executeServiceCode(IJavascriptEngineExecutor.JAVASCRIPT_TYPE_DEFAULT, wrapper, null); } else { throw new MessagingException(format("Invalid message [{0}] has been received in destination [{1}]", message, this.name));
@Override public ListenerDefinition getListenerByName(String name) throws MessagingException { try { Connection connection = null; try { connection = dataSource.getConnection(); String sql = SqlFactory.getNative(connection).select().column("*").from("DIRIGIBLE_LISTENERS").where("LISTENER_NAME = ?").toString(); List<ListenerDefinition> listenerDefinitions = listenerPersistenceManager.query(connection, ListenerDefinition.class, sql, Arrays.asList(name)); if (listenerDefinitions.isEmpty()) { return null; } if (listenerDefinitions.size() > 1) { throw new MessagingException(format("There are more that one Listeners with the same name [{0}] at locations: [{1}] and [{2}].", name, listenerDefinitions.get(0).getLocation(), listenerDefinitions.get(1).getLocation())); } return listenerDefinitions.get(0); } finally { if (connection != null) { connection.close(); } } } catch (SQLException e) { throw new MessagingException(e); } }
@Override public ListenerDefinition createListener(String location, String name, char type, String handler, String description) throws MessagingException { ListenerDefinition listenerDefinition = new ListenerDefinition(); listenerDefinition.setLocation(location); listenerDefinition.setName(name); listenerDefinition.setType(type); listenerDefinition.setHandler(handler); listenerDefinition.setDescription(description); listenerDefinition.setCreatedBy(UserFacade.getName()); listenerDefinition.setCreatedAt(new Timestamp(new java.util.Date().getTime())); try { Connection connection = null; try { connection = dataSource.getConnection(); listenerPersistenceManager.insert(connection, listenerDefinition); return listenerDefinition; } finally { if (connection != null) { connection.close(); } } } catch (SQLException e) { throw new MessagingException(e); } }
@Override public void updateListener(String location, String name, char type, String handler, String description) throws MessagingException { try { Connection connection = null; try { connection = dataSource.getConnection(); ListenerDefinition listenerDefinition = getListener(location); listenerDefinition.setName(name); listenerDefinition.setType(type); listenerDefinition.setHandler(handler); listenerDefinition.setDescription(description); listenerPersistenceManager.update(connection, listenerDefinition); } finally { if (connection != null) { connection.close(); } } } catch (SQLException e) { throw new MessagingException(e); } }