385. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 6/9/2017 3:45:53 PM Eastern 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.

385.1 Files compared

# Location File Last Modified
1 eHealth_Exch (eHealth Exchange Enhancements) Build 3 docs & code_May_2017.zip\eHXE_Build3_2017-05-04.zip\NHIN_adapter\AdapterLIB\src\main\java\gov\va\med\nhin\adapter\datamanager\adapters JoinDataAdapter.java Wed Apr 5 01:13:54 2017 UTC
2 eHealth_Exch (eHealth Exchange Enhancements) Build 3 docs & code_May_2017.zip\eHXE_Build3_2017-05-04.zip\NHIN_adapter\AdapterLIB\src\main\java\gov\va\med\nhin\adapter\datamanager\adapters JoinDataAdapter.java Thu Jun 1 21:51:48 2017 UTC

385.2 Comparison summary

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

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

385.4 Active regular expressions

No regular expressions were active.

385.5 Comparison detail

  1   package go v.va.med.n hin.adapte r.datamana ger.adapte rs;
  2  
  3   import jav a.util.Arr ayList;
  4   import jav a.util.Has hMap;
  5   import jav a.util.Lis t;
  6   import jav a.util.Map ;
  7  
  8   import org .apache.co mmons.bean utils.Prop ertyUtils;
  9  
  10   import gov .va.med.nh in.adapter .datamanag er.DataAda pter;
  11   import gov .va.med.nh in.adapter .datamanag er.DataMan ager;
  12   import gov .va.med.nh in.adapter .datamanag er.DataQue ry;
  13  
  14   /**
  15    *
  16    * @author  
D NS    
  17    */
  18   public cla ss JoinDat aAdapter i mplements  DataAdapte r<Map<?,?> >
  19   {
  20           @O verride
  21           pu blic List< Map<?, ?>>  getData(D ataQuery d ataQuery)
  22           {
  23                    List <Map<?,?>>  ret = new  ArrayList <>();
  24                    Stri ng leftQue ryName = d ataQuery.g etProperty ("leftQuer yName");
  25                    Stri ng rightQu eryName =  dataQuery. getPropert y("rightQu eryName");
  26                    Stri ng leftJoi nColumn =  dataQuery. getPropert y("leftJoi nColumn");
  27                    Stri ng rightJo inColumn =  dataQuery .getProper ty("rightJ oinColumn" );
  28                    Data Manager da taManager  = dataQuer y.getDataM anager();
  29  
  30                    Data Query left Query = da taManager. getQuery(l eftQueryNa me);
  31                    for( String par ameterName  : dataQue ry.getPara meterBySou rceNames() )
  32                    {
  33                             if(par ameterName .startsWit h("left.")  && leftQu ery.isPara meter(para meterName. substring( 5)))
  34                             {
  35                                      leftQuer y.setParam eter(param eterName.s ubstring(5 ), dataQue ry.getPara meterBySou rce(parame terName));
  36                             }
  37                    }
  38  
  39                    // F IXME: left Query does n't return  a checked  List, so  we don't k now it's f ull of Map s.
  40                    List <Map> left Results =  leftQuery. getResults ();
  41  
  42                    for( Map leftRe sult : lef tResults)
  43                    {
  44                             Object  leftJoinV alue = get Value(left Result, le ftJoinColu mn);
  45                             DataQu ery rightQ uery = dat aManager.g etQuery(ri ghtQueryNa me);
  46                             if(lef tJoinValue  != null & & rightQue ry.isParam eter(right JoinColumn ))
  47                             {
  48                                      rightQue ry.setPara meter(righ tJoinColum n, leftJoi nValue);
  49                                      for(Stri ng paramet erName : d ataQuery.g etParamete rBySourceN ames())
  50                                      {
  51                                               if(paramet erName.sta rtsWith("r ight.") &&  rightQuer y.isParame ter(parame terName.su bstring(6) ))
  52                                               {
  53                                                       ri ghtQuery.s etParamete r(paramete rName.subs tring(6),  dataQuery. getParamet erBySource (parameter Name));
  54                                               }
  55                                      }
  56                                      List<Map > rightRes ults = rig htQuery.ge tResults() ;
  57                                      for(Map  rightResul t : rightR esults)
  58                                      {
  59                                               Map retRes ult = new  HashMap();
  60                                               retResult. putAll(lef tResult);
  61                                               retResult. putAll(rig htResult);
  62                                               ret.add(re tResult);
  63                                      }
  64                             }
  65                    }
  66  
  67                    retu rn ret;
  68           }
  69  
  70           pr ivate Obje ct getValu e(Object b ean, Strin g property )
  71           {
  72                    Obje ct ret;
  73  
  74                    try
  75                    {
  76                             ret =  PropertyUt ils.getPro perty(bean , property );
  77                    }
  78                    // C CR 179231
  79                    catc h(Exceptio n e)
  80                    {
  81                             return  new DataA dapterExce ption("Exc eption occ urred duri ng the dat a retrieva l", e);
  82                    }
  83  
  84                    retu rn ret;
  85           }
  86   }