package net.sourceforge.phpeclipse.builder; //import net.sourceforge.phpeclipse.obfuscator.PHPIdentifier; /** * */ public class PHPIdentifierLocation extends PHPIdentifier implements Comparable { final public static int UNDEFINED_MATCH = 0; final public static int PATTERN_MATCH = 1; final public static int EXACT_MATCH = 2; private int fMatch; private String fClassname; private String fFilename; private int fOffset; private int fPHPDocLength; private int fPHPDocOffset; private String fUsage; public PHPIdentifierLocation(String identifier, int type, String filename) { this(identifier, type, filename, null); } public PHPIdentifierLocation(String identifier, int type, String filename, String classname) { super(identifier, type); fFilename = filename; fClassname = classname; fOffset = -1; fPHPDocLength = -1; fPHPDocOffset = -1; fUsage = null; } /* * (non-Javadoc) * * @see java.lang.Object#equals(java.lang.Object) */ public boolean equals(Object obj) { if (!(obj instanceof PHPIdentifierLocation)) { return false; } return super.equals(obj) && fFilename.equals(((PHPIdentifierLocation) obj).fFilename); } /** * @return */ public String getClassname() { return fClassname; } /** * @return */ public String getFilename() { return fFilename; } /** * @return */ public int getOffset() { return fOffset; } /** * @return */ public int getPHPDocLength() { return fPHPDocLength; } /** * @return */ public int getPHPDocOffset() { return fPHPDocOffset; } /** * @return */ public String getUsage() { return fUsage; } /** * @param string */ public void setClassname(String string) { fClassname = string; } /** * @param string */ public void setFilename(String string) { fFilename = string; } /** * @param i */ public void setOffset(int i) { fOffset = i; } /** * @param i */ public void setPHPDocLength(int i) { fPHPDocLength = i; } /** * @param i */ public void setPHPDocOffset(int i) { fPHPDocOffset = i; } /** * @param string */ public void setUsage(String string) { fUsage = string; } /* * (non-Javadoc) * * @see java.lang.Object#toString() */ public String toString() { String result = null; switch (fMatch) { case UNDEFINED_MATCH: result = " ["; break; case PATTERN_MATCH: result = " [pattern include]["; break; case EXACT_MATCH: result = " [exact include]["; break; default: result = ""; } return super.toString() + result + fFilename + "]"; } /* * (non-Javadoc) * * @see java.lang.Comparable#compareTo(java.lang.Object) */ public int compareTo(Object o) { PHPIdentifierLocation i = (PHPIdentifierLocation) o; if (fMatch > i.fMatch) { return -1; } else if (fMatch < i.fMatch) { return 1; } return fFilename.compareTo(i.fFilename); } /** * @return Returns the match. */ public int getMatch() { return fMatch; } /** * @param match * The match to set. */ public void setMatch(int match) { fMatch = match; } }