X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2FName.java;h=f13f85bf033d7f196df2d5d91a7fe126a649c76c;hb=8605a0e4eea7319a9790ac89ca3606b80948ca47;hp=4e748954127bcfef71dc9003eec51986df104597;hpb=f3dea954b8ac27ab7bebf7eaafd918e330ca65b5;p=gigi.git diff --git a/src/org/cacert/gigi/Name.java b/src/org/cacert/gigi/Name.java index 4e748954..f13f85bf 100644 --- a/src/org/cacert/gigi/Name.java +++ b/src/org/cacert/gigi/Name.java @@ -3,28 +3,69 @@ package org.cacert.gigi; import java.io.PrintWriter; import java.util.Map; +import org.cacert.gigi.localisation.Language; import org.cacert.gigi.output.Outputable; public class Name implements Outputable { - String fname; - String mname; - String lname; - String suffix; - - public Name(String fname, String lname) { - this.fname = fname; - this.lname = lname; - } - - @Override - public void output(PrintWriter out, Language l, Map vars) { - out.println(""); - out.print(""); - out.print(fname); - out.print(" "); - out.print(""); - out.print(lname); - out.print(""); - out.println(""); - } + + String fname; + + String mname; + + String lname; + + String suffix; + + public Name(String fname, String lname, String mname, String suffix) { + this.fname = fname; + this.lname = lname; + this.mname = mname; + this.suffix = suffix; + } + + @Override + public void output(PrintWriter out, Language l, Map vars) { + out.println(""); + out.print(""); + out.print(fname); + out.print(" "); + out.print(""); + out.print(lname); + out.print(""); + out.println(""); + } + + @Override + public boolean equals(Object obj) { + if ( !(obj instanceof Name)) { + return false; + } + Name n = (Name) obj; + if ( !(n.fname.equals(fname) && n.lname.equals(lname))) { + return false; + } + if (mname == null) { + if (n.mname != null) { + return false; + } + } else if ( !mname.equals(n.mname)) { + return false; + } + if (suffix == null) { + if (n.suffix != null) { + return false; + } + } else if ( !suffix.equals(n.suffix)) { + return false; + } + return true; + + } + + public boolean matches(String text) { + return text.equals(fname + " " + lname) || // + (mname != null && text.equals(fname + " " + mname + " " + lname)) || // + (suffix != null && text.equals(fname + " " + lname + " " + suffix)) || // + (mname != null && suffix != null && text.equals(fname + " " + mname + " " + lname + " " + suffix)); + } }