Пример #1
0
 protected CompositeInstanceContext mergePatientContext(
     Group group, CompositeInstanceContext newContext) {
   if (group.context == null) {
     // System.err.println("mergePatientContext(): creating new context for group");
     group.context = newContext;
   } else {
     AttributeList groupList = group.context.getAttributeList();
     Iterator<Attribute> newListIterator = newContext.getAttributeList().values().iterator();
     while (newListIterator.hasNext()) {
       Attribute a = newListIterator.next();
       AttributeTag tag = a.getTag();
       String groupValue = Attribute.getSingleStringValueOrEmptyString(groupList, tag);
       String newValue = a.getSingleStringValueOrEmptyString();
       if (!newValue.equals(groupValue)) {
         String describeTag = tag + " " + groupList.getDictionary().getFullNameFromTag(tag);
         System.err.println(
             "mergePatientContext(): in group "
                 + group.identity
                 + " for "
                 + describeTag
                 + " values differ between existing group value <"
                 + groupValue
                 + "> and new value <"
                 + newValue
                 + ">");
         if (newValue.length() > 0
             && (groupValue.length() == 0 || isNonZeroLengthDummyValue(groupValue))) {
           System.err.println(
               "mergePatientContext(): in group "
                   + group.identity
                   + " for "
                   + describeTag
                   + " replacing absent/empty/dummy existing group value with new value <"
                   + newValue
                   + ">");
           groupList.put(a);
         }
       }
     }
   }
   return group.context;
 }