KLDAP Library
ldapcontrol.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KLDAP_LDAPCONTROL_H
00022 #define KLDAP_LDAPCONTROL_H
00023
00024 #include <QtCore/QString>
00025 #include <QtCore/QList>
00026 #include <QtCore/QSharedDataPointer>
00027
00028 #include "kldap_export.h"
00029
00030 namespace KLDAP {
00031
00032 class LdapControl;
00033 typedef QList<LdapControl> LdapControls;
00034
00039 class KLDAP_EXPORT LdapControl
00040 {
00041 public:
00045 LdapControl();
00049 LdapControl( QString &oid, QByteArray &value, bool critical = false );
00050
00051 LdapControl( const LdapControl &that );
00052 LdapControl &operator= ( const LdapControl &that );
00056 virtual ~LdapControl();
00060 void setControl( const QString &oid, const QByteArray &value,
00061 bool critical = false );
00065 void setOid( const QString &oid );
00069 void setValue( const QByteArray &value );
00073 void setCritical( bool critical );
00077 QString oid() const;
00081 QByteArray value() const;
00085 bool critical() const;
00086
00093 int parsePageControl( QByteArray &cookie ) const;
00097 static LdapControl createPageControl( int pagesize, const QByteArray &cookie = QByteArray() );
00098
00105 static void insert( LdapControls &list, const LdapControl &ctrl );
00106
00107 private:
00108 class Private;
00109 QSharedDataPointer<Private> d;
00110 };
00111
00112 }
00113
00114 #endif