initial commit
This commit is contained in:
commit
9d20827c46
2469 changed files with 470994 additions and 0 deletions
189
iris-legacy/iris/include/xmpp_message.h
Normal file
189
iris-legacy/iris/include/xmpp_message.h
Normal file
|
|
@ -0,0 +1,189 @@
|
|||
/*
|
||||
* Copyright (C) 2003 Justin Karneges
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef XMPP_MESSAGE_H
|
||||
#define XMPP_MESSAGE_H
|
||||
|
||||
#include "xmpp_stanza.h"
|
||||
#include "xmpp_url.h"
|
||||
#include "xmpp_chatstate.h"
|
||||
#include "xmpp_receipts.h"
|
||||
#include "xmpp_address.h"
|
||||
#include "xmpp_rosterx.h"
|
||||
#include "xmpp_muc.h"
|
||||
|
||||
class QString;
|
||||
class QDateTime;
|
||||
#ifdef YAPSI
|
||||
class YaLastMail;
|
||||
#endif
|
||||
|
||||
namespace XMPP {
|
||||
class Jid;
|
||||
class PubSubItem;
|
||||
class PubSubRetraction;
|
||||
class HTMLElement;
|
||||
class HttpAuthRequest;
|
||||
class XData;
|
||||
|
||||
typedef enum { OfflineEvent, DeliveredEvent, DisplayedEvent,
|
||||
ComposingEvent, CancelEvent } MsgEvent;
|
||||
|
||||
class Message
|
||||
{
|
||||
public:
|
||||
Message(const Jid &to="");
|
||||
Message(const Message &from);
|
||||
Message & operator=(const Message &from);
|
||||
~Message();
|
||||
|
||||
Jid to() const;
|
||||
Jid from() const;
|
||||
QString id() const;
|
||||
QString type() const;
|
||||
QString lang() const;
|
||||
QString subject(const QString &lang="") const;
|
||||
QString body(const QString &lang="") const;
|
||||
QString thread() const;
|
||||
Stanza::Error error() const;
|
||||
|
||||
void setTo(const Jid &j);
|
||||
void setFrom(const Jid &j);
|
||||
void setId(const QString &s);
|
||||
void setType(const QString &s);
|
||||
void setLang(const QString &s);
|
||||
void setSubject(const QString &s, const QString &lang="");
|
||||
void setBody(const QString &s, const QString &lang="");
|
||||
void setThread(const QString &s, bool send = false);
|
||||
void setError(const Stanza::Error &err);
|
||||
|
||||
// JEP-0060
|
||||
const QString& pubsubNode() const;
|
||||
const QList<PubSubItem>& pubsubItems() const;
|
||||
const QList<PubSubRetraction>& pubsubRetractions() const;
|
||||
|
||||
// JEP-0091
|
||||
QDateTime timeStamp() const;
|
||||
void setTimeStamp(const QDateTime &ts, bool send = false);
|
||||
|
||||
// JEP-0071
|
||||
HTMLElement html(const QString &lang="") const;
|
||||
void setHTML(const HTMLElement &s, const QString &lang="");
|
||||
bool containsHTML() const;
|
||||
|
||||
// JEP-0066
|
||||
UrlList urlList() const;
|
||||
void urlAdd(const Url &u);
|
||||
void urlsClear();
|
||||
void setUrlList(const UrlList &list);
|
||||
|
||||
// JEP-0022
|
||||
QString eventId() const;
|
||||
void setEventId(const QString& id);
|
||||
bool containsEvents() const;
|
||||
bool containsEvent(MsgEvent e) const;
|
||||
void addEvent(MsgEvent e);
|
||||
|
||||
// JEP-0085
|
||||
ChatState chatState() const;
|
||||
void setChatState(ChatState);
|
||||
|
||||
// XEP-0184
|
||||
MessageReceipt messageReceipt() const;
|
||||
void setMessageReceipt(MessageReceipt);
|
||||
|
||||
// JEP-0027
|
||||
QString xencrypted() const;
|
||||
void setXEncrypted(const QString &s);
|
||||
|
||||
// JEP-0033
|
||||
AddressList addresses() const;
|
||||
AddressList findAddresses(Address::Type t) const;
|
||||
void addAddress(const Address &a);
|
||||
void clearAddresses();
|
||||
void setAddresses(const AddressList &list);
|
||||
|
||||
// JEP-144
|
||||
const RosterExchangeItems& rosterExchangeItems() const;
|
||||
void setRosterExchangeItems(const RosterExchangeItems&);
|
||||
|
||||
// JEP-172
|
||||
void setNick(const QString&);
|
||||
const QString& nick() const;
|
||||
|
||||
// JEP-0070
|
||||
void setHttpAuthRequest(const HttpAuthRequest&);
|
||||
HttpAuthRequest httpAuthRequest() const;
|
||||
|
||||
// JEP-0004
|
||||
void setForm(const XData&);
|
||||
const XData& getForm() const;
|
||||
|
||||
// JEP-xxxx Whiteboarding
|
||||
void setWhiteboard(const QDomElement&);
|
||||
const QDomElement& whiteboard() const;
|
||||
|
||||
// MUC
|
||||
void setMUCStatus(int);
|
||||
bool hasMUCStatus() const;
|
||||
int mucStatus() const;
|
||||
void addMUCInvite(const MUCInvite&);
|
||||
const QList<MUCInvite>& mucInvites() const;
|
||||
void setMUCDecline(const MUCDecline&);
|
||||
const MUCDecline& mucDecline() const;
|
||||
const QString& mucPassword() const;
|
||||
void setMUCPassword(const QString&);
|
||||
|
||||
// Obsolete invitation
|
||||
QString invite() const;
|
||||
void setInvite(const QString &s);
|
||||
|
||||
// for compatibility. delete me later
|
||||
bool spooled() const;
|
||||
void setSpooled(bool);
|
||||
bool wasEncrypted() const;
|
||||
void setWasEncrypted(bool);
|
||||
|
||||
Stanza toStanza(Stream *stream) const;
|
||||
bool fromStanza(const Stanza &s, int tzoffset);
|
||||
|
||||
#ifdef YAPSI
|
||||
const YaLastMail& lastMailNotify() const;
|
||||
void setLastMailNotify(const YaLastMail& lastMailNotify);
|
||||
int spamFlag() const;
|
||||
|
||||
QString twin() const;
|
||||
void setTwin(const QString& twin);
|
||||
|
||||
QString yaMessageId() const;
|
||||
void setYaMessageId(const QString& yaMessageId);
|
||||
|
||||
int yaFlags() const;
|
||||
void setYaFlags(int flags);
|
||||
#endif
|
||||
|
||||
const QDomElement& getExtension(const QString& ns) const;
|
||||
|
||||
private:
|
||||
class Private;
|
||||
Private *d;
|
||||
};
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in a new issue