ROOT logo
// @(#)root/ldap:$Id: TLDAPEntry.h 20882 2007-11-19 11:31:26Z rdm $
// Author: Evgenia Smirnova   21/09/2001

/*************************************************************************
 * For the licensing terms see $ROOTSYS/LICENSE.                         *
 * For the list of contributors see $ROOTSYS/README/CREDITS.             *
 *************************************************************************/

#ifndef ROOT_TLDAPEntry
#define ROOT_TLDAPEntry

#ifndef ROOT_TObject
#include "TObject.h"
#endif
#ifndef ROOT_TString
#include "TString.h"
#endif
#ifndef ROOT_TList
#include "TList.h"
#endif
#ifndef ROOT_CintLDAP
#include "CintLDAP.h"
#endif


class TLDAPServer;
class TLDAPAttribute;


class TLDAPEntry: public TObject {

friend class TLDAPServer;

private:
   TString         fDn;       // Distinguished name of entry
   TList          *fAttr;     // List of attributes
   mutable Int_t   fNCount;   // Index of attribute to be returned from GetAttribute()

   LDAPMod       **GetMods(Int_t op);  // Get array of LDAPMod structures of the entry

protected:
   TLDAPEntry& operator=(const TLDAPEntry&);

public:
   TLDAPEntry(const char *dn);
   TLDAPEntry(const TLDAPEntry &e);
   virtual ~TLDAPEntry();

   const char     *GetDn() const { return fDn; }
   void            SetDn(const char *dn) { fDn = dn; }
   void            AddAttribute(const TLDAPAttribute &attr);
   TLDAPAttribute *GetAttribute() const;
   TLDAPAttribute *GetAttribute(const char *name) const;
   void            DeleteAttribute(const char *name);
   Int_t           GetCount() const { return fAttr->GetSize(); }
   Bool_t          IsReferral() const;
   TList          *GetReferrals() const;
   void            Print(Option_t * = "") const;

   ClassDef(TLDAPEntry, 0) //describe one entry in LDAP
};

#endif
 TLDAPEntry.h:1
 TLDAPEntry.h:2
 TLDAPEntry.h:3
 TLDAPEntry.h:4
 TLDAPEntry.h:5
 TLDAPEntry.h:6
 TLDAPEntry.h:7
 TLDAPEntry.h:8
 TLDAPEntry.h:9
 TLDAPEntry.h:10
 TLDAPEntry.h:11
 TLDAPEntry.h:12
 TLDAPEntry.h:13
 TLDAPEntry.h:14
 TLDAPEntry.h:15
 TLDAPEntry.h:16
 TLDAPEntry.h:17
 TLDAPEntry.h:18
 TLDAPEntry.h:19
 TLDAPEntry.h:20
 TLDAPEntry.h:21
 TLDAPEntry.h:22
 TLDAPEntry.h:23
 TLDAPEntry.h:24
 TLDAPEntry.h:25
 TLDAPEntry.h:26
 TLDAPEntry.h:27
 TLDAPEntry.h:28
 TLDAPEntry.h:29
 TLDAPEntry.h:30
 TLDAPEntry.h:31
 TLDAPEntry.h:32
 TLDAPEntry.h:33
 TLDAPEntry.h:34
 TLDAPEntry.h:35
 TLDAPEntry.h:36
 TLDAPEntry.h:37
 TLDAPEntry.h:38
 TLDAPEntry.h:39
 TLDAPEntry.h:40
 TLDAPEntry.h:41
 TLDAPEntry.h:42
 TLDAPEntry.h:43
 TLDAPEntry.h:44
 TLDAPEntry.h:45
 TLDAPEntry.h:46
 TLDAPEntry.h:47
 TLDAPEntry.h:48
 TLDAPEntry.h:49
 TLDAPEntry.h:50
 TLDAPEntry.h:51
 TLDAPEntry.h:52
 TLDAPEntry.h:53
 TLDAPEntry.h:54
 TLDAPEntry.h:55
 TLDAPEntry.h:56
 TLDAPEntry.h:57
 TLDAPEntry.h:58
 TLDAPEntry.h:59
 TLDAPEntry.h:60
 TLDAPEntry.h:61
 TLDAPEntry.h:62
 TLDAPEntry.h:63