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() |
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.
|
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 |
isHeuristicSearchEnabled() |
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 |
setAttributeTypeSuppressed(AttributeType type,
boolean enabled) |
void |
setAttributeWeight(java.lang.String attribute,
java.lang.Double weight)
Sets the according attribute weight.
|
void |
setHeuristicForSampleBasedCriteria(boolean value) |
void |
setHeuristicSearchEnabled(boolean heuristicSearchEnabled) |
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.Object
public boolean containsCriterion(java.lang.Class<? extends PrivacyCriterion> clazz)
clazz
- public double getAdversaryCost()
public double getAdversaryGain()
public double getSuppressionLimit()
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 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 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 isHeuristicSearchEnabled()
ARXConfiguration.isHeuristicSearchEnabled()
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 setSuppressionLimit(double supp)
supp
- 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 setHeuristicForSampleBasedCriteria(boolean value)
value
- ARXConfiguration.setUseHeuristicSearchForSampleBasedCriteria(boolean)
public void setHeuristicSearchEnabled(boolean heuristicSearchEnabled)
heuristicSearchEnabled
- ARXConfiguration.setHeuristicSearchEnabled(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 setSuppressionWeight(double suppressionWeight)
suppressionWeight
- public void setTransformationMode(java.lang.String attribute, ModelTransformationMode mode)
attribute
- mode
- public void setUnmodified()