Search in sources :

Example 1 with DiscoverInfoProvider

use of org.jivesoftware.smackx.provider.DiscoverInfoProvider in project SmartMesh_Android by SmartMeshFoundation.

the class XmppUtils method configureConnection.

/**
 * XMPP configuration
 */
private void configureConnection(ProviderManager pm) {
    // Private Data Storage
    pm.addIQProvider("query", "jabber:iq:private", new PrivateDataManager.PrivateDataIQProvider());
    // Time
    try {
        pm.addIQProvider("query", "jabber:iq:time", Class.forName("org.jivesoftware.smackx.packet.Time"));
    } catch (Exception e) {
        e.printStackTrace();
    // Logger.v(TAG,
    // "Can't load class for org.jivesoftware.smackx.packet.Time");
    }
    // Roster Exchange
    pm.addExtensionProvider("x", "jabber:x:roster", new RosterExchangeProvider());
    // Message Events
    pm.addExtensionProvider("x", "jabber:x:event", new MessageEventProvider());
    // Chat State
    pm.addExtensionProvider("active", "http://jabber.org/protocol/chatstates", new ChatStateExtension.Provider());
    pm.addExtensionProvider("composing", "http://jabber.org/protocol/chatstates", new ChatStateExtension.Provider());
    pm.addExtensionProvider("paused", "http://jabber.org/protocol/chatstates", new ChatStateExtension.Provider());
    pm.addExtensionProvider("inactive", "http://jabber.org/protocol/chatstates", new ChatStateExtension.Provider());
    pm.addExtensionProvider("gone", "http://jabber.org/protocol/chatstates", new ChatStateExtension.Provider());
    // XHTML
    pm.addExtensionProvider("html", "http://jabber.org/protocol/xhtml-im", new XHTMLExtensionProvider());
    // Group Chat Invitations
    pm.addExtensionProvider("x", "jabber:x:conference", new GroupChatInvitation.Provider());
    // Service Discovery # Items //Analytical room list
    pm.addIQProvider("query", "http://jabber.org/protocol/disco#items", new DiscoverItemsProvider());
    // Service Discovery # Info //A single room
    pm.addIQProvider("query", "http://jabber.org/protocol/disco#info", new DiscoverInfoProvider());
    // Data Forms
    pm.addExtensionProvider("x", "jabber:x:data", new DataFormProvider());
    // MUC User
    pm.addExtensionProvider("x", "http://jabber.org/protocol/muc#user", new MUCUserProvider());
    // MUC Admin
    pm.addIQProvider("query", "http://jabber.org/protocol/muc#admin", new MUCAdminProvider());
    // MUC Owner
    pm.addIQProvider("query", "http://jabber.org/protocol/muc#owner", new MUCOwnerProvider());
    // Delayed Delivery
    pm.addExtensionProvider("x", "jabber:x:delay", new DelayInformationProvider());
    // Version
    try {
        pm.addIQProvider("query", "jabber:iq:version", Class.forName("org.jivesoftware.smackx.packet.Version"));
    } catch (ClassNotFoundException e) {
    // Not sure what's happening here.
    }
    // VCard
    pm.addIQProvider("vCard", "vcard-temp", new VCardProvider());
    // Offline Message Requests
    pm.addIQProvider("offline", "http://jabber.org/protocol/offline", new OfflineMessageRequest.Provider());
    // Offline Message Indicator
    pm.addExtensionProvider("offline", "http://jabber.org/protocol/offline", new OfflineMessageInfo.Provider());
    // Last Activity
    pm.addIQProvider("query", "jabber:iq:last", new LastActivity.Provider());
    // User Search
    pm.addIQProvider("query", "jabber:iq:search", new UserSearch.Provider());
    // SharedGroupsInfo
    pm.addIQProvider("sharedgroup", "http://www.jivesoftware.org/protocol/sharedgroup", new SharedGroupsInfo.Provider());
    // JEP-33: Extended Stanza Addressing
    pm.addExtensionProvider("addresses", "http://jabber.org/protocol/address", new MultipleAddressesProvider());
    // FileTransfer
    pm.addIQProvider("si", "http://jabber.org/protocol/si", new StreamInitiationProvider());
    pm.addIQProvider("query", "http://jabber.org/protocol/bytestreams", new BytestreamsProvider());
    // pm.addIQProvider("open", "http://jabber.org/protocol/ibb",
    // new IBBProviders.Open());
    // 
    // pm.addIQProvider("close", "http://jabber.org/protocol/ibb",s
    // new IBBProviders.Close());
    // 
    // pm.addExtensionProvider("data", "http://jabber.org/protocol/ibb",
    // new IBBProviders.Data());
    // Privacy
    pm.addIQProvider("query", "jabber:iq:privacy", new PrivacyProvider());
    pm.addIQProvider("command", "http://jabber.org/protocol/commands", new AdHocCommandDataProvider());
    pm.addExtensionProvider("malformed-action", "http://jabber.org/protocol/commands", new AdHocCommandDataProvider.MalformedActionError());
    pm.addExtensionProvider("bad-locale", "http://jabber.org/protocol/commands", new AdHocCommandDataProvider.BadLocaleError());
    pm.addExtensionProvider("bad-payload", "http://jabber.org/protocol/commands", new AdHocCommandDataProvider.BadPayloadError());
    pm.addExtensionProvider("bad-sessionid", "http://jabber.org/protocol/commands", new AdHocCommandDataProvider.BadSessionIDError());
    pm.addExtensionProvider("session-expired", "http://jabber.org/protocol/commands", new AdHocCommandDataProvider.SessionExpiredError());
}
Also used : GroupChatInvitation(org.jivesoftware.smackx.GroupChatInvitation) MUCUserProvider(org.jivesoftware.smackx.provider.MUCUserProvider) SharedGroupsInfo(org.jivesoftware.smackx.packet.SharedGroupsInfo) MessageEventProvider(org.jivesoftware.smackx.provider.MessageEventProvider) ChatStateExtension(org.jivesoftware.smackx.packet.ChatStateExtension) OfflineMessageInfo(org.jivesoftware.smackx.packet.OfflineMessageInfo) DiscoverInfoProvider(org.jivesoftware.smackx.provider.DiscoverInfoProvider) DiscoverItemsProvider(org.jivesoftware.smackx.provider.DiscoverItemsProvider) VCardProvider(org.jivesoftware.smackx.provider.VCardProvider) MUCAdminProvider(org.jivesoftware.smackx.provider.MUCAdminProvider) BytestreamsProvider(org.jivesoftware.smackx.provider.BytestreamsProvider) AdHocCommandDataProvider(org.jivesoftware.smackx.provider.AdHocCommandDataProvider) MUCOwnerProvider(org.jivesoftware.smackx.provider.MUCOwnerProvider) OfflineMessageRequest(org.jivesoftware.smackx.packet.OfflineMessageRequest) PrivateDataManager(org.jivesoftware.smackx.PrivateDataManager) MultipleAddressesProvider(org.jivesoftware.smackx.provider.MultipleAddressesProvider) PrivacyProvider(org.jivesoftware.smack.provider.PrivacyProvider) DataFormProvider(org.jivesoftware.smackx.provider.DataFormProvider) XHTMLExtensionProvider(org.jivesoftware.smackx.provider.XHTMLExtensionProvider) XMPPException(org.jivesoftware.smack.XMPPException) LastActivity(org.jivesoftware.smackx.packet.LastActivity) UserSearch(org.jivesoftware.smackx.search.UserSearch) StreamInitiationProvider(org.jivesoftware.smackx.provider.StreamInitiationProvider) RosterExchangeProvider(org.jivesoftware.smackx.provider.RosterExchangeProvider) DelayInformationProvider(org.jivesoftware.smackx.provider.DelayInformationProvider)

Example 2 with DiscoverInfoProvider

use of org.jivesoftware.smackx.provider.DiscoverInfoProvider in project ecf by eclipse.

the class SimpleDirectoryPersistentCache method restoreInfoFromFile.

/**
 * Tries to restore an DiscoverInfo packet from a file.
 *
 * @param file
 * @return
 * @throws IOException
 */
private static DiscoverInfo restoreInfoFromFile(File file) throws IOException {
    DataInputStream dis = new DataInputStream(new FileInputStream(file));
    String fileContent = null;
    String id;
    String from;
    String to;
    try {
        fileContent = dis.readUTF();
    } finally {
        dis.close();
    }
    if (fileContent == null)
        return null;
    Reader reader = new StringReader(fileContent);
    XmlPullParser parser;
    try {
        parser = new MXParser();
        parser.setFeature(XmlPullParser.FEATURE_PROCESS_NAMESPACES, true);
        parser.setInput(reader);
    } catch (XmlPullParserException xppe) {
        xppe.printStackTrace();
        return null;
    }
    DiscoverInfo iqPacket;
    IQProvider provider = new DiscoverInfoProvider();
    // Parse the IQ, we only need the id
    try {
        parser.next();
        id = parser.getAttributeValue("", "id");
        from = parser.getAttributeValue("", "from");
        to = parser.getAttributeValue("", "to");
        parser.next();
    } catch (XmlPullParserException e1) {
        return null;
    }
    try {
        iqPacket = (DiscoverInfo) provider.parseIQ(parser);
    } catch (Exception e) {
        return null;
    }
    iqPacket.setPacketID(id);
    iqPacket.setFrom(from);
    iqPacket.setTo(to);
    iqPacket.setType(IQ.Type.RESULT);
    return iqPacket;
}
Also used : DiscoverInfo(org.jivesoftware.smackx.packet.DiscoverInfo) MXParser(org.xmlpull.mxp1.MXParser) DiscoverInfoProvider(org.jivesoftware.smackx.provider.DiscoverInfoProvider) StringReader(java.io.StringReader) XmlPullParser(org.xmlpull.v1.XmlPullParser) Reader(java.io.Reader) StringReader(java.io.StringReader) XmlPullParserException(org.xmlpull.v1.XmlPullParserException) DataInputStream(java.io.DataInputStream) FileInputStream(java.io.FileInputStream) IOException(java.io.IOException) XmlPullParserException(org.xmlpull.v1.XmlPullParserException) IQProvider(org.jivesoftware.smack.provider.IQProvider)

Aggregations

DiscoverInfoProvider (org.jivesoftware.smackx.provider.DiscoverInfoProvider)2 DataInputStream (java.io.DataInputStream)1 FileInputStream (java.io.FileInputStream)1 IOException (java.io.IOException)1 Reader (java.io.Reader)1 StringReader (java.io.StringReader)1 XMPPException (org.jivesoftware.smack.XMPPException)1 IQProvider (org.jivesoftware.smack.provider.IQProvider)1 PrivacyProvider (org.jivesoftware.smack.provider.PrivacyProvider)1 GroupChatInvitation (org.jivesoftware.smackx.GroupChatInvitation)1 PrivateDataManager (org.jivesoftware.smackx.PrivateDataManager)1 ChatStateExtension (org.jivesoftware.smackx.packet.ChatStateExtension)1 DiscoverInfo (org.jivesoftware.smackx.packet.DiscoverInfo)1 LastActivity (org.jivesoftware.smackx.packet.LastActivity)1 OfflineMessageInfo (org.jivesoftware.smackx.packet.OfflineMessageInfo)1 OfflineMessageRequest (org.jivesoftware.smackx.packet.OfflineMessageRequest)1 SharedGroupsInfo (org.jivesoftware.smackx.packet.SharedGroupsInfo)1 AdHocCommandDataProvider (org.jivesoftware.smackx.provider.AdHocCommandDataProvider)1 BytestreamsProvider (org.jivesoftware.smackx.provider.BytestreamsProvider)1 DataFormProvider (org.jivesoftware.smackx.provider.DataFormProvider)1