private Connection getConnection() throws JMSException { Connection result = connection; if (result == null) { synchronized (this) { result = connection; if (result == null) { result = JMSFactory.createConnection(jmsConfig); trySetExListener(result); result.start(); connection = result; } } } return result; }