📄 joramsaxwrapper.java
字号:
} else if (type.equals("topic")) { if (className == null) className = "org.objectweb.joram.mom.dest.Topic"; if (JoramTracing.dbgAdmin.isLoggable(BasicLevel.DEBUG)) JoramTracing.dbgAdmin.log(BasicLevel.DEBUG, "Topic.create(" + serverId + "," + name + "," + className + "," + properties + ")"); dest = Topic.create(serverId, name, className, properties); } else throw new Exception("type " + type + " bad value. (queue or topic)"); if (JoramTracing.dbgAdmin.isLoggable(BasicLevel.DEBUG)) JoramTracing.dbgAdmin.log(BasicLevel.DEBUG, "destination = " + dest); properties = null; if (freeReading) dest.setFreeReading(); freeReading = false; if (freeWriting) dest.setFreeWriting(); freeWriting = false; for (int i = 0; i < readers.size(); i++) { User u = (User) users.get(readers.get(i)); if (u != null) dest.setReader(u); } readers.clear(); for (int i = 0; i < writers.size(); i++) { User u = (User) users.get(writers.get(i)); if (u != null) dest.setWriter(u); } writers.clear(); if (cluster != null && dest != null) { cluster.add(dest); } if (jndi) toBind.put(jndiName, dest); if (dest.getAdminName() != null && dest.getAdminName().length() > 0) destinations.put(dest.getAdminName(), dest); else destinations.put(dest.getName(), dest); if (dmq != null && dmq.length() >0 && destinations.containsKey(dmq)) { dest.setDMQ((DeadMQueue) destinations.get(dmq)); } } else if (rawName.equals(ELT_QUEUE)) { if (className == null) className = "org.objectweb.joram.mom.dest.Queue"; if (JoramTracing.dbgAdmin.isLoggable(BasicLevel.DEBUG)) JoramTracing.dbgAdmin.log(BasicLevel.DEBUG, "Queue.create(" + serverId + "," + name + "," + className + "," + properties + ")"); Queue queue = Queue.create(serverId, name, className, properties); properties = null; if (freeReading) queue.setFreeReading(); freeReading = false; if (freeWriting) queue.setFreeWriting(); freeWriting = false; for (int i = 0; i < readers.size(); i++) { User u = (User) users.get(readers.get(i)); if (u != null) queue.setReader(u); } readers.clear(); for (int i = 0; i < writers.size(); i++) { User u = (User) users.get(writers.get(i)); if (u != null) queue.setWriter(u); } writers.clear(); if (threshold > 0) queue.setThreshold(threshold); if (nbMaxMsg > 0) queue.setNbMaxMsg(nbMaxMsg); if (cluster != null && queue != null) { cluster.add(queue); } if (jndi) toBind.put(jndiName, queue); if (queue.getAdminName() != null && queue.getAdminName().length() > 0) destinations.put(queue.getAdminName(), queue); else destinations.put(queue.getName(), queue); if (dmq != null && dmq.length() >0 && destinations.containsKey(dmq)) { queue.setDMQ((DeadMQueue) destinations.get(dmq)); } } else if (rawName.equals(ELT_TOPIC)) { if (className == null) className = "org.objectweb.joram.mom.dest.Topic"; if (JoramTracing.dbgAdmin.isLoggable(BasicLevel.DEBUG)) JoramTracing.dbgAdmin.log(BasicLevel.DEBUG, "Topic.create(" + serverId + "," + name + "," + className + "," + properties + ")"); Topic topic = Topic.create(serverId, name, className, properties); properties = null; if (freeReading) topic.setFreeReading(); freeReading = false; if (freeWriting) topic.setFreeWriting(); freeWriting = false; for (int i = 0; i < readers.size(); i++) { User u = (User) users.get(readers.get(i)); if (u != null) topic.setReader(u); } readers.clear(); for (int i = 0; i < writers.size(); i++) { User u = (User) users.get(writers.get(i)); if (u != null) topic.setWriter(u); } writers.clear(); if (parent != null && parent.length() > 0 && destinations.containsKey(parent)) topic.setParent((Topic) destinations.get(parent)); if (cluster != null && topic != null) { cluster.add(topic); } if (jndi) toBind.put(jndiName, topic); if (topic.getAdminName() != null && topic.getAdminName().length() > 0) destinations.put(topic.getAdminName(), topic); else destinations.put(topic.getName(), topic); if (dmq != null && dmq.length() >0 && destinations.containsKey(dmq)) { topic.setDMQ((DeadMQueue) destinations.get(dmq)); } } else if (rawName.equals(ELT_DMQUEUE)) { className = "org.objectweb.joram.mom.dest.DeadMQueue"; if (JoramTracing.dbgAdmin.isLoggable(BasicLevel.DEBUG)) JoramTracing.dbgAdmin.log(BasicLevel.DEBUG, "DeadMQueue.create(" + serverId + "," + name + ")"); DeadMQueue dmq = (DeadMQueue) DeadMQueue.create(serverId); if (freeReading) dmq.setFreeReading(); freeReading = false; if (freeWriting) dmq.setFreeWriting(); freeWriting = false; for (int i = 0; i < readers.size(); i++) { User u = (User) users.get(readers.get(i)); if (u != null) dmq.setReader(u); } readers.clear(); for (int i = 0; i < writers.size(); i++) { User u = (User) users.get(writers.get(i)); if (u != null) dmq.setWriter(u); } writers.clear(); if (jndi) toBind.put(jndiName, dmq); if (name != null && name.length() > 0) destinations.put(name, dmq); else destinations.put(dmq.getName(), dmq); } else if (rawName.equals(ELT_PROPERTY)) { } else if (rawName.equals(ELT_READER)) { readers.add(user); } else if (rawName.equals(ELT_WRITER)) { writers.add(user); } else if (rawName.equals(ELT_FREEREADER)) { } else if (rawName.equals(ELT_FREEWRITER)) { } else if (rawName.equals(ELT_INITIALCONTEXT)) { try { jndiCtx = new javax.naming.InitialContext(properties); } catch (NamingException exc) { JoramTracing.dbgAdmin.log(BasicLevel.ERROR,"",exc); } } else if (rawName.equals(ELT_CLUSTER)) { Destination dest0 = null; for (int j = 0; j < cluster.size(); j++) { Destination dest = (Destination) cluster.get(j); if (j == 0) { dest0 = dest; } else { if (dest instanceof Topic) ((Topic) dest0).addClusteredTopic((Topic) dest); else if (dest instanceof Queue) ((Queue) dest0).addClusteredQueue((Queue) dest); } if (freeReading) dest.setFreeReading(); if (freeWriting) dest.setFreeWriting(); for (int i = 0; i < readers.size(); i++) { User u = (User) users.get(readers.get(i)); if (u != null) dest.setReader(u); } for (int i = 0; i < writers.size(); i++) { User u = (User) users.get(writers.get(i)); if (u != null) dest.setWriter(u); } } freeWriting = false; freeReading = false; readers.clear(); writers.clear(); cluster = null; } else { throw new SAXException("unknown element \"" + rawName + "\""); } } catch (SAXException exc) { throw exc; } catch (Exception exc) { Exception cause = (Exception) exc.getCause(); if (cause != null) { JoramTracing.dbgAdmin.log(BasicLevel.ERROR,"",cause); throw new SAXException(cause.getMessage(), cause); } else { JoramTracing.dbgAdmin.log(BasicLevel.ERROR,"",exc); throw new SAXException(exc.getMessage(), exc); } } } } /** * Finalizes parsing of a document. * * @exception SAXException * unspecialized error */ public void endDocument() throws SAXException { if (JoramTracing.dbgAdmin.isLoggable(BasicLevel.DEBUG)) JoramTracing.dbgAdmin.log(BasicLevel.DEBUG, "endDocument"); AdminModule.disconnect(); try { if (jndiCtx != null) { for (Enumeration e = toBind.keys(); e.hasMoreElements();) { String name = (String) e.nextElement(); jndiCtx.rebind(name, toBind.get(name)); } jndiCtx.close(); toBind.clear(); } if (!toBind.isEmpty()) { jndiCtx = new javax.naming.InitialContext(); for (Enumeration e = toBind.keys(); e.hasMoreElements();) { String name = (String) e.nextElement(); jndiCtx.rebind(name, toBind.get(name)); } jndiCtx.close(); toBind.clear(); } } catch (NamingException exc) { JoramTracing.dbgAdmin.log(BasicLevel.ERROR,"",exc); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -