package edu.illinois.keshmesh.config; public class ConfigurationOptions { private final int objectSensitivityLevel; private final boolean dumpCallGraph; private final boolean dumpHeapGraph; public ConfigurationOptions(int objectSensitivityLevel, boolean dumpCallGraph, boolean dumpHeapGraph) { this.objectSensitivityLevel = objectSensitivityLevel; this.dumpCallGraph = dumpCallGraph; this.dumpHeapGraph = dumpHeapGraph; } public int getObjectSensitivityLevel() { return objectSensitivityLevel; } public boolean shouldDumpCallGraph() { return dumpCallGraph; } public boolean shouldDumpHeapGraph() { return dumpHeapGraph; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + (dumpCallGraph ? 1231 : 1237); result = prime * result + (dumpHeapGraph ? 1231 : 1237); result = prime * result + objectSensitivityLevel; return result; } @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } ConfigurationOptions other = (ConfigurationOptions) obj; if (dumpCallGraph != other.dumpCallGraph) { return false; } if (dumpHeapGraph != other.dumpHeapGraph) { return false; } if (objectSensitivityLevel != other.objectSensitivityLevel) { return false; } return true; } }