1 | /* |
2 | This file is part of KDE. |
3 | |
4 | SPDX-FileCopyrightText: 2010 Sebastian Kügler <sebas@kde.org> |
5 | |
6 | SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL |
7 | */ |
8 | #ifndef ATTICA_BUILDSERVICE_H |
9 | #define ATTICA_BUILDSERVICE_H |
10 | |
11 | #include <QDate> |
12 | #include <QList> |
13 | #include <QMap> |
14 | #include <QSharedDataPointer> |
15 | #include <QStringList> |
16 | #include <QUrl> |
17 | |
18 | #include "attica_export.h" |
19 | |
20 | namespace Attica |
21 | { |
22 | |
23 | /** |
24 | * @class Target buildservice.h <Attica/BuildService> |
25 | * |
26 | * The target in a build service. |
27 | */ |
28 | struct Target { |
29 | QString id; |
30 | QString name; |
31 | }; |
32 | |
33 | /** |
34 | * @class BuildService buildservice.h <Attica/BuildService> |
35 | * |
36 | * Represents a build service. |
37 | */ |
38 | class ATTICA_EXPORT BuildService |
39 | { |
40 | public: |
41 | typedef QList<BuildService> List; |
42 | class Parser; |
43 | |
44 | BuildService(); |
45 | BuildService(const BuildService &other); |
46 | BuildService &operator=(const BuildService &other); |
47 | ~BuildService(); |
48 | |
49 | void setId(const QString &); |
50 | QString id() const; |
51 | |
52 | void setName(const QString &); |
53 | QString name() const; |
54 | |
55 | void setUrl(const QString &); |
56 | QString url() const; |
57 | |
58 | void addTarget(const Target &); |
59 | QList<Target> targets() const; |
60 | |
61 | bool isValid() const; |
62 | |
63 | private: |
64 | class Private; |
65 | QSharedDataPointer<Private> d; |
66 | }; |
67 | |
68 | } |
69 | |
70 | #endif |
71 | |