@Override
	public boolean equals(Object object) {

		if (object == null || !(object instanceof ContextKey)) {
			return false;
		}

		ContextKey that = (ContextKey) object;

		return that == this || this.name().equals(that.name()) && this.contextType().equals(that.contextType());
	}