public class AuditLogger
extends org.dcm4che3.net.DeviceExtension
| Modifier and Type | Class and Description |
|---|---|
static class |
AuditLogger.Facility |
static class |
AuditLogger.SendStatus |
static class |
AuditLogger.Severity |
| Modifier and Type | Field and Description |
|---|---|
static String |
MESSAGE_ID |
| Constructor and Description |
|---|
AuditLogger() |
| Modifier and Type | Method and Description |
|---|---|
void |
addAuditSuppressCriteria(AuditSuppressCriteria criteria) |
void |
addConnection(org.dcm4che3.net.Connection conn) |
void |
clearAllAuditSuppressCriteria() |
void |
closeActiveConnection() |
org.dcm4che3.audit.ActiveParticipant |
createActiveParticipant(boolean requestor,
org.dcm4che3.audit.AuditMessages.RoleIDCode... roleIDs) |
org.dcm4che3.audit.ActiveParticipant |
createActiveParticipant(boolean requestor,
String userID,
String alternativeUserID,
String userName,
String hostName,
org.dcm4che3.audit.AuditMessages.RoleIDCode... roleIDs) |
org.dcm4che3.audit.AuditSourceIdentification |
createAuditSourceIdentification() |
AuditSuppressCriteria |
findAuditSuppressCriteriaByCommonName(String cn) |
String |
getApplicationName() |
String |
getAuditEnterpriseSiteID() |
org.dcm4che3.net.Device |
getAuditRecordRepositoryDevice() |
String |
getAuditRecordRepositoryDeviceName() |
String |
getAuditSourceID() |
String[] |
getAuditSourceTypeCodes() |
List<AuditSuppressCriteria> |
getAuditSuppressCriteriaList() |
List<org.dcm4che3.net.Connection> |
getConnections() |
static AuditLogger |
getDefaultLogger() |
String |
getEncoding() |
AuditLogger.Facility |
getFacility() |
Boolean |
getInstalled() |
Exception |
getLastException() |
long |
getLastSentTimeInMillis() |
AuditLogger.Severity |
getMajorFailureSeverity() |
String |
getMessageID() |
AuditLogger.Severity |
getMinorFailureSeverity() |
int |
getNumberOfQueuedMessages() |
File[] |
getQueuedMessages() |
int |
getRetryInterval()
Get interval in seconds to retry to sent messages which could not be
sent to the record repository or
0 if messages failed to sent
are not spooled for later re-send. |
String |
getSchemaURI() |
AuditLogger.Severity |
getSeriousFailureSeverity() |
File |
getSpoolDirectory()
Get spool directory into which messages failed to sent to the record
repository are stored for later re-send.
|
String |
getSpoolDirectoryURI() |
String |
getSpoolFileNameSuffix() |
String |
getSpoolNameFilePrefix() |
AuditLogger.Severity |
getSuccessSeverity() |
boolean |
isAuditMessageSuppressed(org.dcm4che3.audit.AuditMessage msg)
Test if the Event Identification and the Active ActiveParticipant of an
Audit Message matches one of the
AuditSuppressCriteria |
boolean |
isFormatXML() |
boolean |
isIncludeBOM() |
Boolean |
isIncludeInstanceUID() |
boolean |
isInstalled() |
boolean |
isTimestampInUTC() |
static InetAddress |
localHost() |
static String |
processID() |
void |
reconfigure(org.dcm4che3.net.DeviceExtension from) |
boolean |
removeConnection(org.dcm4che3.net.Connection conn) |
void |
sendQueuedMessages() |
void |
setApplicationName(String applicationName) |
void |
setAuditEnterpriseSiteID(String auditEnterpriseSiteID) |
void |
setAuditRecordRepositoryDevice(org.dcm4che3.net.Device arrDevice) |
void |
setAuditSourceID(String auditSourceID) |
void |
setAuditSourceTypeCodes(String... auditSourceTypeCode) |
void |
setAuditSuppressCriteriaList(List<AuditSuppressCriteria> filters) |
static void |
setDefaultLogger(AuditLogger defaultLogger) |
void |
setEncoding(String encoding) |
void |
setFacility(AuditLogger.Facility facility) |
void |
setFormatXML(boolean formatXML) |
void |
setIncludeBOM(boolean includeBOM) |
void |
setIncludeInstanceUID(Boolean includeInstanceUID) |
void |
setInstalled(Boolean installed) |
void |
setMajorFailureSeverity(AuditLogger.Severity severity) |
void |
setMessageID(String messageID) |
void |
setMinorFailureSeverity(AuditLogger.Severity severity) |
void |
setRetryInterval(int interval)
Set interval in seconds to retry to sent messages which could not be
sent to the record repository or
0 if messages failed to sent
are not spooled for later re-send. |
void |
setSchemaURI(String schemaURI) |
void |
setSeriousFailureSeverity(AuditLogger.Severity severity) |
void |
setSpoolDirectory(File directory)
Set spool directory into which messages failed sent to the record
repository are stored for later re-send.
|
void |
setSpoolDirectoryURI(String uri) |
void |
setSpoolFileNamePrefix(String prefix) |
void |
setSpoolFileNameSuffix(String suffix) |
void |
setSuccessSeverity(AuditLogger.Severity severity) |
void |
setTimestampInUTC(boolean timestampInUTC) |
Calendar |
timeStamp() |
void |
verifyNotUsed(org.dcm4che3.net.Connection conn) |
void |
waitForNoQueuedMessages(long timeout) |
AuditLogger.SendStatus |
write(Calendar timeStamp,
AuditLogger.Severity severity,
byte[] data,
int off,
int len) |
AuditLogger.SendStatus |
write(Calendar timeStamp,
org.dcm4che3.audit.AuditMessage msg)
Send Audit Message by Syslog Protocol to Audit Record Repository, if the
message does not match any configured
AuditSuppressCriteria. |
public static final String MESSAGE_ID
public final org.dcm4che3.net.Device getAuditRecordRepositoryDevice()
public String getAuditRecordRepositoryDeviceName()
public void setAuditRecordRepositoryDevice(org.dcm4che3.net.Device arrDevice)
public final AuditLogger.Facility getFacility()
public final void setFacility(AuditLogger.Facility facility)
public final AuditLogger.Severity getSuccessSeverity()
public final void setSuccessSeverity(AuditLogger.Severity severity)
public final AuditLogger.Severity getMinorFailureSeverity()
public final void setMinorFailureSeverity(AuditLogger.Severity severity)
public final AuditLogger.Severity getSeriousFailureSeverity()
public final void setSeriousFailureSeverity(AuditLogger.Severity severity)
public final AuditLogger.Severity getMajorFailureSeverity()
public final void setMajorFailureSeverity(AuditLogger.Severity severity)
public final String getApplicationName()
public final void setApplicationName(String applicationName)
public final String getAuditSourceID()
public final void setAuditSourceID(String auditSourceID)
public final String getAuditEnterpriseSiteID()
public final void setAuditEnterpriseSiteID(String auditEnterpriseSiteID)
public String[] getAuditSourceTypeCodes()
public void setAuditSourceTypeCodes(String... auditSourceTypeCode)
public org.dcm4che3.audit.ActiveParticipant createActiveParticipant(boolean requestor,
org.dcm4che3.audit.AuditMessages.RoleIDCode... roleIDs)
public org.dcm4che3.audit.ActiveParticipant createActiveParticipant(boolean requestor,
String userID,
String alternativeUserID,
String userName,
String hostName,
org.dcm4che3.audit.AuditMessages.RoleIDCode... roleIDs)
public org.dcm4che3.audit.AuditSourceIdentification createAuditSourceIdentification()
public final String getMessageID()
public final void setMessageID(String messageID)
public final String getEncoding()
public final void setEncoding(String encoding)
public final String getSchemaURI()
public final void setSchemaURI(String schemaURI)
public final boolean isTimestampInUTC()
public final void setTimestampInUTC(boolean timestampInUTC)
public final boolean isIncludeBOM()
public final void setIncludeBOM(boolean includeBOM)
public final boolean isFormatXML()
public final void setFormatXML(boolean formatXML)
public boolean isInstalled()
public final Boolean getInstalled()
public void setInstalled(Boolean installed)
public Boolean isIncludeInstanceUID()
public void setIncludeInstanceUID(Boolean includeInstanceUID)
public File getSpoolDirectory()
null if the default temporary-file directory is to
be usedpublic void setSpoolDirectory(File directory)
directory - The directory in which the messages failed to sent are
stored, or null if the default temporary-file
directory is to be usedpublic String getSpoolDirectoryURI()
public void setSpoolDirectoryURI(String uri)
public String getSpoolNameFilePrefix()
public void setSpoolFileNamePrefix(String prefix)
public String getSpoolFileNameSuffix()
public void setSpoolFileNameSuffix(String suffix)
public int getRetryInterval()
0 if messages failed to sent
are not spooled for later re-send.0write(Calendar, AuditMessage)public void setRetryInterval(int interval)
0 if messages failed to sent
are not spooled for later re-send.interval - retry interval in seconds or 0write(Calendar, AuditMessage)public void addConnection(org.dcm4che3.net.Connection conn)
public void verifyNotUsed(org.dcm4che3.net.Connection conn)
verifyNotUsed in class org.dcm4che3.net.DeviceExtensionpublic boolean removeConnection(org.dcm4che3.net.Connection conn)
public List<org.dcm4che3.net.Connection> getConnections()
public List<AuditSuppressCriteria> getAuditSuppressCriteriaList()
public AuditSuppressCriteria findAuditSuppressCriteriaByCommonName(String cn)
public void setAuditSuppressCriteriaList(List<AuditSuppressCriteria> filters)
public void addAuditSuppressCriteria(AuditSuppressCriteria criteria)
public void clearAllAuditSuppressCriteria()
public boolean isAuditMessageSuppressed(org.dcm4che3.audit.AuditMessage msg)
AuditSuppressCriteriamsg - Audit Message to testtrue the specified audit message will be suppressed;
otherwise falsepublic void reconfigure(org.dcm4che3.net.DeviceExtension from)
reconfigure in class org.dcm4che3.net.DeviceExtensionpublic Calendar timeStamp()
public AuditLogger.SendStatus write(Calendar timeStamp, org.dcm4che3.audit.AuditMessage msg) throws org.dcm4che3.net.IncompatibleConnectionException, GeneralSecurityException, IOException
AuditSuppressCriteria. If
an I/O error occurs sending the message to the AuditRecordRepository
and if a RetryInterval) is configured, the message will be spooled
into the configured {@code SpoolDirectory} for later re-send and the
method returns {@code false}. If no {@code RetryInterval} is configured,
the method throws an {@code IOException) if an I/O error occurs sending
the message.
Attention: sending via UDP without getting an I/O error does not ensure
that the Audit Record Repository actually received the message!timeStamp - included in Syslog Headermsg - Audit MessageSendStatus.SUPPRESSED if the message was suppressed;
SendStatus.SENT if the message was successfully emitted;
SendStatus.QUEUED if the message was spooled for later re-sendIllegalStateException - if there is no AuditRecordRepository associated with
this AuditLoggerorg.dcm4che3.net.IncompatibleConnectionException - if no Connection) of this {@code AuditLogger} is compatible
with any {@code Connection) of the associated {@code AuditRecordRepository}GeneralSecurityException - if the SSLContext could not get intialized from configured
private key and public certificatesIOException - if an I/O error occurs sending the message to the AuditRecordRepository
or on spooling the message to the file systempublic AuditLogger.SendStatus write(Calendar timeStamp, AuditLogger.Severity severity, byte[] data, int off, int len) throws org.dcm4che3.net.IncompatibleConnectionException, GeneralSecurityException, IOException
org.dcm4che3.net.IncompatibleConnectionExceptionGeneralSecurityExceptionIOExceptionpublic void sendQueuedMessages()
public Exception getLastException()
public long getLastSentTimeInMillis()
public int getNumberOfQueuedMessages()
public File[] getQueuedMessages()
public void waitForNoQueuedMessages(long timeout)
throws InterruptedException
InterruptedExceptionpublic void closeActiveConnection()
public static String processID()
public static InetAddress localHost()
public static AuditLogger getDefaultLogger()
public static void setDefaultLogger(AuditLogger defaultLogger)
Copyright © 2014 dcm4che.org. All rights reserved.