File indexing completed on 2024-05-12 05:17:12

0001 /*
0002     SPDX-FileCopyrightText: 2009 Andras Mantia <amantia@kde.org>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "acljobbase.h"
0010 #include "job_p.h"
0011 #include "session.h"
0012 
0013 namespace KIMAP
0014 {
0015 class AclJobBasePrivate : public JobPrivate
0016 {
0017 public:
0018     AclJobBasePrivate(Session *session, const QString &name)
0019         : JobPrivate(session, name)
0020         , rightList(Acl::None)
0021         , modifier(AclJobBase::Change)
0022     {
0023     }
0024     ~AclJobBasePrivate()
0025     {
0026     }
0027 
0028     void setIdentifier(const QByteArray &identifier);
0029     [[nodiscard]] QByteArray identifier() const;
0030 
0031     [[nodiscard]] bool hasRightEnabled(Acl::Right right) const;
0032 
0033     void setRights(const QByteArray &rights);
0034     void setRights(AclJobBase::AclModifier modifier, Acl::Rights rights);
0035 
0036     QString mailBox;
0037     QByteArray id;
0038     Acl::Rights rightList;
0039     AclJobBase::AclModifier modifier;
0040 };
0041 }