.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings. \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
. ds -- \(*W-
. ds PI pi
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
. ds L" ""
. ds R" ""
. ds C` ""
. ds C' ""
'br\}
.el\{\
. ds -- \|\(em\|
. ds PI \(*p
. ds L" ``
. ds R" ''
. ds C`
. ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{\
. if \nF \{\
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
. if !\nF==2 \{\
. nr % 0
. nr F 2
. \}
. \}
.\}
.rr rF
.\" ========================================================================
.\"
.IX Title "Net::LDAP::Control::EntryChange 3"
.TH Net::LDAP::Control::EntryChange 3 "2021-01-03" "perl v5.26.3" "User Contributed Perl Documentation"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
Net::LDAP::Control::EntryChange \- LDAPv3 Entry Change Notification control object
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
.Vb 3
\& use Net::LDAP;
\& use Net::LDAP::Control::PersistentSearch;
\& use Net::LDAP::Constant qw(LDAP_CONTROL_ENTRYCHANGE);
\&
\& $ldap = Net::LDAP\->new( "ldap.mydomain.eg" );
\&
\& $persist = Net::LDAP::Control::PersistentSearch\->new( changeTypes => 15,
\& changesOnly => 1,
\& returnECs => 1 );
\&
\& $srch = $ldap\->search( base => "cn=People,dc=mydomain,dc=eg",
\& filter => "(objectClass=person)",
\& callback => \e&process_entry, # call for each entry
\& control => [ $persist ] );
\&
\& die "error: ",$srch\->code(),": ",$srch\->error() if ($srch\->code());
\&
\& sub process_entry {
\& my $message = shift;
\& my $entry = shift;
\& my ($control) = $message\->control(LDAP_CONTROL_ENTRYCHANGE);
\&
\& print $control\->changeType()."\et".$entry\->dn()."\en";
\& }
.Ve
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
\&\f(CW\*(C`Net::LDAP::Control::EntryChange\*(C'\fR provides an interface for the creation
and manipulation of objects that represent the \f(CW\*(C`EntryChangeNotification\*(C'\fR
control as described by draft\-smith\-psearch\-ldap\-03.txt.
.SH "CONSTRUCTOR ARGUMENTS"
.IX Header "CONSTRUCTOR ARGUMENTS"
In addition to the constructor arguments described in
Net::LDAP::Control the following are provided.
.IP "changeType" 4
.IX Item "changeType"
An integer value telling the type of \s-1LDAP\s0 operation that the entry
has undergone.
It is one of the following values (which represent the \s-1LDAP\s0
operations indicated next to them):
.RS 4
.IP "1 = add" 4
.IX Item "1 = add"
.PD 0
.IP "2 = delete" 4
.IX Item "2 = delete"
.IP "4 = modify" 4
.IX Item "4 = modify"
.IP "8 = modDN" 4
.IX Item "8 = modDN"
.RE
.RS 4
.RE
.IP "previousDN" 4
.IX Item "previousDN"
.PD
When changeType is 8 (for modDN) this parameter tells the entry's \s-1DN\s0
before the modDN operation.
In all other cases this value is not defined.
.IP "changeNumber" 4
.IX Item "changeNumber"
This is the change number according to <draft\-good\-ldap\-changelog\-03.txt>
assigned by a server for the change. If a server supports an \s-1LDAP\s0
Change Log it should include this field.
.PP
Usually you do not need to create a \f(CW\*(C`Net::LDAP::Control::EntryChange\*(C'\fR
control yourself because it is provided by the server in response to
an option with the \f(CW\*(C`Net::LDAP::Control::PersistentSearch\*(C'\fR control.
.SH "METHODS"
.IX Header "METHODS"
As with Net::LDAP::Control each constructor argument
described above is also available as a method on the object which will
return the current value for the attribute if called without an argument,
and set a new value for the attribute if called with an argument.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
Net::LDAP,
Net::LDAP::Control,
Net::LDAP::Control::PersistentSearch
.SH "AUTHOR"
.IX Header "AUTHOR"
Peter Marschall <peter@adpm.de>, based on Net::LDAP::Control::Page
from Graham Barr <gbarr@pobox.com> and the preparatory work
of Don Miller <donm@uidaho.edu>.
.PP
Please report any bugs, or post any suggestions, to the perl-ldap
mailing list <perl\-ldap@perl.org>
.SH "COPYRIGHT"
.IX Header "COPYRIGHT"
Copyright (c) 2004 Peter Marschall. All rights reserved. This program is
free software; you can redistribute it and/or modify it under the same
terms as Perl itself.