本文整理汇总了Java中org.ofbiz.service.config.model.Server.getListenerClass方法的典型用法代码示例。如果您正苦于以下问题:Java Server.getListenerClass方法的具体用法?Java Server.getListenerClass怎么用?Java Server.getListenerClass使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.ofbiz.service.config.model.Server
的用法示例。
在下文中一共展示了Server.getListenerClass方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: loadListener
import org.ofbiz.service.config.model.Server; //导入方法依赖的package包/类
private GenericMessageListener loadListener(String serverKey, Server server) throws GenericServiceException {
String serverName = server.getJndiServerName();
String jndiName = server.getJndiName();
String queueName = server.getTopicQueue();
String type = server.getType();
String userName = server.getUsername();
String password = server.getPassword();
String className = server.getListenerClass();
if (UtilValidate.isEmpty(className)) {
if (type.equals("topic"))
className = JmsListenerFactory.TOPIC_LISTENER_CLASS;
else if (type.equals("queue"))
className = JmsListenerFactory.QUEUE_LISTENER_CLASS;
}
GenericMessageListener listener = listeners.get(serverKey);
if (listener == null) {
synchronized (this) {
listener = listeners.get(serverKey);
if (listener == null) {
ClassLoader cl = this.getClass().getClassLoader();
try {
Class<?> c = cl.loadClass(className);
Constructor<GenericMessageListener> cn = UtilGenerics.cast(c.getConstructor(Delegator.class, String.class, String.class, String.class, String.class, String.class));
listener = cn.newInstance(delegator, serverName, jndiName, queueName, userName, password);
} catch (Exception e) {
throw new GenericServiceException(e.getMessage(), e);
}
if (listener != null)
listeners.put(serverKey, listener);
loadable++;
}
}
}
if (listener != null && !listener.isConnected()) {
listener.load();
if (listener.isConnected())
connected++;
}
return listener;
}