source: ccr/trunk/nhin-vista/projects/NHINC/Current/Product/Production/Gateway/NhincAuditQueryEJB/src/java/gov/hhs/fha/nhinc/auditquery/AuditQueryImpl.java@ 507

Last change on this file since 507 was 507, checked in by George Lilly, 15 years ago

NHIN gateway and adaptor for use on linux with VistA EHR and RPMS

File size: 2.1 KB
Line 
1/*
2 * To change this template, choose Tools | Templates
3 * and open the template in the editor.
4 */
5package gov.hhs.fha.nhinc.auditquery;
6
7import com.services.nhinc.schema.auditmessage.FindAuditEventsResponseType;
8import com.services.nhinc.schema.auditmessage.FindAuditEventsType;
9import gov.hhs.fha.nhinc.common.nhinccommoninternalorch.FindAuditEventsRequestType;
10import gov.hhs.fha.nhinc.nhincauditlogquery.NhincAuditLogQueryPortType;
11import gov.hhs.fha.nhinc.nhincauditlogquery.NhincAuditLogQueryService;
12import gov.hhs.fha.nhinc.nhinclib.NullChecker;
13import gov.hhs.fha.nhinc.saml.extraction.SamlTokenExtractor;
14import gov.hhs.fha.nhinc.saml.extraction.SamlTokenExtractorHelper;
15import javax.xml.ws.WebServiceContext;
16import org.apache.commons.logging.Log;
17import org.apache.commons.logging.LogFactory;
18
19/**
20 *
21 * @author Jon Hoppesch
22 */
23public class AuditQueryImpl {
24
25 private static Log log = LogFactory.getLog(AuditQueryImpl.class);
26
27 public static FindAuditEventsResponseType auditQuery(FindAuditEventsType query, WebServiceContext context) {
28 log.debug("Entering AuditQueryImpl.auditQuery");
29 FindAuditEventsResponseType resp = new FindAuditEventsResponseType();
30 FindAuditEventsRequestType request = new FindAuditEventsRequestType();
31
32 request.setFindAuditEvents(query);
33 request.setAssertion(SamlTokenExtractor.GetAssertion(context));
34
35 String homeCommunityId = SamlTokenExtractorHelper.getHomeCommunityId();
36
37 if (NullChecker.isNotNullish(homeCommunityId)) {
38 NhincAuditLogQueryService service = new NhincAuditLogQueryService();
39 NhincAuditLogQueryPortType port = service.getNhincAuditLogcQueryPortTypeBindingPort();
40 ((javax.xml.ws.BindingProvider) port).getRequestContext().put(javax.xml.ws.BindingProvider.ENDPOINT_ADDRESS_PROPERTY, SamlTokenExtractorHelper.getEndpointURL(homeCommunityId, SamlTokenExtractorHelper.INTERNAL_AUDIT_QUERY));
41
42 resp = port.nhincAuditLogQuery(request);
43 }
44 else {
45 return null;
46 }
47
48 log.debug("Exiting AuditQueryImpl.auditQuery");
49 return resp;
50 }
51}
Note: See TracBrowser for help on using the repository browser.