4299. EPMO Open Source Coordination Office Redaction File Detail Report

Produced by Araxis Merge on 6/9/2017 3:51:26 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.

4299.1 Files compared

# Location File Last Modified
1 Fri Jun 9 19:51:26 2017 UTC
2 eHealth_Exch (eHealth Exchange Enhancements) Build 3 docs & code_May_2017.zip\VAP_CIF_CODE0502.zip\VAP_CIF_CODE0502\VAP_CIF_CODE0502\nvap-web\src\main\java\gov\va\nvap\web\patient PatientSearch.java Fri Apr 21 20:03:30 2017 UTC

4299.2 Comparison summary

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

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

4299.4 Active regular expressions

No regular expressions were active.

4299.5 Comparison detail

        1   package go v.va.nvap. web.patien t;
        2  
        3   import gov .va.nvap.s ervice.pdq .PatientMa tchQuery;
        4   import gov .va.nvap.s ervice.pdq .PatientMa tchRespons e;
        5   import gov .va.nvap.s ervice.pdq .PatientPr ofile;
        6   import gov .va.nvap.s ervice.pdq .PdqExcept ion;
        7   import gov .va.nvap.s ervice.pdq .PdqServic e;
        8   import jav a.io.IOExc eption;
        9   import jav a.util.Lis t;
        10   import jav ax.ejb.EJB ;
        11   import jav ax.servlet .ServletEx ception;
        12   import jav ax.servlet .http.Http ServletReq uest;
        13   import jav ax.servlet .http.Http ServletRes ponse;
        14   import jav ax.servlet .http.Http Session;
        15  
        16   /**
        17    * Calls t he authori zation ser vice to se arch for a  patient.
        18    * 
        19    * @author  Asha Amri traj
        20    */
        21   public cla ss Patient Search ext ends
        22                    gov. va.nvap.we b.app.Resp onseDispat cherHttpSe rvlet {
        23           /* *
        24            *  Serial UI D.
        25            * /
        26           pr ivate stat ic final l ong serial VersionUID  = 8307602 4382043838 26L;
        27  
        28           @E JB(beanInt erface = P dqService. class, map pedName =  "PdqServic e")
        29           Pd qService p dqService;
        30  
        31           /* *
        32            *  Search fo r a patien t.
        33            * /
        34           pu blic void  search(fin al HttpSer vletReques t request,
        35                final Ht tpServletR esponse re sponse) th rows Servl etExceptio n,
        36                IOExcept ion, PdqEx ception {
        37                    fina l HttpSess ion sessio n = reques t.getSessi on(false);
        38                    fina l String s sn = reque st.getPara meter("ssn ");
        39                    fina l String l astName =  request.ge tParameter ("lastName ");
        40                    fina l String f irstName =  request.g etParamete r("firstNa me");
        41  
        42                    if ( this.valid ate(reques t, respons e, "search ")) {
        43                             try {
        44                                      // Creat e a patien t profile  and search  for patie nt
        45                                      final Pa tientProfi le patient  = new Pat ientProfil e();
        46                                      patient. setFirstNa me(firstNa me);
        47                                      patient. setLastNam e(lastName );
        48                                      patient. setSsn(ssn );
        49                                      final Pa tientMatch Query pati entSearchR equest = n ew Patient MatchQuery ();
        50                                      patientS earchReque st.setPati entProfile (patient);
        51                                      // Call  PDQ servic e to get t he matchin g patient
        52                    fina l PatientM atchRespon se patient SearchResp onse = thi s.getPatie ntMatch(pa tientSearc hRequest);
        53                                      final Li st<Patient Profile> p atients =  patientSea rchRespons e.getPatie nts().getP atientProf ile();
        54  
        55                                      if (pati ents.isEmp ty()) {
        56                                               session.se tAttribute ("patients ", patient s);
        57                                               this.forwa rd(request , response , "none");
        58                                      } else i f (patient s.size() > = 2) {
        59                                               session.se tAttribute ("patients ", patient s);
        60                                               this.forwa rd(request , response , "multipl e");
        61                                      } else {
        62                                               final Stri ng icn = p atients.ge t(0).getIc n();
        63                                               session.se tAttribute ("icn", ic n);
        64                                               this.forwa rd(request , response , "single" );
        65                                      }
        66                             } catc h (final P dqExceptio n ex) {
        67                                      throw ne w PdqExcep tion();
        68                             }
        69                    } el se {
        70                             this.f orward(req uest, resp onse, "val idate");
        71                    }
        72           }
        73  
        74           @O verride
        75           pu blic void  unspecifie d(final Ht tpServletR equest req uest,
        76                             final  HttpServle tResponse  response)  throws Ser vletExcept ion,
        77                             IOExce ption {
        78                    fina l HttpSess ion sessio n = reques t.getSessi on(false);
        79                    sess ion.setAtt ribute("pa tients", n ull);
        80                    sess ion.setAtt ribute("ic n", null);
        81                    this .forward(r equest, re sponse, "s how");
        82           }
        83       
        84       privat e PatientM atchRespon se getPati entMatch(P atientMatc hQuery pmq ) throws P dqExceptio n {
        85           tr y {
        86                PatientM atchRespon se patient SearchResp onse = thi s.pdqServi ce.searchP atient(pmq );
        87  
        88                return p atientSear chResponse ;
        89           }  catch(Exce ption e) {
        90                throw ne w PdqExcep tion();
        91           }
        92       }
        93   }