⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 joramsaxwrapper.java

📁 一个类似于openJMS分布在ObjectWeb之下的JMS消息中间件。
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
          } 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 + -