KPublicTransport

triprequest.cpp
1/*
2 SPDX-FileCopyrightText: 2025 Volker Krause <vkrause@kde.org>
3 SPDX-License-Identifier: LGPL-2.0-or-later
4*/
5
6#include "triprequest.h"
7
8#include "datatypes/datatypes_p.h"
9#include "datatypes//json_p.h"
10
11#include <KPublicTransport/Journey>
12
13#include <QJsonObject>
14
15using namespace Qt::Literals;
16
17namespace KPublicTransport {
18class TripRequestPrivate : public QSharedData {
19public:
20 JourneySection journeySection;
21 QStringList backendIds;
22 bool downloadAssets;
23};
24}
25
26using namespace KPublicTransport;
27
28KPUBLICTRANSPORT_MAKE_GADGET(TripRequest)
29KPUBLICTRANSPORT_MAKE_PROPERTY(TripRequest, JourneySection, journeySection, setJourneySection)
30KPUBLICTRANSPORT_MAKE_PROPERTY(TripRequest, QStringList, backendIds, setBackendIds)
31KPUBLICTRANSPORT_MAKE_PROPERTY(TripRequest, bool, downloadAssets, setDownloadAssets)
32
34 : d(new TripRequestPrivate)
35{
36 d->journeySection = journeySection;
37}
38
40{
41 return d->journeySection.mode() != JourneySection::Invalid;
42}
43
44QJsonObject TripRequest::toJson(const TripRequest &req)
45{
46 QJsonObject obj = Json::toJson(req);
47 obj.insert("journeySection"_L1, JourneySection::toJson(req.journeySection()));
48 return obj;
49}
50
51#include "moc_triprequest.cpp"
A segment of a journey plan.
Definition journey.h:32
static QJsonObject toJson(const JourneySection &section)
Serializes one journey section to JSON.
Definition journey.cpp:673
Request for a single trip.
Definition triprequest.h:29
bool isValid() const
Returns true if this is a valid request, that is it has enough parameters set to perform a query.
TripRequest(const JourneySection &journeySection)
Create a TripRequest for journeySection.
KPublicTransport::JourneySection journeySection
A JourneySection for which the full trip is requested.
Definition triprequest.h:32
Query operations and data types for accessing realtime public transport information from online servi...
iterator insert(QLatin1StringView key, const QJsonValue &value)
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Jan 31 2025 11:52:18 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.