package org.objectstyle.wolips.bindings.api; import org.eclipse.jdt.core.IJavaProject; import org.eclipse.jdt.core.IType; import org.eclipse.jdt.core.JavaModelException; import org.objectstyle.wolips.baseforplugins.util.ComparisonUtils; import org.objectstyle.wolips.bindings.wod.TypeCache; public class SimpleApiBinding implements IApiBinding { private String _name; private String _defaults; private boolean _required; private boolean _willSet; public SimpleApiBinding(String name) { _name = name; } public int compareTo(IApiBinding o) { return (o == null) ? -1 : getName() == null ? -1 : getName().compareTo(o.getName()); } @Override public boolean equals(Object o) { return o instanceof SimpleApiBinding && ComparisonUtils.equals(((SimpleApiBinding) o).getName(), getName()); } @Override public int hashCode() { String name = getName(); return name == null ? 0 : name.hashCode(); } public boolean isAction() { return ApiUtils.isActionBinding(this); } public void setDefaults(String defaults) { _defaults = defaults; } public String getDefaults() { return _defaults; } public int getSelectedDefaults() { return ApiUtils.getSelectedDefaults(this); } public String getName() { return _name; } public void setName(String name) { _name = name; } public boolean isRequired() { return _required; } public void setRequired(boolean required) { _required = required; } public boolean isWillSet() { return _willSet; } public void setWillSet(boolean willSet) { _willSet = willSet; } public String[] getValidValues(String partialValue, IJavaProject javaProject, IType componentType, TypeCache typeCache) throws JavaModelException { return ApiUtils.getValidValues(this, partialValue, javaProject, componentType, typeCache); } }