< prev index next >

src/com/sun/javatest/exec/InterviewEditor.java

Print this page




 733      * of questions and all corresponding questions have the same values.
 734      *
 735      * @param a first interview
 736      * @param b second interview
 737      * @return true, iff two interviews are equivalent.
 738      */
 739     public static boolean equal(InterviewParameters a, InterviewParameters b) {
 740         if (a == b) {
 741             return true;
 742         }
 743 
 744         if (a.isTemplate() != b.isTemplate()) {
 745             return false;
 746         }
 747         // do ez checks first
 748         if (a.getMarkersEnabled() != b.getMarkersEnabled()
 749             || a.getMarkersFilterEnabled() != b.getMarkersFilterEnabled()) {
 750             return false;
 751         }
 752 
 753         Map aQuestions = a.getAllQuestions();
 754         Map bQuestions = b.getAllQuestions();
 755 
 756         Set keys = new TreeSet();
 757         keys.addAll(aQuestions.keySet());
 758         keys.addAll(bQuestions.keySet());
 759 
 760         for (Iterator iter = keys.iterator(); iter.hasNext(); ) {
 761             String key = (String) (iter.next());
 762             Question aq = (Question) aQuestions.get(key);
 763             Question bq = (Question) bQuestions.get(key);
 764             if (aq == null || bq == null) {
 765                 return false;
 766             }
 767             if (!aq.equals(bq)) {
 768                 String empty = "";
 769                 boolean eq = (aq.getStringValue() == null &&
 770                         empty.equals(bq.getStringValue())) ||
 771                         (empty.equals(aq.getStringValue()) &&
 772                         bq.getStringValue() == null);
 773                 if(!eq) {
 774                     /*
 775                      Hopefully, question reloading is not required anymore,
 776                      not because questions are equal now, but because




 733      * of questions and all corresponding questions have the same values.
 734      *
 735      * @param a first interview
 736      * @param b second interview
 737      * @return true, iff two interviews are equivalent.
 738      */
 739     public static boolean equal(InterviewParameters a, InterviewParameters b) {
 740         if (a == b) {
 741             return true;
 742         }
 743 
 744         if (a.isTemplate() != b.isTemplate()) {
 745             return false;
 746         }
 747         // do ez checks first
 748         if (a.getMarkersEnabled() != b.getMarkersEnabled()
 749             || a.getMarkersFilterEnabled() != b.getMarkersFilterEnabled()) {
 750             return false;
 751         }
 752 
 753         Map<String, Question> aQuestions = a.getAllQuestions();
 754         Map<String, Question> bQuestions = b.getAllQuestions();
 755 
 756         Set<String> keys = new TreeSet<>();
 757         keys.addAll(aQuestions.keySet());
 758         keys.addAll(bQuestions.keySet());
 759 
 760         for (Iterator iter = keys.iterator(); iter.hasNext(); ) {
 761             String key = (String) (iter.next());
 762             Question aq = (Question) aQuestions.get(key);
 763             Question bq = (Question) bQuestions.get(key);
 764             if (aq == null || bq == null) {
 765                 return false;
 766             }
 767             if (!aq.equals(bq)) {
 768                 String empty = "";
 769                 boolean eq = (aq.getStringValue() == null &&
 770                         empty.equals(bq.getStringValue())) ||
 771                         (empty.equals(aq.getStringValue()) &&
 772                         bq.getStringValue() == null);
 773                 if(!eq) {
 774                     /*
 775                      Hopefully, question reloading is not required anymore,
 776                      not because questions are equal now, but because


< prev index next >