public class ModelConfiguration
extends java.lang.Object
implements java.io.Serializable, java.lang.Cloneable
| Constructor and Description |
|---|
ModelConfiguration() |
| Modifier and Type | Method and Description |
|---|---|
ARXConfiguration |
addCriterion(PrivacyCriterion c)
Delegates to an instance of ARXConfiguration.
|
ModelConfiguration |
clone() |
boolean |
containsCriterion(java.lang.Class<? extends PrivacyCriterion> clazz)
Delegates to an instance of ARXConfiguration.
|
double |
getAdversaryCost() |
double |
getAdversaryGain() |
ARXConfiguration.AnonymizationAlgorithm |
getAlgorithm() |
double |
getAttributeWeight(java.lang.String attribute)
Returns the associated attribute weight.
|
java.util.Map<java.lang.String,java.lang.Double> |
getAttributeWeights()
Returns all weights.
|
ARXConfiguration |
getConfig()
Returns the current config.
|
java.util.Set<PrivacyCriterion> |
getCriteria()
Delegates to an instance of ARXConfiguration.
|
<T extends PrivacyCriterion> |
getCriteria(java.lang.Class<T> clazz)
Delegates to an instance of ARXConfiguration.
|
<T extends PrivacyCriterion> |
getCriterion(java.lang.Class<T> clazz)
Delegates to an instance of ARXConfiguration.
|
double |
getGeneticAlgorithmCrossoverFraction() |
boolean |
getGeneticAlgorithmDeterministic() |
double |
getGeneticAlgorithmEliteFraction() |
double |
getGeneticAlgorithmImmigrationFraction() |
int |
getGeneticAlgorithmImmigrationInterval() |
int |
getGeneticAlgorithmIterations() |
double |
getGeneticAlgorithmMutationProbability() |
double |
getGeneticAlgorithmProductionFraction() |
int |
getGeneticAlgorithmSubpopulationSize() |
int |
getHeuristicSearchThreshold() |
int |
getHeuristicSearchTimeLimit() |
java.util.Map<java.lang.String,AttributeType.Hierarchy> |
getHierarchies()
Returns the set of all assigned hierarchies.
|
AttributeType.Hierarchy |
getHierarchy(java.lang.String attribute)
Returns the assigned hierarchy, if any.
|
HierarchyBuilder<?> |
getHierarchyBuilder(java.lang.String attr)
Returns the according builder.
|
Data |
getInput() |
java.lang.Integer |
getMaximumGeneralization(java.lang.String attribute)
Maximum generalization.
|
Metric<?> |
getMetric()
Delegates to an instance of ARXConfiguration.
|
AttributeType.MicroAggregationFunctionDescription |
getMicroAggregationFunction(java.lang.String attribute)
Returns the microaggregation function.
|
java.lang.Boolean |
getMicroAggregationIgnoreMissingData(java.lang.String attribute)
Returns the associated handling of missing data
|
java.lang.Integer |
getMinimumGeneralization(java.lang.String attribute)
Minimum generalization.
|
double |
getPublisherBenefit() |
double |
getPublisherLoss() |
RowSet |
getResearchSubset()
Returns the current research subset.
|
double |
getSuppressionLimit()
Delegates to an instance of ARXConfiguration.
|
double |
getSuppressionWeight()
Returns the suppression/generalization weight, that will be respected by
the NDS metric.
|
ModelTransformationMode |
getTransformationMode(java.lang.String attribute)
Returns the transformation mode for the given attribute.
|
boolean |
isAttributeTypeSuppressed(AttributeType type) |
boolean |
isHeuristicForSampleBasedCriteria() |
boolean |
isModified()
Has the config been modified.
|
boolean |
isPracticalMonotonicity()
Delegates to an instance of ARXConfiguration.
|
boolean |
isSuppressionAlwaysEnabled() |
void |
removeAllCriteria()
Removes all criteria.
|
void |
removeHierarchy(java.lang.String attribute)
Removes a hierarchy.
|
void |
removeHierarchyBuilder(java.lang.String attr)
Removes the builder for the given attribute.
|
void |
setAdversaryCost(double adversaryCost) |
void |
setAdversaryGain(double adversaryGain) |
void |
setAlgorithm(ARXConfiguration.AnonymizationAlgorithm algorithm) |
void |
setAttributeTypeSuppressed(AttributeType type,
boolean enabled) |
void |
setAttributeWeight(java.lang.String attribute,
java.lang.Double weight)
Sets the according attribute weight.
|
void |
setGeneticAlgorithmCrossoverFraction(double geneticAlgorithmCrossoverFraction)
Sets crossover percentage
|
void |
setGeneticAlgorithmDeterministic(boolean geneticAlgorithmDeterministic)
Deterministic execution
|
void |
setGeneticAlgorithmEliteFraction(double geneticAlgorithmEliteFraction)
Sets the size of the elite group
|
void |
setGeneticAlgorithmImmigrationFraction(double geneticAlgorithmImmigrationFraction)
Sets the fraction to immigrate
|
void |
setGeneticAlgorithmImmigrationInterval(int geneticAlgorithmImmigrationInterval)
Sets the immigration interval
|
void |
setGeneticAlgorithmIterations(int geneticAlgorithmIterations) |
void |
setGeneticAlgorithmMutationProbability(double geneticAlgorithmMutationProbability)
Sets the mutation probability
|
void |
setGeneticAlgorithmProductionFraction(double geneticAlgorithmProductionFraction)
Sets the production fraction
|
void |
setGeneticAlgorithmSubpopulationSize(int geneticAlgorithmSubpopulationSize)
Setter
|
void |
setHeuristicForSampleBasedCriteria(boolean value) |
void |
setHeuristicSearchThreshold(int numberOfTransformations) |
void |
setHeuristicSearchTimeLimit(int timeInMillis) |
void |
setHierarchy(java.lang.String attribute,
AttributeType.Hierarchy hierarchy)
Assigns a hierarchy.
|
void |
setHierarchyBuilder(java.lang.String attr,
HierarchyBuilder<?> builder)
Sets the given hierarchy builder.
|
void |
setInput(Data data) |
void |
setMaximumGeneralization(java.lang.String attribute,
java.lang.Integer max)
Maximum generalization.
|
void |
setMetric(Metric<?> metric)
Delegates to an instance of ARXConfiguration.
|
void |
setMicroAggregationFunction(java.lang.String attribute,
AttributeType.MicroAggregationFunctionDescription microaggregation)
Assigns a microaggregation function.
|
void |
setMicroAggregationIgnoreMissingData(java.lang.String attribute,
boolean ignoreMissingData)
Determines whether or not to ignore missing data
|
void |
setMinimumGeneralization(java.lang.String attribute,
java.lang.Integer min)
Minimum generalization.
|
void |
setPracticalMonotonicity(boolean assumeMonotonicity)
Delegates to an instance of ARXConfiguration.
|
void |
setPublisherBenefit(double publisherBenefit) |
void |
setPublisherLoss(double publisherLoss) |
void |
setResearchSubset(RowSet subset)
Sets the current research subset.
|
void |
setSuppressionAlwaysEnabled(boolean enabled) |
void |
setSuppressionLimit(double supp)
Delegates to an instance of ARXConfiguration.
|
void |
setSuppressionWeight(double suppressionWeight)
Sets the suppression/generalization weight, that will be respected by
the NDS metric.
|
void |
setTransformationMode(java.lang.String attribute,
ModelTransformationMode mode)
Sets the transformation mode
|
void |
setUnmodified()
Sets the config unmodified.
|
public ARXConfiguration addCriterion(PrivacyCriterion c)
c - public ModelConfiguration clone()
clone in class java.lang.Objectpublic boolean containsCriterion(java.lang.Class<? extends PrivacyCriterion> clazz)
clazz - public double getAdversaryCost()
public double getAdversaryGain()
public ARXConfiguration.AnonymizationAlgorithm getAlgorithm()
ARXConfiguration.getAlgorithm()public double getAttributeWeight(java.lang.String attribute)
attribute - public java.util.Map<java.lang.String,java.lang.Double> getAttributeWeights()
public ARXConfiguration getConfig()
public java.util.Set<PrivacyCriterion> getCriteria()
public <T extends PrivacyCriterion> java.util.Set<T> getCriteria(java.lang.Class<T> clazz)
T - clazz - public <T extends PrivacyCriterion> T getCriterion(java.lang.Class<T> clazz)
T - clazz - public double getGeneticAlgorithmCrossoverFraction()
ARXConfiguration.getGeneticAlgorithmCrossoverFraction()public boolean getGeneticAlgorithmDeterministic()
ARXConfiguration.getGeneticAlgorithmDeterministic()public double getGeneticAlgorithmEliteFraction()
ARXConfiguration.getGeneticAlgorithmEliteFraction()public double getGeneticAlgorithmImmigrationFraction()
ARXConfiguration.getGeneticAlgorithmImmigrationFraction()public int getGeneticAlgorithmImmigrationInterval()
ARXConfiguration.getGeneticAlgorithmImmigrationInterval()public int getGeneticAlgorithmIterations()
ARXConfiguration.getGeneticAlgorithmIterations()public double getGeneticAlgorithmMutationProbability()
ARXConfiguration.getGeneticAlgorithmMutationProbability()public double getGeneticAlgorithmProductionFraction()
ARXConfiguration.getGeneticAlgorithmProductionFraction()public int getGeneticAlgorithmSubpopulationSize()
ARXConfiguration.getGeneticAlgorithmSubpopulationSize()public int getHeuristicSearchThreshold()
ARXConfiguration.getHeuristicSearchThreshold()public int getHeuristicSearchTimeLimit()
ARXConfiguration.getHeuristicSearchTimeLimit()public java.util.Map<java.lang.String,AttributeType.Hierarchy> getHierarchies()
public AttributeType.Hierarchy getHierarchy(java.lang.String attribute)
attribute - public HierarchyBuilder<?> getHierarchyBuilder(java.lang.String attr)
attr - public Data getInput()
public java.lang.Integer getMaximumGeneralization(java.lang.String attribute)
attribute - public Metric<?> getMetric()
public AttributeType.MicroAggregationFunctionDescription getMicroAggregationFunction(java.lang.String attribute)
attribute - public java.lang.Boolean getMicroAggregationIgnoreMissingData(java.lang.String attribute)
attribute - public java.lang.Integer getMinimumGeneralization(java.lang.String attribute)
attribute - public double getPublisherBenefit()
public double getPublisherLoss()
public RowSet getResearchSubset()
public double getSuppressionLimit()
public double getSuppressionWeight()
public ModelTransformationMode getTransformationMode(java.lang.String attribute)
attribute - public boolean isAttributeTypeSuppressed(AttributeType type)
type - ARXConfiguration.isAttributeTypeSuppressed(org.deidentifier.arx.AttributeType)public boolean isHeuristicForSampleBasedCriteria()
ARXConfiguration.isUseHeuristicSearchForSampleBasedCriteria()public boolean isModified()
public boolean isPracticalMonotonicity()
public boolean isSuppressionAlwaysEnabled()
ARXConfiguration.isSuppressionAlwaysEnabled()public void removeAllCriteria()
public void removeHierarchy(java.lang.String attribute)
attribute - public void removeHierarchyBuilder(java.lang.String attr)
attr - public void setAdversaryCost(double adversaryCost)
adversaryCost - the adversaryCost to setpublic void setAdversaryGain(double adversaryGain)
adversaryGain - the adversaryGain to setpublic void setAlgorithm(ARXConfiguration.AnonymizationAlgorithm algorithm)
algorithm - org.deidentifier.arx.ARXConfiguration#setAlgorithm(algorithm)public void setAttributeTypeSuppressed(AttributeType type, boolean enabled)
type - enabled - ARXConfiguration.setAttributeTypeSuppressed(org.deidentifier.arx.AttributeType, boolean)public void setAttributeWeight(java.lang.String attribute,
java.lang.Double weight)
attribute - weight - public void setGeneticAlgorithmCrossoverFraction(double geneticAlgorithmCrossoverFraction)
geneticAlgorithmCrossoverFraction - public void setGeneticAlgorithmDeterministic(boolean geneticAlgorithmDeterministic)
geneticAlgorithmDeterministic - public void setGeneticAlgorithmEliteFraction(double geneticAlgorithmEliteFraction)
geneticAlgorithmEliteFraction - public void setGeneticAlgorithmImmigrationFraction(double geneticAlgorithmImmigrationFraction)
geneticAlgorithmImmigrationFraction - public void setGeneticAlgorithmImmigrationInterval(int geneticAlgorithmImmigrationInterval)
geneticAlgorithmImmigrationInterval - public void setGeneticAlgorithmIterations(int geneticAlgorithmIterations)
geneticAlgorithmIterations - ARXConfiguration.setGeneticAlgorithmIterations(int)public void setGeneticAlgorithmMutationProbability(double geneticAlgorithmMutationProbability)
geneticAlgorithmMutationProbability - public void setGeneticAlgorithmProductionFraction(double geneticAlgorithmProductionFraction)
geneticAlgorithmProductionFraction - public void setGeneticAlgorithmSubpopulationSize(int geneticAlgorithmSubpopulationSize)
geneticAlgorithmSubpopulationSize - public void setHeuristicForSampleBasedCriteria(boolean value)
value - ARXConfiguration.setUseHeuristicSearchForSampleBasedCriteria(boolean)public void setHeuristicSearchThreshold(int numberOfTransformations)
numberOfTransformations - ARXConfiguration.setHeuristicSearchThreshold(int)public void setHeuristicSearchTimeLimit(int timeInMillis)
timeInMillis - ARXConfiguration.setHeuristicSearchTimeLimit(int)public void setHierarchy(java.lang.String attribute,
AttributeType.Hierarchy hierarchy)
attribute - hierarchy - public void setHierarchyBuilder(java.lang.String attr,
HierarchyBuilder<?> builder)
attr - builder - public void setInput(Data data)
data - the input to setpublic void setMaximumGeneralization(java.lang.String attribute,
java.lang.Integer max)
attribute - max - public void setMetric(Metric<?> metric)
metric - public void setMicroAggregationFunction(java.lang.String attribute,
AttributeType.MicroAggregationFunctionDescription microaggregation)
attribute - microaggregation - public void setMicroAggregationIgnoreMissingData(java.lang.String attribute,
boolean ignoreMissingData)
attribute - ignoreNullValues - public void setMinimumGeneralization(java.lang.String attribute,
java.lang.Integer min)
attribute - min - public void setPracticalMonotonicity(boolean assumeMonotonicity)
assumeMonotonicity - public void setPublisherBenefit(double publisherBenefit)
publisherBenefit - the publisherBenefit to setpublic void setPublisherLoss(double publisherLoss)
publisherLoss - the publisherLoss to setpublic void setResearchSubset(RowSet subset)
subset - public void setSuppressionAlwaysEnabled(boolean enabled)
enabled - ARXConfiguration.setSuppressionAlwaysEnabled(boolean)public void setSuppressionLimit(double supp)
supp - public void setSuppressionWeight(double suppressionWeight)
suppressionWeight - public void setTransformationMode(java.lang.String attribute,
ModelTransformationMode mode)
attribute - mode - public void setUnmodified()