Package tigase.xml

Examples of tigase.xml.Element


        return;
      }
      if (packet.getFrom().equals(session.getConnectionId())) {
        List<Element> elems = packet.getElemChildren("/iq/query");
        if (elems != null && elems.size() > 0) {
          Element elem = elems.get(0);
          StanzaType type = packet.getType();
          switch (type) {
          case get:
            String priv = session.getData(PRIVATE_KEY,
              elem.getName()+elem.getXMLNS(), null);
            log.finest("Loaded private data for key: "
              + elem.getName() + ": " + priv);
            if (priv != null) {
              results.offer(parseXMLData(priv, packet));
              break;
            }
            results.offer(packet.okResult((String)null, 2));
            break;
          case set:
            log.finest("Saving private data: " + elem.toString());
            session.setData(PRIVATE_KEY,
              elem.getName()+elem.getXMLNS(), elem.toString());
            results.offer(packet.okResult((String)null, 0));
            break;
          case result:
            // Should never happen, it is an error and should be ignored
            break;
View Full Code Here


  private Packet parseXMLData(String data, Packet packet) {
    DomBuilderHandler domHandler = new DomBuilderHandler();
    parser.parse(domHandler, data.toCharArray(), 0, data.length());
    Queue<Element> elems = domHandler.getParsedElements();
    Packet result = packet.okResult((Element)null, 1);
    Element query = result.getElement().findChild("/iq/query");
    for (Element el: elems) {
      query.addChild(el);
    } // end of for (Element el: elems)
    return result;
  }
View Full Code Here

        }
        comps_str += comp;
      }
    }
    String other_params = otherDomainParams != null ? otherDomainParams : "";
    Element elem = new Element(VHOST_ELEM, new Element[] {
              new Element(COMPONENTS_ELEM, comps_str),
              new Element(OTHER_PARAMS_ELEM, other_params)
            },
            new String[]{HOSTNAME_ATT, ENABLED_ATT, ANONYMOUS_ENABLED_ATT,
              REGISTER_ENABLED_ATT, MAX_USERS_NUMBER_ATT},
            new String[]{vhost, "" + enabled, "" + anonymousEnabled,
              "" + registerEnabled, "" + maxUsersNumber});
View Full Code Here

        (pac.getElement().findChild("/message/body") != null) &&
        (type == null || type == StanzaType.normal || type == StanzaType.chat))
      || (pac.getElemName().equals("presence") &&
          (type == StanzaType.subscribe || type == StanzaType.subscribed
            || type == StanzaType.unsubscribe || type == StanzaType.unsubscribed))) {
      Element packet = pac.getElement().clone();
      String stamp = null;
      synchronized (formater) {
        stamp = formater.format(new Date());
      }
      String from = JIDUtils.getNodeHost(pac.getElemTo());
      Element x = new Element("delay", "Offline Storage",
        new String[] {"from", "stamp", "xmlns"},
        new String[] {from, stamp, "urn:xmpp:delay"});
      packet.addChild(x);
      String user_id = JIDUtils.getNodeID(pac.getElemTo());
      repo.addOfflineDataList(user_id, ID,
View Full Code Here

        sb.append(msg);
      }
      char[] data = sb.toString().toCharArray();
      parser.parse(domHandler, data, 0, data.length);
      Queue<Element> elems = domHandler.getParsedElements();
      Element elem = null;
      while ((elem = elems.poll()) != null) {
        pacs.offer(new Packet(elem));
      } // end of while (elem = elems.poll() != null)
      try {
        Collections.sort(pacs, new StampComparator());
View Full Code Here

  private class StampComparator implements Comparator<Packet> {
    public int compare(Packet p1, Packet p2) {
      String stamp1 = "";
      String stamp2 = "";
      // Try XEP-0203 - the new XEP...
      Element stamp_el1 = p1.getElement().getChild("delay", "urn:xmpp:delay");
      if (stamp_el1 == null) {
        // XEP-0091 support - the old one...
        stamp_el1 = p1.getElement().getChild("x", "jabber:x:delay");
      }
      stamp1 = stamp_el1.getAttribute("stamp");
      // Try XEP-0203 - the new XEP...
      Element stamp_el2 = p2.getElement().getChild("delay", "urn:xmpp:delay");
      if (stamp_el2 == null) {
        // XEP-0091 support - the old one...
        stamp_el2 = p2.getElement().getChild("x", "jabber:x:delay");
      }
      stamp2 = stamp_el2.getAttribute("stamp");
      return stamp1.compareTo(stamp2);
    }
View Full Code Here

      List<Element> items = serviceEntity.getDiscoItems(node, jid);
      log.finest("Processing discoItems for node: " + node + ", result: "
        + (items == null ? null : items.toString()));
      return items;
    } else {
      Element item = serviceEntity.getDiscoItem(null,
        JIDUtils.getNodeID(getName(),  jid));
      log.finest("Processing discoItems, result: "
        + (item == null ? null : item.toString()));
      return Arrays.asList(item);
    }
  }
View Full Code Here

                "User not found", true));
          } // end of try-catch
          break;
        case set:
          if (packet.getFrom().equals(session.getConnectionId())) {
            Element elvCard = packet.getElement().getChild(ELEMENTS[0]);
            // This is added to support old vCard protocol where element
            // name was all upper cases. So here I am checking both
            // possibilities
            if (elvCard == null) {
              elvCard = packet.getElement().getChild(ELEMENTS[1]);
            }
            if (elvCard != null) {
              log.finer("Adding vCard: " + elvCard.toString());
              session.setPublicData(ID, VCARD_KEY, elvCard.toString());
            } else {
              log.finer("Removing vCard");
              session.removePublicData(ID, VCARD_KEY);
            } // end of else
            results.offer(packet.okResult((String)null, 0));
          } else {
            results.offer(Authorization.NOT_AUTHORIZED.getResponseMessage(packet,
                "You are not authorized to set vcard data.", true));
          } // end of else
          break;
        case result:
        case error:
          Element elem = packet.getElement().clone();
          Packet result = new Packet(elem);
          result.setTo(session.getConnectionId());
          result.setFrom(packet.getTo());
          results.offer(result);
          break;
        default:
          results.offer(Authorization.BAD_REQUEST.getResponseMessage(packet,
              "Request type is incorrect", false));
          break;
        } // end of switch (type)
      } else {
        Element result = packet.getElement().clone();
        // According to spec we must set proper FROM attribute
        //        result.setAttribute("from", session.getJID());
        results.offer(new Packet(result));
      } // end of else
    } catch (NotAuthorizedException e) {
View Full Code Here

              break;
            }
          }
        }

        Element elem = packet.getElement().clone();
        Packet result = new Packet(elem);
        result.setTo(session.getConnectionId());
        result.setFrom(packet.getTo());
        results.offer(result);
      } else {
        // This is message to some other client
        Element result = packet.getElement().clone();
        results.offer(new Packet(result));
      } // end of else
    } catch (NotAuthorizedException e) {
      log.warning("NotAuthorizedException for packet: "  + packet.getStringData());
      results.offer(Authorization.NOT_AUTHORIZED.getResponseMessage(packet,
View Full Code Here

      results.offer(session.getAuthState().getResponseMessage(packet,
          "Session is not yet authorized.", false));
      return;
    } // end of if (!session.isAuthorized())

    Element request = packet.getElement();
    StanzaType type = packet.getType();
    try {
      switch (type) {
      case set:
        final String resource = request.getChildCData("/iq/bind/resource");
        if (resource == null || resource.equals("")) {
          session.setResource("tigase-"+(++resGenerator));
        } else {
          session.setResource(resource);
        } // end of if (resource == null) else
View Full Code Here

TOP

Related Classes of tigase.xml.Element

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.