~qutim/jreen/ubuntu

1 by Vsevolod Velichko
Import upstream version 1.1.0
1
/****************************************************************************
2
**
3
** Jreen
4
**
5
** Copyright © 2011 Ruslan Nigmatullin <euroelessar@yandex.ru>
6
**
7
*****************************************************************************
8
**
9
** $JREEN_BEGIN_LICENSE$
10
** This program is free software: you can redistribute it and/or modify
11
** it under the terms of the GNU General Public License as published by
12
** the Free Software Foundation, either version 2 of the License, or
13
** (at your option) any later version.
14
**
15
** This program is distributed in the hope that it will be useful,
16
** but WITHOUT ANY WARRANTY; without even the implied warranty of
17
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18
** See the GNU General Public License for more details.
19
**
20
** You should have received a copy of the GNU General Public License
21
** along with this program.  If not, see http://www.gnu.org/licenses/.
22
** $JREEN_END_LICENSE$
23
**
24
****************************************************************************/
25
#ifndef DELAYEDDELIVERYFACTORY_H
26
#define DELAYEDDELIVERYFACTORY_H
27
#include "delayeddelivery.h"
28
29
namespace Jreen
30
{
31
32
class JREEN_AUTOTEST_EXPORT DelayedDeliveryFactoryPrivate;
33
class JREEN_AUTOTEST_EXPORT DelayedDeliveryFactory : public PayloadFactory<DelayedDelivery>
34
{
35
	Q_DECLARE_PRIVATE(DelayedDeliveryFactory)
36
public:
37
	DelayedDeliveryFactory();
38
	virtual ~DelayedDeliveryFactory();
39
	QStringList features() const;
40
	bool canParse(const QStringRef &name, const QStringRef &uri, const QXmlStreamAttributes &attributes);
41
	void handleStartElement(const QStringRef &name, const QStringRef &uri, const QXmlStreamAttributes &attributes);
42
	void handleEndElement(const QStringRef &name, const QStringRef &uri);
43
	void handleCharacterData(const QStringRef &text);
44
	void serialize(Payload *extension, QXmlStreamWriter *writer);
45
	Payload::Ptr createPayload();
46
private:
47
	QScopedPointer<DelayedDeliveryFactoryPrivate> d_ptr;
48
};
49
50
}
51
#endif // DELAYEDDELIVERYFACTORY_H