001 package com.thaiopensource.relaxng.impl;
002
003 import com.thaiopensource.xml.util.Name;
004
005
006 class SimpleNameClass implements NameClass {
007
008 private final Name name;
009
010 SimpleNameClass(Name name) {
011 this.name = name;
012 }
013
014 public boolean contains(Name name) {
015 return this.name.equals(name);
016 }
017
018 public int containsSpecificity(Name name) {
019 return contains(name) ? SPECIFICITY_NAME : SPECIFICITY_NONE;
020 }
021
022 public int hashCode() {
023 return name.hashCode();
024 }
025
026 public boolean equals(Object obj) {
027 if (obj == null || !(obj instanceof SimpleNameClass))
028 return false;
029 SimpleNameClass other = (SimpleNameClass)obj;
030 return name.equals(other.name);
031 }
032
033 Name getName() {
034 return name;
035 }
036
037 public void accept(NameClassVisitor visitor) {
038 visitor.visitName(name);
039 }
040
041 public boolean isOpen() {
042 return false;
043 }
044 }