@Override
        public boolean equals(Object obj) {
            if (obj == null) return false;
            if (getClass() != obj.getClass()) return false;
            final Door other = (Door) obj;
            if (this.location != other.location && (this.location == null || !this.location.equals(other.location))) return false;
            if (this.direction != other.direction) return false;
            return true;
        }