当前位置: 首页>>代码示例>>Java>>正文


Java Element.addChild方法代码示例

本文整理汇总了Java中tigase.xml.Element.addChild方法的典型用法代码示例。如果您正苦于以下问题:Java Element.addChild方法的具体用法?Java Element.addChild怎么用?Java Element.addChild使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在tigase.xml.Element的用法示例。


在下文中一共展示了Element.addChild方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: buildRosterMatch

import tigase.xml.Element; //导入方法依赖的package包/类
/**
 * Builds a roster match IQ for remote lookup requests.
 * JIDs domain will be replaced by the given server name.
 */
private Element buildRosterMatch(Collection<BareJID> jidList, String id, String serverName) {
    Element iq = new Element(Iq.ELEM_NAME);
    iq.setAttribute(Iq.ID_ATT, id);
    iq.setAttribute(Iq.TYPE_ATT, StanzaType.get.toString());

    Element query = new Element("query");
    query.setXMLNS(XMLNS);

    for (BareJID jid : jidList) {
        Element item = new Element("item");
        item.setAttribute("jid", BareJID.bareJIDInstanceNS(jid.getLocalpart(), serverName).toString());
        query.addChild(item);
    }

    iq.addChild(query);
    return iq;
}
 
开发者ID:kontalk,项目名称:tigase-extension,代码行数:22,代码来源:ProbeComponent.java

示例2: buildRosterMatch

import tigase.xml.Element; //导入方法依赖的package包/类
private Element buildRosterMatch(Collection<BareJID> jidList, String id, String serverName) {
    Element iq = new Element(Iq.ELEM_NAME);
    iq.setAttribute(Iq.ID_ATT, id);
    iq.setAttribute(Iq.TYPE_ATT, StanzaType.get.toString());

    Element query = new Element("query");
    query.setXMLNS(KontalkRoster.XMLNS);

    for (BareJID jid : jidList) {
        Element item = new Element("item");
        item.setAttribute("jid", BareJID.bareJIDInstanceNS(jid.getLocalpart(), serverName).toString());
        query.addChild(item);
    }

    iq.addChild(query);
    return iq;
}
 
开发者ID:kontalk,项目名称:tigase-extension,代码行数:18,代码来源:ProbeEngine.java

示例3: testList

import tigase.xml.Element; //导入方法依赖的package包/类
private void testList(XMPPResourceConnection session, String listJID, String testJID, boolean shouldBeAllowed)
		throws TigaseStringprepException, NotAuthorizedException {

	JID jid = JID.jidInstance("[email protected]/res-1");
	JID blockedJID = JID.jidInstance(listJID);

	Element list = new Element("list", new String[]{"name"}, new String[]{"default"});
	list.addChild(new Element("item", new String[]{"type", "value", "action", "order"},
			new String[]{"jid", blockedJID.toString(), "deny", "100"}));
	list.addChild(new Element("item", new String[]{"action", "order"},
			new String[]{"allow", "110"}));

	session.putSessionData("active-list", list);

	Packet presence = Packet.packetInstance(new Element("presence",
			new String[]{"from", "to"},
			new String[]{testJID, jid.toString()}));
	boolean isAllowed = privacyFilter.allowed(presence, session);
	System.out.println("Privacy item: " + listJID + ", tested item: " + testJID + ", result: " + isAllowed);
	if (shouldBeAllowed) {
		assertTrue(isAllowed);
	} else {
		assertFalse(isAllowed);
	}

}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:27,代码来源:JabberIqPrivacyTest.java

示例4: addFieldMultiValue

import tigase.xml.Element; //导入方法依赖的package包/类
public static void addFieldMultiValue( final Element el, final String f_name,
																			 final List<String> f_value ) {
	Element x = el.getChild( "x", "jabber:x:data" );

	if ( x == null ){
		x = addDataForm( el, DataType.result );
	}
	if ( f_value != null ){
		Element field = new Element( FIELD_EL, new String[] { "var", "type" },
																 new String[] { XMLUtils.escape( f_name ),
																								"text-multi" } );

		for ( String val : f_value ) {
			if ( val != null ){
				Element value = new Element( VALUE_EL, XMLUtils.escape( val ) );

				field.addChild( value );
			}
		}
		x.addChild( field );
	}
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:23,代码来源:DataForm.java

示例5: addFieldValue

import tigase.xml.Element; //导入方法依赖的package包/类
public static void addFieldValue( final Element el, final String f_name,
																	final String f_value ) {
	Element x = el.getChild( "x", "jabber:x:data" );

	if ( x == null ){
		x = addDataForm( el, DataType.submit );
	}

	Element field = new Element( FIELD_EL,
															 new Element[] {
																 new Element( VALUE_EL, XMLUtils.escape( f_value ) ) },
															 new String[] { "var" },
															 new String[] { XMLUtils.escape( f_name ) } );

	x.addChild( field );
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:17,代码来源:DataForm.java

示例6: prepareCarbonCopy

import tigase.xml.Element; //导入方法依赖的package包/类
/**
 * Prepare packet which is carbon copy of message passed as argument
 * 
 * @param packet
 * @param session
 * @param srcJid
 * @param jid
 * @param type
 * 
 * @throws NoConnectionIdException 
 */
private static Packet prepareCarbonCopy(Packet packet, 
		JID srcJid, JID jid, String type) { //throws NoConnectionIdException {
	Packet msgClone = Message.getMessage(srcJid, jid, packet.getType(), null, 
			null, null, packet.getStanzaId());
	
	//msgClone.setPacketTo(session.getConnectionId(jid));

	Element received = new Element(type);
	received.setXMLNS(XMLNS);
	msgClone.getElement().addChild(received);

	Element forwarded = new Element("forwarded");
	forwarded.setXMLNS("urn:xmpp:forward:0");
	received.addChild(forwarded);

	forwarded.addChild(packet.getElement().clone());
	
	return msgClone;
	
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:32,代码来源:MessageCarbons.java

示例7: block

import tigase.xml.Element; //导入方法依赖的package包/类
public static boolean block(XMPPResourceConnection session, String jid) throws NotAuthorizedException, TigaseDBException {
	String name = getDefaultListName(session);
	if(name == null) {
		name = "default";
	}
	Element list = getList(session,name);			
	if(list != null) {
		if (list.findChild(item -> jid.equals(item.getAttributeStaticStr(VALUE)) && isBlockItem(item)) != null)
			return false;
	}
	Element list_new = new Element(LIST,new String[]{NAME},new String[]{name});		
	list_new.addChild(new Element(ITEM,new String[]{TYPE,ACTION,VALUE,ORDER},new String[]{"jid","deny",jid,"0"}));
	if (list != null) {
		List<Element> items = list.getChildren();
		if (items != null) {
			Collections.sort(items, JabberIqPrivacy.compar);
			for (int i = 0; i < items.size(); i++) {
				items.get(i).setAttribute(ORDER, "" + (i + 1));
			}
			list_new.addChildren(items);
		}
	}
	updateList(session, name, list_new);
	return true;
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:26,代码来源:Privacy.java

示例8: prepareRegisteredResponseForm

import tigase.xml.Element; //导入方法依赖的package包/类
private Element prepareRegisteredResponseForm(byte[] publicKey) {
    Element query = new Element("query", new String[] { "xmlns" }, XMLNSS);
    Form form = new Form("form", null, null);

    form.addField(Field.fieldHidden("FORM_TYPE", IQ_FORM_KONTALK_CODE_XMLNS));
    form.addField(Field.fieldTextSingle("publickey", Base64.encode(publicKey), "Signed public key"));

    query.addChild(form.getElement());
    return query;
}
 
开发者ID:kontalk,项目名称:tigase-extension,代码行数:11,代码来源:KontalkIqRegister.java

示例9: getBlocked

import tigase.xml.Element; //导入方法依赖的package包/类
private List<String> getBlocked(XMPPResourceConnection sess) throws XMPPException, TigaseStringprepException {
	Element iq = new Element("iq", new String[] { "type" }, new String[] { "get" });
	Element blocklist = new Element("blocklist", new String[] { "xmlns" }, new String[] { BlockingCommand.XMLNS });
	iq.addChild(blocklist);
	
	Packet p = Packet.packetInstance(iq);
	blockingCommand.process(p, sess, null, results, null);
	assertEquals(1, results.size());
	Packet result = results.poll();
	assertEquals(Iq.ELEM_NAME, result.getElemName());
	return result.getElement().getChild("blocklist").mapChildren(c -> c.getName() == "item", c -> c.getAttributeStaticStr("jid"));
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:13,代码来源:BlockingCommandTest.java

示例10: prepareCapsQueryEl

import tigase.xml.Element; //导入方法依赖的package包/类
/**
 * Method description
 *
 *
 * @param to
 * @param from
 * @param node
 *
 * 
 */
public static Element prepareCapsQueryEl(JID to, JID from, String node) {
	String id  = String.valueOf(idCounter++);
	Element iq = new Element("iq", new String[] { "from", "to", "id", "type", Packet.XMLNS_ATT },
													 new String[] { from.toString(),
					to.toString(), id, "get", Packet.CLIENT_XMLNS });
	Element query = new Element("query", new String[] { "xmlns", "node" },
															new String[] { "http://jabber.org/protocol/disco#info",
					node });

	iq.addChild(query);

	return iq;
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:24,代码来源:PresenceCapabilitiesManager.java

示例11: testStorageOfflineMessageForFullJid

import tigase.xml.Element; //导入方法依赖的package包/类
@Test
public void testStorageOfflineMessageForFullJid() throws Exception {
	BareJID userJid = BareJID.bareJIDInstance("[email protected]");
	JID res1 = JID.jidInstance(userJid, "res1");
	JID res2 = JID.jidInstance(userJid, "res2");
	XMPPResourceConnection session1 = getSession(JID.jidInstance("[email protected]/" + UUID.randomUUID().toString()), res1);
	XMPPResourceConnection session2 = getSession(JID.jidInstance("[email protected]/" + UUID.randomUUID().toString()), res2);
	
	assertEquals(Arrays.asList(session1, session2), session1.getActiveSessions());
	
	Element packetEl = new Element("message", new String[] { "type", "from", "to" },
			new String[] { "chat", "[email protected]/res1", res2.toString() });
	packetEl.addChild(new Element("body", "Test message"));
	Packet packet = Packet.packetInstance(packetEl);
	Queue<Packet> results = new ArrayDeque<Packet>();
	offlineProcessor.postProcess(packet, session1, null, results, null);
	assertTrue("generated result even than no result should be generated", results.isEmpty());
	assertTrue("message stored, while it should not be stored", msgRepo.getStored().isEmpty());
	
	msgRepo.getStored().clear();
	
	session1.setPriority(1);
	results = new ArrayDeque<Packet>();
	offlineProcessor.postProcess(packet, session1, null, results, null);
	assertTrue("generated result even than no result should be generated", results.isEmpty());
	assertTrue("message stored, while it should not be stored", msgRepo.getStored().isEmpty());
	
	msgRepo.getStored().clear();	
	
	session1.setPresence(new Element("presence"));
	results = new ArrayDeque<Packet>();
	offlineProcessor.postProcess(packet, session1, null, results, null);
	assertTrue("generated result even than no result should be generated", results.isEmpty());
	assertTrue("message stored, while it should not be stored", msgRepo.getStored().isEmpty());
	
	msgRepo.getStored().clear();
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:38,代码来源:OfflineMessagesTest.java

示例12: stamp

import tigase.xml.Element; //导入方法依赖的package包/类
@Override
public void stamp( Element msg, String msgID ) {
	Element clone = offlineElementIns.clone();
	final Element item = clone.getChild( FlexibleOfflineMessageRetrieval.ITEM_ELEMENT_NAME );
	item.setAttribute( FlexibleOfflineMessageRetrieval.NODE_ATTRIBUTE_NAME, msgID );
	msg.addChild( clone );

}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:9,代码来源:FlexibleOfflineMessageRetrieval.java

示例13: makeErrorElement

import tigase.xml.Element; //导入方法依赖的package包/类
/**
 * @return
 */
public Element makeErrorElement() {
	Element error = new Element("error");

	error.setAttribute("code", String.valueOf(this.errorCondition.getErrorCode()));
	error.setAttribute("type", this.errorCondition.getErrorType());
	error.addChild(new Element(this.errorCondition.getCondition(), new String[] { "xmlns" }, new String[] { xmlns }));

	return error;
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:13,代码来源:AdHocCommandException.java

示例14: packRouted

import tigase.xml.Element; //导入方法依赖的package包/类
/**
 * Returns a new <code>Packet</code> instance with stanza <em>routed</em>
 * which means an original stanza has been enclosed inside a <code>route</code>
 * XML element which contains additional information taken from
 * <code>Packet</code> packet instance internal attributes.
 *
 * @return a new <code>Packet</code> instance with <code>route</code> stanza.
 */
public Packet packRouted() {
	Element routedp = new Element("route", new String[] { TO_ATT, FROM_ATT, PRIORITY_ATT,
					PERM_ATT }, new String[] { getTo().toString(), getFrom().toString(),
																		 priority.toString(), permissions.toString() });

	routedp.addChild(elem);

	return packetInstance(routedp, getFrom(), getTo());
}
 
开发者ID:kontalk,项目名称:tigase-server,代码行数:18,代码来源:Packet.java

示例15: savePacketForOffLineUser

import tigase.xml.Element; //导入方法依赖的package包/类
/**
 * Method stores messages to offline repository with the following rules
 * applied, i.e. saves only:
 * <ul>
 * <li> message stanza with either nonempty {@code <body>}, {@code <event>} or
 * {@code <header>} child element and only messages of type normal, chat.</li>
 * <li> presence stanza of type subscribe, subscribed, unsubscribe and
 * unsubscribed.</li>
 * </ul>
 * <br>
 * Processed messages are stamped with the {@code delay} element and
 * appropriate timestamp.
 * <br>
 *
 * @param pac  a {@link Packet} object containing packet that should be
 *             verified and saved
 * @param repo a {@link MsgRepositoryIfc} repository handler responsible for
 *             storing messages
 * @return {@code true} if the packet was correctly saved to repository,
 * {@code false} otherwise.
 * @throws UserNotFoundException
 */
public boolean savePacketForOffLineUser(Packet pac, MsgRepositoryIfc repo)
        throws UserNotFoundException {

    if (isAllowedForOfflineStorage(pac)) {
        if (log.isLoggable(Level.FINEST)) {
            log.log(Level.FINEST, "Storing packet for offline user: {0}", pac);
        }

        Element elem = pac.getElement().clone();
        String stamp = null;

        synchronized (formatter) {
            stamp = formatter.format(new Date());
        }

        String from = pac.getStanzaTo().getDomain();
        Element x = new Element("delay", "Offline Storage - " + defHost, new String[]{
                "from",
                "stamp", "xmlns"}, new String[]{from, stamp, "urn:xmpp:delay"});

        elem.addChild(x);


        //
        //
        try {
            // save to history
            //
            QBChatServices.getInstance().savePrivateChatMessageToHistory(elem, true, null);

        } catch (XMPPException e) {
            log.log(Level.SEVERE, "Exception when trying to save offline message to chat history: {0}", e);
        }
        //
        //


        repo.storeMessage(pac.getStanzaFrom(), pac.getStanzaTo(), null, elem);
        pac.processedBy(ID);

        return true;
    }

    if (log.isLoggable(Level.FINEST)) {
        log.log(Level.FINEST, "Packet for offline user not suitable for storing: {0}",
                pac);
    }
    return false;
}
 
开发者ID:QuickBlox,项目名称:QuickBlox-Tigase-CustomFeatures,代码行数:72,代码来源:OfflineMessages.java


注:本文中的tigase.xml.Element.addChild方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。