|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.alfresco.repo.audit.AuditComponentImpl
public class AuditComponentImpl
The default audit component implementation. TODO: Implement before, after and exception filtering. At the moment these filters are ignored. TODO: Respect audit internal - at the moment audit internal is fixed to false.
The V3.2 audit functionality is contained within the same component. When the newer audit implementation has been tested and approved, then older ones will be deprecated as necessary.
Constructor Summary | |
---|---|
AuditComponentImpl()
Default constructor |
Method Summary | |
---|---|
java.lang.Object |
audit(org.aopalliance.intercept.MethodInvocation mi)
Audit entry point for method interceptors. |
void |
audit(java.lang.String source,
java.lang.String description,
NodeRef key,
java.lang.Object[] args)
A simple audit entry Currently we ignore filtering here. |
java.lang.Object |
auditImpl(org.aopalliance.intercept.MethodInvocation mi,
boolean execute)
Internal audit of a method invocation |
void |
auditQuery(AuditService.AuditQueryCallback callback,
AuditQueryParameters parameters,
int maxResults)
Find audit entries using the given parameters |
void |
beforeMethodCallManualAudit(java.lang.Class clazz,
java.lang.Object target,
java.lang.String methodName,
java.lang.Object[] args)
Add an audit entry - without invoking the method invocation. |
void |
deleteAuditEntries(java.lang.String applicationName,
java.lang.Long fromTime,
java.lang.Long toTime)
Delete audit entries for the given application and time range |
void |
disableAudit(java.lang.String applicationName,
java.lang.String path)
Disable auditing (if it is not already disabled) for all paths that contain the given path. |
void |
enableAudit(java.lang.String applicationName,
java.lang.String path)
Enable auditing (if it is not already enabled) for all paths that contain the given path. |
java.util.List |
getAuditTrail(NodeRef nodeRef)
Get the audit trail for a node. |
boolean |
isAuditEnabled()
Determines whether audit is globally enabled or disabled. |
boolean |
isAuditPathEnabled(java.lang.String applicationName,
java.lang.String path)
Check if an audit path is enabled. |
boolean |
isSourcePathMapped(java.lang.String sourcePath)
Determines whether the given source path is mapped to any audit applications. |
java.util.Map |
recordAuditValues(java.lang.String rootPath,
java.util.Map values)
Create an audit entry for the given map of values. |
java.util.Map |
recordAuditValuesImpl(java.util.Map mappedValues)
|
void |
resetDisabledPaths(java.lang.String applicationName)
Remove all disabled paths i.e. |
void |
setAuditConfiguration(AuditConfiguration auditConfiguration)
Set the audit configuration. |
void |
setAuditDAO(AuditDAO auditDAO)
Set the DAO for recording auditable information when no exception occurs. |
void |
setAuditModel(AuditModel auditModel)
Set the audit model. |
void |
setAuditModelRegistry(AuditModelRegistry auditModelRegistry)
Set the registry holding the audit models |
void |
setNamespacePrefixResolver(NamespacePrefixResolver namespacePrefixResolver)
Set the namespacePrefixResolver. |
void |
setNodeService(NodeService nodeService)
Set the NodeService for path extracting. |
void |
setPropertyValueDAO(PropertyValueDAO propertyValueDAO)
Set the DAO for manipulating property values |
void |
setPublicServiceIdentifier(PublicServiceIdentifier publicServiceIdentifier)
Set the helper used to identify public services |
void |
setTransactionService(TransactionService transactionService)
Set the DAO for recording failed actions - this is done in another transaction. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AuditComponentImpl()
Method Detail |
---|
public void setAuditDAO(AuditDAO auditDAO)
public void setTransactionService(TransactionService transactionService)
public void setNodeService(NodeService nodeService)
public void setAuditConfiguration(AuditConfiguration auditConfiguration)
public void setPublicServiceIdentifier(PublicServiceIdentifier publicServiceIdentifier)
public void setAuditModel(AuditModel auditModel)
public void setNamespacePrefixResolver(NamespacePrefixResolver namespacePrefixResolver)
public java.lang.Object audit(org.aopalliance.intercept.MethodInvocation mi) throws java.lang.Throwable
AuditComponent
audit
in interface AuditComponent
java.lang.Throwable
public java.lang.Object auditImpl(org.aopalliance.intercept.MethodInvocation mi, boolean execute) throws java.lang.Throwable
mi
- -
the method to audit
java.lang.Throwable
- -
any Throwable that can be thrown by th audtied method.public void beforeMethodCallManualAudit(java.lang.Class clazz, java.lang.Object target, java.lang.String methodName, java.lang.Object[] args)
AuditComponent
beforeMethodCallManualAudit
in interface AuditComponent
public void audit(java.lang.String source, java.lang.String description, NodeRef key, java.lang.Object[] args)
audit
in interface AuditComponent
source
- -
a string that represents the applicationdescription
- -
the audit entry *key
- -
a node ref to use as the key for filtering etcargs
- -
an arbitrary list of parameterspublic java.util.List getAuditTrail(NodeRef nodeRef)
AuditComponent
getAuditTrail
in interface AuditComponent
nodeRef
- -
the node ref for which we want the audit trail
public void setAuditModelRegistry(AuditModelRegistry auditModelRegistry)
public void setPropertyValueDAO(PropertyValueDAO propertyValueDAO)
public void deleteAuditEntries(java.lang.String applicationName, java.lang.Long fromTime, java.lang.Long toTime)
deleteAuditEntries
in interface AuditComponent
applicationName
- the name of the application being logged tofromTime
- the start time of entries to remove (inclusive and optional)toTime
- the end time of entries to remove (exclusive and optional)public boolean isAuditEnabled()
isAuditEnabled
in interface AuditComponent
true
, if audit is enabledpublic boolean isSourcePathMapped(java.lang.String sourcePath)
isSourcePathMapped
in interface AuditComponent
true
if the given source path is mapped to one or more audit applicationspublic boolean isAuditPathEnabled(java.lang.String applicationName, java.lang.String path)
isAuditPathEnabled
in interface AuditComponent
applicationName
- the name of the application being logged topath
- the audit path to check
public void enableAudit(java.lang.String applicationName, java.lang.String path)
#audit(String, String, Map)
) and
not the path that the generated data may contain - although this would be similarly
enabled.
If the enabled
enableAudit
in interface AuditComponent
applicationName
- the name of the application being logged topath
- the audit path to enable auditing onpublic void disableAudit(java.lang.String applicationName, java.lang.String path)
#audit(String, String, Map)
) and
not the path that the generated data may contain - although this would be similarly
disabled.
If the path is /x/y then any data paths that start with /x/y will be stripped out before data generators and data recorders are applied. If the path represents the root path of the application, then auditing for that application is effectively disabled.
disableAudit
in interface AuditComponent
applicationName
- the name of the application being logged topath
- the audit path to enable auditing onpublic void resetDisabledPaths(java.lang.String applicationName)
enabling
or
disabling
.
resetDisabledPaths
in interface AuditComponent
applicationName
- the name of the applicationpublic java.util.Map recordAuditValues(java.lang.String rootPath, java.util.Map values)
AuditApplication.AUDIT_PATH_SEPARATOR
) - relative to the root path provided.
The root path and value keys are combined to produce a map of data keyed by full path. This
fully-pathed map is then passed through the
audit path mapper
. The result may yield data
destined for several different
audit applications
. depending on
the data extraction and generation defined in the applications, values (or derived values) may
be recorded against several audit entries (one per application represented).
The return values reflect what was actually persisted and is controlled by the data extractors
defined in the audit configuration.
A new read-write transaction is started if there are values to write that there is not a viable
transaction present.
recordAuditValues
in interface AuditComponent
rootPath
- a base path of AuditPath
key entries concatenated with the path separator
'/' (AuditApplication.AUDIT_PATH_SEPARATOR
)values
- the values to audit mapped by AuditPath
key relative to root path
(may be null)
public java.util.Map recordAuditValuesImpl(java.util.Map mappedValues)
public void auditQuery(AuditService.AuditQueryCallback callback, AuditQueryParameters parameters, int maxResults)
auditQuery
in interface AuditComponent
callback
- the data callback per entryparameters
- the parameters for the query (may not be null)maxResults
- the maximum number of results to retrieve (zero or negative to ignore)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |