Content Hub  1.1.0
A session-wide content-exchange service
store.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2013 Canonical Ltd.
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License version 3 as
6  * published by the Free Software Foundation.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU Lesser General Public License for more details.
12  *
13  * You should have received a copy of the GNU Lesser General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * Authored by: Thomas Voß <thomas.voss@canonical.com>
17  */
18 #ifndef COM_LOMIRI_CONTENT_STORE_H_
19 #define COM_LOMIRI_CONTENT_STORE_H_
20 
21 #include <QObject>
22 #include <QSharedPointer>
23 
26 
27 namespace com
28 {
29 namespace lomiri
30 {
31 namespace content
32 {
33 class Store : public QObject
34 {
35  Q_OBJECT
36  public:
37  Q_PROPERTY(QString uri READ uri)
38 
39  Q_DECL_DEPRECATED_X("Do not create Store directly from path.")
40  Store(const QString& uri, QObject* parent = nullptr);
41 
42  Store(const Store&);
43  virtual ~Store();
44 
45  Store& operator=(const Store&);
46 
47  Q_INVOKABLE virtual Scope scope() const;
48  Q_INVOKABLE virtual const Type& type() const;
49  Q_INVOKABLE virtual const QString& uri() const;
50 
51  protected:
52  friend class Hub;
53  friend class Transfer;
54  Store(Scope scope, const Type & type, const QString& uri, QObject* parent = nullptr);
55 
56  struct Private;
57  QSharedPointer<Private> d;
58 };
59 }
60 }
61 }
62 
63 #endif // COM_LOMIRI_CONTENT_STORE_H_
QObject
com::lomiri::content::Type
Definition: type.h:37
com::lomiri::content::Hub
Definition: hub.h:41
com::lomiri::content::Store::scope
virtual Q_INVOKABLE Scope scope() const
com::lomiri::content::Store::type
virtual const Q_INVOKABLE Type & type() const
type.h
com::lomiri::content::Scope
Scope
Definition: scope.h:29
com::lomiri::content::Store
Definition: store.h:33
scope.h
com
Definition: hub.h:31
com::lomiri::content::Transfer
Definition: transfer.h:53
com::lomiri::content::Store::uri
QString uri
Definition: store.h:37
com::lomiri::content::Store::d
QSharedPointer< Private > d
Definition: store.h:56