9. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 6/5/2018 10:24:07 AM Central Daylight 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.

9.1 Files compared

# Location File Last Modified
1 patch_205_build_9.zip\Java\AwivClientWebApp\main\src\java\gov\va\med\imaging\awiv\server UserServiceImpl.java Wed May 30 14:35:27 2018 UTC
2 patch_205_build_9.zip\Java\AwivClientWebApp\main\src\java\gov\va\med\imaging\awiv\server UserServiceImpl.java Fri Jun 1 16:59:47 2018 UTC

9.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 2 240
Changed 1 2
Inserted 0 0
Removed 0 0

9.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

9.4 Active regular expressions

No regular expressions were active.

9.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: 
  6     Site Nam e:  Washin gton OI Fi eld Office , Silver S pring, MD
  7       Developer:     PI I
  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.awi v.server;
  27  
  28   import gov .va.med.Ro utingToken ;
  29   import gov .va.med.ex ceptions.R outingToke nFormatExc eption;
  30   import gov .va.med.im aging.arti factsource .ResolvedA rtifactSou rce;
  31   import gov .va.med.im aging.awiv .AWIVClien tContext;
  32   import gov .va.med.im aging.awiv .AWIVClien tContextHo lder;
  33   import gov .va.med.im aging.awiv .AWIVClien tRouter;
  34   import gov .va.med.im aging.awiv .business. AwivSite;
  35   import gov .va.med.im aging.awiv .business. AwivUserIn formation;
  36   import gov .va.med.im aging.awiv .client.Us erService;
  37   import gov .va.med.im aging.awiv .client.ui .widgets.A wivConstan ts;
  38   import gov .va.med.im aging.awiv .configura tion.AwivC lientConfi guration;
  39   import gov .va.med.im aging.awiv .exception s.AwivConn ectionExce ption;
  40   import gov .va.med.im aging.awiv .exception s.AwivMeth odExceptio n;
  41   import gov .va.med.im aging.awiv .exception s.AwivUser NotLoggedI nException ;
  42   import gov .va.med.im aging.awiv .server.tr anslator.A wivClientT ranslator;
  43   import gov .va.med.im aging.awiv .web.UserD etails;
  44   import gov .va.med.im aging.core .interface s.exceptio ns.Connect ionExcepti on;
  45   import gov .va.med.im aging.core .interface s.exceptio ns.MethodE xception;
  46   import gov .va.med.im aging.exch ange.Routi ngTokenHel per;
  47  
  48   import jav a.util.Col lections;
  49   import jav a.util.Lis t;
  50  
  51   public cla ss UserSer viceImpl 
  52   extends Ab stractAwiv ClientRemo teServiceS ervlet 
  53   implements  UserServi ce 
  54   {
  55           pr ivate stat ic final l ong serial VersionUID  = 3268489 9460718551 78L;
  56  
  57           @O verride
  58           pu blic AwivU serInforma tion getUs erInformat ion(String  transacti onId)
  59           th rows AwivC onnectionE xception,  AwivMethod Exception,  AwivUserN otLoggedIn Exception
  60           {
  61                    User Details us erDetails  = getUserD etails();
  62                    if(! userDetail s.isInitia lized())
  63                    {
  64                             throw  new AwivUs erNotLogge dInExcepti on("User i s not full y authenti cated");
  65                    }
  66                    List <String> k eys = null ;
  67                    try
  68                    {
  69                             String  siteNumbe r = getUse rSiteNumbe r();
  70                             // if  this is a  claims use r, don't b other gett ing user k eys (they  don't have  any)
  71                             if(!Aw ivConstant s.claimsSe rverSiteNu mber.equal s(siteNumb er))
  72                             {
  73                                      AWIVClie ntRouter r outer = AW IVClientCo ntext.getR outer();                                   
  74                                      setTrans actionCont extPropert ies(transa ctionId, " getUserInf ormation") ;
  75                                      RoutingT oken routi ngToken =  RoutingTok enHelper.c reateSiteA ppropriate RoutingTok en(siteNum ber);
  76                                      keys = r outer.getU serKeysCom mand(routi ngToken);
  77                             }                         
  78                    }        
  79                    catc h(RoutingT okenFormat Exception  rtfX)
  80                    {
  81                             throw  new AwivMe thodExcept ion(rtfX);
  82                    }
  83                    catc h(Connecti onExceptio n cX)
  84                    {
  85                             throw  new AwivCo nnectionEx ception(cX );
  86                    }
  87                    catc h(MethodEx ception mX )
  88                    {
  89                             getLog ger().warn (mX.getMes sage());
  90                    }
  91                    Stri ng version  = AWIVCli entContext Holder.get AwivClient Context(). getApplica tionConfig uration(). getVixSoft wareVersio n();
  92                    Awiv ClientConf iguration  configurat ion = Awiv ClientConf iguration. getConfigu ration();
  93                    retu rn new Awi vUserInfor mation(use rDetails.g etDuz(), u serDetails .getUserNa me(), 
  94                                      userDeta ils.getSsn (), userDe tails.getS iteName(),  userDetai ls.getSite Number(), 
  95                                      userDeta ils.getTok en(), 
  96                                      (keys ==  null ? ne w String [ 0] : keys. toArray(ne w String[k eys.size() ])),
  97                                      AwivClie ntTranslat or.transla te(configu ration, ve rsion));
  98           }
  99  
  100           @O verride
  101           pu blic AwivS ite[] getP atientLook upSites(St ring trans actionId)
  102           th rows AwivC onnectionE xception,  AwivMethod Exception
  103           {
  104                    try
  105                    {
  106                             AWIVCl ientRouter  router =  AWIVClient Context.ge tRouter();
  107                             setTra nsactionCo ntextPrope rties(tran sactionId,  "getPatie ntLookupSi tes");
  108                             List<R esolvedArt ifactSourc e> artifac tSources =  router.ge tResolvedA rtifactSou rceList();
  109                             Collec tions.sort (artifactS ources, ne w Resolved ArtifactSo urceCompar ator());
  110                             return  AwivClien tTranslato r.translat ePatientSe lectionSit es(artifac tSources);
  111                    }
  112                    catc h(Connecti onExceptio n cX)
  113                    {
  114                             throw  new AwivCo nnectionEx ception(cX );
  115                    }
  116                    catc h(MethodEx ception mX )
  117                    {
  118                             throw  new AwivMe thodExcept ion(mX);
  119                    }
  120           }        
  121   }