@Override public int hashCode() { int result = index.hashCode(); result = 31 * result + (type != null ? type.hashCode() : 0); result = 31 * result + id.hashCode(); result = 31 * result + (routing != null ? routing.hashCode() : 0); result = 31 * result + (fields != null ? Arrays.hashCode(fields) : 0); result = 31 * result + (int) (version ^ (version >>> 32)); result = 31 * result + versionType.hashCode(); result = 31 * result + (fetchSourceContext != null ? fetchSourceContext.hashCode() : 0); return result; }