File indexing completed on 2024-04-28 04:37:46
0001 /* 0002 SPDX-FileCopyrightText: 2007 Andreas Pakulat <apaku@gmx.de> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "vcsevent.h" 0008 #include <QString> 0009 #include <QList> 0010 #include <QDateTime> 0011 #include <QVariant> 0012 #include <QSharedData> 0013 0014 #include "vcsrevision.h" 0015 namespace KDevelop 0016 { 0017 0018 class VcsItemEventPrivate : public QSharedData 0019 { 0020 public: 0021 QString location; 0022 QString sourceLocation; 0023 VcsRevision sourceRevision; 0024 VcsItemEvent::Actions actions; 0025 }; 0026 0027 VcsItemEvent::VcsItemEvent() 0028 : d(new VcsItemEventPrivate) 0029 { 0030 } 0031 0032 VcsItemEvent::~VcsItemEvent() = default; 0033 0034 VcsItemEvent::VcsItemEvent(const VcsItemEvent& rhs ) 0035 : d(rhs.d) 0036 { 0037 } 0038 0039 QString VcsItemEvent::repositoryLocation() const 0040 { 0041 return d->location; 0042 } 0043 0044 QString VcsItemEvent::repositoryCopySourceLocation() const 0045 { 0046 return d->sourceLocation; 0047 } 0048 0049 VcsRevision VcsItemEvent::repositoryCopySourceRevision() const 0050 { 0051 return d->sourceRevision; 0052 } 0053 0054 VcsItemEvent::Actions VcsItemEvent::actions() const 0055 { 0056 return d->actions; 0057 } 0058 0059 void VcsItemEvent::setRepositoryLocation( const QString& l ) 0060 { 0061 d->location = l; 0062 } 0063 0064 void VcsItemEvent::setRepositoryCopySourceLocation( const QString& l ) 0065 { 0066 d->sourceLocation = l; 0067 } 0068 0069 void VcsItemEvent::setRepositoryCopySourceRevision( const KDevelop::VcsRevision& rev ) 0070 { 0071 d->sourceRevision = rev; 0072 } 0073 0074 void VcsItemEvent::setActions( VcsItemEvent::Actions a ) 0075 { 0076 d->actions = a; 0077 } 0078 0079 VcsItemEvent& VcsItemEvent::operator=( const VcsItemEvent& rhs) 0080 { 0081 d = rhs.d; 0082 return *this; 0083 } 0084 0085 class VcsEventPrivate : public QSharedData 0086 { 0087 public: 0088 VcsRevision revision; 0089 QString author; 0090 QString message; 0091 QDateTime date; 0092 QList<VcsItemEvent> items; 0093 }; 0094 0095 VcsEvent::VcsEvent() 0096 : d(new VcsEventPrivate) 0097 { 0098 } 0099 0100 VcsEvent::~VcsEvent() = default; 0101 0102 VcsEvent::VcsEvent( const VcsEvent& rhs ) 0103 : d(rhs.d) 0104 { 0105 } 0106 0107 VcsRevision VcsEvent::revision() const 0108 { 0109 return d->revision; 0110 } 0111 0112 QString VcsEvent::author() const 0113 { 0114 return d->author; 0115 } 0116 0117 QDateTime VcsEvent::date() const 0118 { 0119 return d->date; 0120 } 0121 0122 QString VcsEvent::message() const 0123 { 0124 return d->message; 0125 } 0126 0127 QList<VcsItemEvent> VcsEvent::items() const 0128 { 0129 return d->items; 0130 } 0131 0132 void VcsEvent::setRevision( const VcsRevision& rev ) 0133 { 0134 d->revision = rev; 0135 } 0136 0137 void VcsEvent::setAuthor( const QString& a ) 0138 { 0139 d->author = a; 0140 } 0141 0142 void VcsEvent::setDate( const QDateTime& date ) 0143 { 0144 d->date = date; 0145 } 0146 0147 void VcsEvent::setMessage(const QString& m ) 0148 { 0149 d->message = m; 0150 } 0151 0152 void VcsEvent::setItems( const QList<VcsItemEvent>& l ) 0153 { 0154 d->items = l; 0155 } 0156 0157 void VcsEvent::addItem(const VcsItemEvent& item) 0158 { 0159 d->items.append(item); 0160 } 0161 0162 VcsEvent& VcsEvent::operator=( const VcsEvent& rhs) 0163 { 0164 d = rhs.d; 0165 return *this; 0166 } 0167 0168 0169 } 0170