00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef KOCKPITGROUP_H
00020 #define KOCKPITGROUP_H
00021
00022 #include <QVariant>
00023 #include <QString>
00024 #include <QList>
00025 #include "kockpitaddress.h"
00026 #include "kockpitunit.h"
00027 #include "kockpitbackendentry.h"
00028
00030
00036 class KockpitGroup : public QObject, public KockpitUnit, virtual public KockpitBackendEntry {
00037
00038
00039 friend class XMLMapReader;
00040
00041 Q_OBJECT
00042
00043 Q_PROPERTY(QString groupName READ getGroupName WRITE setGroupName)
00044 Q_PROPERTY(QString distName READ getDistName WRITE setDistName)
00045 Q_PROPERTY(QString display READ getDisplay WRITE setDisplay)
00046 Q_PROPERTY(QString description READ getDescription WRITE setDescription)
00047 Q_PROPERTY(QString sid READ getSid WRITE setSid)
00048 Q_PROPERTY(QString mail READ getMail WRITE setMail)
00049 Q_PROPERTY(QStringList members READ getMembers WRITE setMembers)
00050 Q_PROPERTY(QStringList membersUid READ getMembersUid WRITE setMembersUid)
00051 Q_PROPERTY(int gidNumber READ getGidNumber WRITE setGidNumber)
00052 Q_PROPERTY(int sambaGrpType READ getSambaGrpType WRITE setSambaGrpType)
00053
00054
00055 Q_PROPERTY(QString distName READ getDistName WRITE setDistName)
00056 Q_PROPERTY(QStringList objectClasses READ getObjectClasses WRITE setObjectClasses)
00057
00058
00059 public:
00060
00062
00065 KockpitGroup();
00066
00068
00071 KockpitGroup(objmode unitmode);
00072
00074
00086 KockpitGroup(const QString &groupname, const QString &display,
00087 const QString &description,
00088 const QString &sid, const QString &mail,
00089 const QString &distName, const QStringList &objectClasses,
00090 const QStringList &members, const QStringList &membersUid,
00091 int gidNumber);
00092
00094
00113 KockpitGroup(const QString &groupname, const QString &display,
00114 const QString &description,
00115 const QString &sid, const QString &mail,
00116 const QString &postalCode, const QString &officeBox,
00117 const QString &street, const QString &city, const QString &country,
00118 const QString &postalAddress, const QString &officeName,
00119 const QString &distName, const QStringList &objectClasses,
00120 const QStringList &members, const QStringList &membersUid,
00121 int gidNumber);
00122
00124 virtual ~KockpitGroup(){ }
00125
00127
00131 QString toQString() const;
00132
00134
00139 friend std::ostream& operator <<(std::ostream& output, const KockpitGroup& kgrp);
00140
00142 objtype getObjType() const;
00144 objmode getObjMode() const;
00146 QString getDistName() const;
00148 QString getGroupName() const;
00150 QString getDisplay() const;
00152 QString getDescription() const;
00154 QString getSid() const;
00156 QString getMail() const;
00158 QStringList getMembers() const;
00160 QStringList getMembersUid() const;
00162 int getGidNumber() const;
00164 int getSambaGrpType() const;
00166 KockpitAddress getAddress() const;
00167
00169 void setObjType(objtype type);
00171 void setObjMode(objmode unitmode);
00173 void setDistName(const QString &distName);
00175 void setGroupName(const QString &groupName);
00177 void setDisplay(const QString &display);
00179 void setDescription(const QString &description);
00181 void setSid(const QString &sid);
00183 void setMail(const QString &mail);
00185 void setMembers(const QStringList &members);
00187 void setMembersUid(const QStringList &membersUid);
00189 void setGidNumber(int gidNumber);
00191 void setSambaGrpType(int sambaGrpType);
00193 void setAddress(const KockpitAddress &address);
00194
00195 private:
00197 QString groupname;
00199 QString display;
00201 QString description;
00203 QString sid;
00205 QString mail;
00207 QStringList members;
00209 QStringList membersUid;
00211 int gidNumber;
00213
00218 int sambaGrpType;
00220 KockpitAddress address;
00221
00222 };
00223
00224 Q_DECLARE_METATYPE(KockpitGroup*);
00225
00226 #endif // KOCKPITGROUP_H