@ThreadSafety(level=COMPLETELY_THREADSAFE) public final class AddAttributeTransformation extends java.lang.Object implements EntryTransformation
Constructor and Description |
---|
AddAttributeTransformation(Schema schema,
DN baseDN,
SearchScope scope,
Filter filter,
Attribute attributeToAdd,
boolean onlyIfMissing)
Creates a new add attribute transformation with the provided information.
|
Modifier and Type | Method and Description |
---|---|
Entry |
transformEntry(Entry e)
Applies an appropriate transformation to the provided entry.
|
Entry |
translate(Entry original,
long firstLineNumber)
Applies some special transformation or filtering to the original Entry.
|
Entry |
translateEntryToWrite(Entry original)
Applies some special transformation or filtering to the original Entry.
|
public AddAttributeTransformation(@Nullable Schema schema, @Nullable DN baseDN, @Nullable SearchScope scope, @Nullable Filter filter, @NotNull Attribute attributeToAdd, boolean onlyIfMissing)
schema
- The schema to use in processing. It may be
null
if a default standard schema should be
used.baseDN
- The base DN to use to identify which entries to
update. If this is null
, it will be
assumed to be the null DN.scope
- The scope to use to identify which entries to
update. If this is null
, it will be
assumed to be SearchScope.SUB
.filter
- An optional filter to use to identify which entries
to update. If this is null
, then a default
LDAP true filter (which will match any entry) will
be used.attributeToAdd
- The attribute to add to entries that match the
criteria and do not already contain any values for
the specified attribute. It must not be
null
.onlyIfMissing
- Indicates whether the attribute should only be
added to entries that do not already contain it.
If this is false
and an entry that matches
the base, scope, and filter criteria and already
has one or more values for the target attribute
will be updated to include the new values in
addition to the existing values.@Nullable public Entry transformEntry(@NotNull Entry e)
transformEntry
in interface EntryTransformation
e
- The entry to transform.null
if the entry should be suppressed.@Nullable public Entry translate(@NotNull Entry original, long firstLineNumber)
translate
in interface LDIFReaderEntryTranslator
original
- The original Entry that was read and parsed from
the input file.firstLineNumber
- The first line number of the LDIF record
corresponding to the read Entry. This is most
useful when throwing an LDIFException.LDIFReader.readEntry()
. This can be the original parameter
Entry, a newly constructed Entry, or null
to signal that
the provided Entry should be skipped.@Nullable public Entry translateEntryToWrite(@NotNull Entry original)
translateEntryToWrite
in interface LDIFWriterEntryTranslator
original
- The original Entry that was to be written.null
to
signal that this Entry should not be written. Note, however, that
if the original entry provided as a parameter is altered, then
the change will be visible to anything that references that entry.
If you are not sure about whether changes to the original entry
are acceptable, it is recommended that you use the
duplicate()
method to create a copy of the original and
make the necessary changes to that duplicate.