public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((someBaz == null) ? 0 : someBaz.hashCode()); result = prime * result + (someBoolean ? 1231 : 1237); result = prime * result + ((someBytes == null) ? 0 : someBytes.hashCode()); long temp; temp = Double.doubleToLongBits(someDouble); result = prime * result + (int) (temp ^ (temp >>> 32)); result = prime * result + ((someEnum == null) ? 0 : someEnum.hashCode()); result = prime * result + Float.floatToIntBits(someFloat); result = prime * result + someInt; result = prime * result + (int) (someLong ^ (someLong >>> 32)); result = prime * result + ((someString == null) ? 0 : someString.hashCode()); return result; }
public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((someBaz == null) ? 0 : someBaz.hashCode()); result = prime * result + (someBoolean ? 1231 : 1237); result = prime * result + ((someBytes == null) ? 0 : someBytes.hashCode()); long temp; temp = Double.doubleToLongBits(someDouble); result = prime * result + (int) (temp ^ (temp >>> 32)); result = prime * result + ((someEnum == null) ? 0 : someEnum.hashCode()); result = prime * result + Float.floatToIntBits(someFloat); result = prime * result + someInt; result = prime * result + (int) (someLong ^ (someLong >>> 32)); result = prime * result + ((someString == null) ? 0 : someString.hashCode()); return result; }
public static Integer computeDatasetHash(DatasetConfig dataset, NamespaceService namespaceService) throws NamespaceException { Queue<DatasetConfig> q = new LinkedList<>(); q.add(dataset); int hash = 1; while (!q.isEmpty()) { dataset = q.poll(); if (isPhysicalDataset(dataset.getType())) { hash = 31 * hash + (dataset.getRecordSchema() == null ? 1 : dataset.getRecordSchema().hashCode()); } else { hash = 31 * hash + dataset.getVirtualDataset().getSql().hashCode(); for (ParentDataset parent : dataset.getVirtualDataset().getParentsList()) { q.add(namespaceService.getDataset(new NamespaceKey(parent.getDatasetPathList()))); } } } return hash; }