package org.finra.datagenerator.scaffolding.transformer.service.transformations;
import org.finra.datagenerator.scaffolding.transformer.function.FunctionTransformation;
/**
* Created by dkopel on 11/29/16.
*/
public class FunctionTransformationImpl {
protected FunctionTransformationImpl(String key, Class<? extends FunctionTransformation> clazz) {
this.key = key;
this.clazz = clazz;
}
protected FunctionTransformationImpl(org.finra.datagenerator.scaffolding.transformer.support.FunctionTransformation func) {
this.key = func.key();
this.clazz = func.clazz();
}
private final String key;
private final Class<? extends FunctionTransformation> clazz;
public String getKey() {
return key;
}
public Class<? extends FunctionTransformation> getClazz() {
return clazz;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof FunctionTransformationImpl)) return false;
FunctionTransformationImpl that = (FunctionTransformationImpl) o;
if (key != null ? !key.equals(that.key) : that.key != null) return false;
return clazz != null ? clazz.equals(that.clazz) : that.clazz == null;
}
@Override
public int hashCode() {
int result = key != null ? key.hashCode() : 0;
result = 31 * result + (clazz != null ? clazz.hashCode() : 0);
return result;
}
}