429. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 12/5/2017 12:06:52 PM Central Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

429.1 Files compared

# Location File Last Modified
1 IV-eHMP_CIF.zip\IMAG_Source\VISA\Java\XCAInitiatingGatewayDataSourceProvider\main\src\java\gov\va\med\imaging\ihe\xca\proxy XCAProxyUtilities.java Mon Dec 4 21:35:20 2017 UTC
2 IV-eHMP_CIF.zip\IMAG_Source\VISA\Java\XCAInitiatingGatewayDataSourceProvider\main\src\java\gov\va\med\imaging\ihe\xca\proxy XCAProxyUtilities.java Mon Dec 4 22:07:45 2017 UTC

429.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 3 154
Changed 2 4
Inserted 0 0
Removed 0 0

429.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

429.4 Active regular expressions

No regular expressions were active.

429.5 Comparison detail

  1   /**
  2    * 
  3     Package:  MAG - Vis tA Imaging
  4     WARNING:  Per VHA D irective 2 004-038, t his routin e should n ot be modi fied.
  5     Date Cre ated: May  7, 2008
  6     Site Nam e:  Washin gton OI Fi eld Office , Silver S pring, MD
  7       Developer:          
WERFEJ
  8     Descript ion: 
  9  
  10           ;;  +-------- ---------- ---------- ---------- ---------- ---------- ---------- +
  11           ;;  Property  of the US  Government .
  12           ;;  No permis sion to co py or redi stribute t his softwa re is give n.
  13           ;;  Use of un released v ersions of  this soft ware requi res the us er
  14           ;;   to execu te a writt en test ag reement wi th the Vis tA Imaging
  15           ;;   Developm ent Office  of the De partment o f Veterans  Affairs,
  16           ;;   telephon e (301) 73 4-0100.
  17           ;;
  18           ;;  The Food  and Drug A dministrat ion classi fies this  software a s
  19           ;;  a Class I I medical  device.  A s such, it  may not b e changed
  20           ;;  in any wa y.  Modifi cations to  this soft ware may r esult in a n
  21           ;;  adulterat ed medical  device un der 21CFR8 20, the us e of which
  22           ;;  is consid ered to be  a violati on of US F ederal Sta tutes.
  23           ;;  +-------- ---------- ---------- ---------- ---------- ---------- ---------- +
  24  
  25    */
  26   package go v.va.med.i maging.ihe .xca.proxy ;
  27  
  28   import jav a.net.Malf ormedURLEx ception;
  29   import jav a.net.URL;
  30   import org .apache.co mmons.http client.pro tocol.Prot ocol;
  31   import org .apache.co mmons.http client.pro tocol.Prot ocolSocket Factory;
  32   import org .apache.lo gging.log4 j.LogManag er;
  33   import org .apache.lo gging.log4 j.Logger;
  34  
  35   import gov .va.med.im aging.ihe. xca.dataso urce.confi guration.X CADataSour ceConfigur ation;
  36   import gov .va.med.im aging.prox y.ssl.Auth SSLProtoco lSocketFac tory;
  37   import gov .va.med.ne t.TLSUtili ty;
  38  
  39   /**
  40    * Common  utilities  for all Xc a data sou rces
  41    * 
  42    * @author         
WERFEJ
  43    *
  44    */
  45   public cla ss XCAProx yUtilities  
  46   {       
  47           pr ivate fina l static L ogger logg er = LogMa nager.getL ogger(XCAP roxyUtilit ies.class) ;
  48           
  49           /* *
  50            *  Configure  the Xca c ertificate  protocol  to use cer tificates  to communi cate with  remote ser ver
  51            *  @param Xc aConfigura tion The c onfigurati on for the  Xca data  source
  52            * /
  53           pu blic stati c void con figureXcaC ertificate (XCADataSo urceConfig uration xc aConfigura tion)
  54           {
  55                    try
  56                    {                         
  57                             logger .info("Con figuring X CA Certifi cate...");
  58                         URL keysto reUrl = ne w URL(xcaC onfigurati on.getKeys toreUrl()) ;       //  the keyst ore contai ning the k ey to send  as the cl ient
  59                         URL trusts toreUrl =  new URL(xc aConfigura tion.getTr uststoreUr l());   //  the keyst ore contai ning the t rusted cer tificates,  to valida te the ser ver cert a gainst
  60                                                           
  61                         ProtocolSo cketFactor y socketFa ctory = 
  62                             new Au thSSLProto colSocketF actory(key storeUrl, 
  63                                               xcaConfigu ration.get KeystorePa ssword(),  truststore Url, 
  64                                               xcaConfigu ration.get Truststore Password() );
  65                         Protocol h ttpsProtoc ol = new P rotocol(xc aConfigura tion.getTL SProtocol( ), socketF actory, xc aConfigura tion.getTL SPort());      
  66           
  67                         Protocol.r egisterPro tocol(xcaC onfigurati on.getTLSP rotocol(),  httpsProt ocol);
  68                         LogManager .getLogger (XCAProxyU tilities.c lass).info ("XCA HTTP S protocol  handler s uccessfull y register ed.");
  69                         ( new TLSU tility(Sys tem.out) ) .dumpSSLPr operties() ;
  70                    } 
  71                    catc h (Malform edURLExcep tion e)
  72                    {
  73                         LogManager .getLogger (XCAProxyU tilities.c lass).erro r(
  74                                 "E rror confi guring HTT PS client  within XCA  proxy. \n " +
  75                                 "K eystore an d/or trust store are  unavailabl e. \n" +
  76                                 "X CA functio nality wil l not be a vailable." );
  77                    }
  78           }
  79   }