org.opends.server.loggers
Class TextAuditLogPublisher

java.lang.Object
  extended by org.opends.server.api.AccessLogPublisher<FileBasedAccessLogPublisherCfg>
      extended by org.opends.server.loggers.TextAuditLogPublisher
All Implemented Interfaces:
ConfigurationChangeListener<FileBasedAccessLogPublisherCfg>

public class TextAuditLogPublisher
extends AccessLogPublisher<FileBasedAccessLogPublisherCfg>
implements ConfigurationChangeListener<FileBasedAccessLogPublisherCfg>

This class provides the implementation of the audit logger used by the directory server.


Constructor Summary
TextAuditLogPublisher()
           
 
Method Summary
 ConfigChangeResult applyConfigurationChange(FileBasedAccessLogPublisherCfg config)
          Applies the configuration changes to this change listener.
 void close()
          Close this publisher.
 DN getDN()
          Gets the DN of the configuration entry for this access log publisher.
 void initializeAccessLogPublisher(FileBasedAccessLogPublisherCfg config)
          Initializes this access publisher provider based on the information in the provided debug publisher configuration.
 boolean isConfigurationAcceptable(AccessLogPublisherCfg configuration, java.util.List<Message> unacceptableReasons)
          Indicates whether the provided configuration is acceptable for this access log publisher.
 boolean isConfigurationChangeAcceptable(FileBasedAccessLogPublisherCfg config, java.util.List<Message> unacceptableReasons)
          Indicates whether the proposed change to the configuration is acceptable to this change listener.
 void logAbandonRequest(AbandonOperation abandonOperation)
          Writes a message to the access logger with information about the abandon request associated with the provided abandon operation.
 void logAbandonResult(AbandonOperation abandonOperation)
          Writes a message to the access logger with information about the result of the provided abandon operation.
 void logAddRequest(AddOperation addOperation)
          Writes a message to the access logger with information about the add request associated with the provided add operation.
 void logAddResponse(AddOperation addOperation)
          Writes a message to the access logger with information about the add response associated with the provided add operation.
 void logBindRequest(BindOperation bindOperation)
          Writes a message to the access logger with information about the bind request associated with the provided bind operation.
 void logBindResponse(BindOperation bindOperation)
          Writes a message to the access logger with information about the bind response associated with the provided bind operation.
 void logCompareRequest(CompareOperation compareOperation)
          Writes a message to the access logger with information about the compare request associated with the provided compare operation.
 void logCompareResponse(CompareOperation compareOperation)
          Writes a message to the access logger with information about the compare response associated with the provided compare operation.
 void logConnect(ClientConnection clientConnection)
          Writes a message to the access logger with information about a new client connection that has been established, regardless of whether it will be immediately terminated.
 void logDeleteRequest(DeleteOperation deleteOperation)
          Writes a message to the access logger with information about the delete request associated with the provided delete operation.
 void logDeleteResponse(DeleteOperation deleteOperation)
          Writes a message to the access logger with information about the delete response associated with the provided delete operation.
 void logDisconnect(ClientConnection clientConnection, DisconnectReason disconnectReason, Message message)
          Writes a message to the access logger with information about the termination of an existing client connection.
 void logExtendedRequest(ExtendedOperation extendedOperation)
          Writes a message to the access logger with information about the extended request associated with the provided extended operation.
 void logExtendedResponse(ExtendedOperation extendedOperation)
          Writes a message to the access logger with information about the extended response associated with the provided extended operation.
 void logModifyDNRequest(ModifyDNOperation modifyDNOperation)
          Writes a message to the access logger with information about the modify DN request associated with the provided modify DN operation.
 void logModifyDNResponse(ModifyDNOperation modifyDNOperation)
          Writes a message to the access logger with information about the modify DN response associated with the provided modify DN operation.
 void logModifyRequest(ModifyOperation modifyOperation)
          Writes a message to the access logger with information about the modify request associated with the provided modify operation.
 void logModifyResponse(ModifyOperation modifyOperation)
          Writes a message to the access logger with information about the modify response associated with the provided modify operation.
 void logSearchRequest(SearchOperation searchOperation)
          Writes a message to the access logger with information about the search request associated with the provided search operation.
 void logSearchResultDone(SearchOperation searchOperation)
          Writes a message to the access logger with information about the completion of the provided search operation.
 void logSearchResultEntry(SearchOperation searchOperation, SearchResultEntry searchEntry)
          Writes a message to the access logger with information about the search result entry that matches the criteria associated with the provided search operation.
 void logSearchResultReference(SearchOperation searchOperation, SearchResultReference searchReference)
          Writes a message to the access logger with information about the search result reference returned while processing the associated search operation.
 void logUnbind(UnbindOperation unbindOperation)
          Writes a message to the access logger with information about the unbind request associated with the provided unbind operation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextAuditLogPublisher

public TextAuditLogPublisher()
Method Detail

isConfigurationAcceptable

public boolean isConfigurationAcceptable(AccessLogPublisherCfg configuration,
                                         java.util.List<Message> unacceptableReasons)
Indicates whether the provided configuration is acceptable for this access log publisher. It should be possible to call this method on an uninitialized access log publisher instance in order to determine whether the access log publisher would be able to use the provided configuration.

Note that implementations which use a subclass of the provided configuration class will likely need to cast the configuration to the appropriate subclass type.

Overrides:
isConfigurationAcceptable in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
configuration - The access log publisher configuration for which to make the determination.
unacceptableReasons - A list that may be used to hold the reasons that the provided configuration is not acceptable.
Returns:
true if the provided configuration is acceptable for this access log publisher, or false if not.

initializeAccessLogPublisher

public void initializeAccessLogPublisher(FileBasedAccessLogPublisherCfg config)
                                  throws ConfigException,
                                         InitializationException
Initializes this access publisher provider based on the information in the provided debug publisher configuration.

Specified by:
initializeAccessLogPublisher in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
config - The access publisher configuration that contains the information to use to initialize this access publisher.
Throws:
ConfigException - If an unrecoverable problem arises in the process of performing the initialization as a result of the server configuration.
InitializationException - If a problem occurs during initialization that is not related to the server configuration.

isConfigurationChangeAcceptable

public boolean isConfigurationChangeAcceptable(FileBasedAccessLogPublisherCfg config,
                                               java.util.List<Message> unacceptableReasons)
Indicates whether the proposed change to the configuration is acceptable to this change listener.

Specified by:
isConfigurationChangeAcceptable in interface ConfigurationChangeListener<FileBasedAccessLogPublisherCfg>
Parameters:
config - The new configuration containing the changes.
unacceptableReasons - A list that can be used to hold messages about why the provided configuration is not acceptable.
Returns:
Returns true if the proposed change is acceptable, or false if it is not.

applyConfigurationChange

public ConfigChangeResult applyConfigurationChange(FileBasedAccessLogPublisherCfg config)
Applies the configuration changes to this change listener.

Specified by:
applyConfigurationChange in interface ConfigurationChangeListener<FileBasedAccessLogPublisherCfg>
Parameters:
config - The new configuration containing the changes.
Returns:
Returns information about the result of changing the configuration.

close

public void close()
Close this publisher.

Specified by:
close in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>

logConnect

public void logConnect(ClientConnection clientConnection)
Writes a message to the access logger with information about a new client connection that has been established, regardless of whether it will be immediately terminated.

Specified by:
logConnect in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
clientConnection - The client connection that has been established.

logDisconnect

public void logDisconnect(ClientConnection clientConnection,
                          DisconnectReason disconnectReason,
                          Message message)
Writes a message to the access logger with information about the termination of an existing client connection.

Specified by:
logDisconnect in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
clientConnection - The client connection that has been terminated.
disconnectReason - A generic disconnect reason for the connection termination.
message - A human-readable message that can provide additional information about the disconnect.

logAbandonRequest

public void logAbandonRequest(AbandonOperation abandonOperation)
Writes a message to the access logger with information about the abandon request associated with the provided abandon operation.

Specified by:
logAbandonRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
abandonOperation - The abandon operation containing the information to use to log the abandon request.

logAbandonResult

public void logAbandonResult(AbandonOperation abandonOperation)
Writes a message to the access logger with information about the result of the provided abandon operation.

Specified by:
logAbandonResult in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
abandonOperation - The abandon operation containing the information to use to log the abandon request.

logAddRequest

public void logAddRequest(AddOperation addOperation)
Writes a message to the access logger with information about the add request associated with the provided add operation.

Specified by:
logAddRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
addOperation - The add operation containing the information to use to log the add request.

logAddResponse

public void logAddResponse(AddOperation addOperation)
Writes a message to the access logger with information about the add response associated with the provided add operation.

Specified by:
logAddResponse in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
addOperation - The add operation containing the information to use to log the add response.

logBindRequest

public void logBindRequest(BindOperation bindOperation)
Writes a message to the access logger with information about the bind request associated with the provided bind operation.

Specified by:
logBindRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
bindOperation - The bind operation containing the information to use to log the bind request.

logBindResponse

public void logBindResponse(BindOperation bindOperation)
Writes a message to the access logger with information about the bind response associated with the provided bind operation.

Specified by:
logBindResponse in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
bindOperation - The bind operation containing the information to use to log the bind response.

logCompareRequest

public void logCompareRequest(CompareOperation compareOperation)
Writes a message to the access logger with information about the compare request associated with the provided compare operation.

Specified by:
logCompareRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
compareOperation - The compare operation containing the information to use to log the compare request.

logCompareResponse

public void logCompareResponse(CompareOperation compareOperation)
Writes a message to the access logger with information about the compare response associated with the provided compare operation.

Specified by:
logCompareResponse in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
compareOperation - The compare operation containing the information to use to log the compare response.

logDeleteRequest

public void logDeleteRequest(DeleteOperation deleteOperation)
Writes a message to the access logger with information about the delete request associated with the provided delete operation.

Specified by:
logDeleteRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
deleteOperation - The delete operation containing the information to use to log the delete request.

logDeleteResponse

public void logDeleteResponse(DeleteOperation deleteOperation)
Writes a message to the access logger with information about the delete response associated with the provided delete operation.

Specified by:
logDeleteResponse in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
deleteOperation - The delete operation containing the information to use to log the delete response.

logExtendedRequest

public void logExtendedRequest(ExtendedOperation extendedOperation)
Writes a message to the access logger with information about the extended request associated with the provided extended operation.

Specified by:
logExtendedRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
extendedOperation - The extended operation containing the information to use to log the extended request.

logExtendedResponse

public void logExtendedResponse(ExtendedOperation extendedOperation)
Writes a message to the access logger with information about the extended response associated with the provided extended operation.

Specified by:
logExtendedResponse in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
extendedOperation - The extended operation containing the information to use to log the extended response.

logModifyRequest

public void logModifyRequest(ModifyOperation modifyOperation)
Writes a message to the access logger with information about the modify request associated with the provided modify operation.

Specified by:
logModifyRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
modifyOperation - The modify operation containing the information to use to log the modify request.

logModifyResponse

public void logModifyResponse(ModifyOperation modifyOperation)
Writes a message to the access logger with information about the modify response associated with the provided modify operation.

Specified by:
logModifyResponse in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
modifyOperation - The modify operation containing the information to use to log the modify response.

logModifyDNRequest

public void logModifyDNRequest(ModifyDNOperation modifyDNOperation)
Writes a message to the access logger with information about the modify DN request associated with the provided modify DN operation.

Specified by:
logModifyDNRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
modifyDNOperation - The modify DN operation containing the information to use to log the modify DN request.

logModifyDNResponse

public void logModifyDNResponse(ModifyDNOperation modifyDNOperation)
Writes a message to the access logger with information about the modify DN response associated with the provided modify DN operation.

Specified by:
logModifyDNResponse in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
modifyDNOperation - The modify DN operation containing the information to use to log the modify DN response.

logSearchRequest

public void logSearchRequest(SearchOperation searchOperation)
Writes a message to the access logger with information about the search request associated with the provided search operation.

Specified by:
logSearchRequest in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
searchOperation - The search operation containing the information to use to log the search request.

logSearchResultEntry

public void logSearchResultEntry(SearchOperation searchOperation,
                                 SearchResultEntry searchEntry)
Writes a message to the access logger with information about the search result entry that matches the criteria associated with the provided search operation.

Specified by:
logSearchResultEntry in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
searchOperation - The search operation with which the search result entry is associated.
searchEntry - The search result entry to be logged.

logSearchResultReference

public void logSearchResultReference(SearchOperation searchOperation,
                                     SearchResultReference searchReference)
Writes a message to the access logger with information about the search result reference returned while processing the associated search operation.

Specified by:
logSearchResultReference in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
searchOperation - The search operation with which the search result reference is associated.
searchReference - The search result reference to be logged.

logSearchResultDone

public void logSearchResultDone(SearchOperation searchOperation)
Writes a message to the access logger with information about the completion of the provided search operation.

Specified by:
logSearchResultDone in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
searchOperation - The search operation containing the information to use to log the search result done message.

logUnbind

public void logUnbind(UnbindOperation unbindOperation)
Writes a message to the access logger with information about the unbind request associated with the provided unbind operation.

Specified by:
logUnbind in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Parameters:
unbindOperation - The unbind operation containing the information to use to log the unbind request.

getDN

public DN getDN()
Gets the DN of the configuration entry for this access log publisher.

Specified by:
getDN in class AccessLogPublisher<FileBasedAccessLogPublisherCfg>
Returns:
The configuration entry DN.