public String mergeName(String a,String b) throws MergeFailed {
  if (QA.bothNullOrEquals(a,b))   return a;
  if (emptyNames.contains(a) && !emptyNames.contains(b))   return b;
  if (emptyNames.contains(b) && !emptyNames.contains(a))   return a;
  return a;
}

public String mergeName ( String a , String b ) throws MergeFailed { if ( QA . bothNullOrEquals ( a , b ) ) return a ; if ( emptyNames . contains ( a ) && ! emptyNames . contains ( b ) ) return b ; if ( emptyNames . contains ( b ) && ! emptyNames . contains ( a ) ) return a ; return a ; }
merge two identifiers : - if they ' re equal , return one . - if one is null , " " , " ? " , return the other one . - else throw mergefailed exception : due to a bug in bridgesupport , this will return a ( the first arg ) instead of throwing mergefailed .
