code: public void auditRetrieveDocumentEvent(RFC3881EventOutcomeCodes eventOutcome,
  			String repositoryRetrieveUri,
              String userName,
  			String documentUniqueId,
  			String patientId)
  	{
  		if (!isAuditorEnabled()) {
  			return;
  		}
  		ImportEvent importEvent = new ImportEvent(false, eventOutcome, new IHETransactionEventTypeCodes.RetrieveDocument(), null);
  		importEvent.setAuditSourceId(getAuditSourceId(), getAuditEnterpriseSiteId());
  		importEvent.addSourceActiveParticipant(repositoryRetrieveUri, null, null, EventUtils.getAddressForUrl(repositoryRetrieveUri, false), false);
  		importEvent.addDestinationActiveParticipant(getSystemUserId(), getSystemAltUserId(), getSystemUserName(), getSystemNetworkId(), true);
  		if (!EventUtils.isEmptyOrNull(userName)) {
  			importEvent.addHumanRequestorActiveParticipant(userName, null, userName, (List<CodedValueType>) null);
  		}
  		if (!EventUtils.isEmptyOrNull(patientId)) {
  			importEvent.addPatientParticipantObject(patientId);
  		}
  		importEvent.addDocumentUriParticipantObject(repositoryRetrieveUri, documentUniqueId);
  		audit(importEvent);
  		
  	}
docs: Audits an ITI-17 Retrieve Document event for XDS.a Document Consumer actors.
  
  @param eventOutcome The event outcome indicator
  @param repositoryRetrieveUri The URI of the document being retrieved
  @param documentUniqueId The Document Entry Unique ID of the document being retrieved (if known)
  @param patientId The patient ID the document relates to (if known)