org.deidentifier.arx.algorithm

## Class FLASHConfiguration

- java.lang.Object
- - org.deidentifier.arx.algorithm.FLASHConfiguration

    public class FLASHConfiguration
    extends java.lang.Object

This class parameterizes a phase the interwoven two-phase Flash algorithm.

Author:
  Fabian Prasser, Florian Kohlmayer

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static FLASHConfiguration` `createBinaryPhaseConfiguration(FLASHPhaseConfiguration config, History.StorageStrategy storageStrategy, boolean pruneWithLowerBounds, boolean anonymityPropertyPredictable)` Creates a binary-phase only configuration.
`static FLASHConfiguration` `createLinearPhaseConfiguration(FLASHPhaseConfiguration config, History.StorageStrategy storageStrategy, boolean pruneWithLowerBounds, boolean anonymityPropertyPredictable)` Creates a linear-phase only configuration.
`static FLASHConfiguration` `createTwoPhaseConfiguration(FLASHPhaseConfiguration binaryPhaseConfiguration, FLASHPhaseConfiguration linearPhaseConfiguration, History.StorageStrategy storageStrategy, boolean pruneWithLowerBounds, boolean anonymityPropertyPredictable)` Creates a two-phase configuration.
`FLASHPhaseConfiguration` `getBinaryPhaseConfiguration()` Getter.
`FLASHPhaseConfiguration` `getLinearPhaseConfiguration()` Getter.
`History.StorageStrategy` `getSnapshotStorageStrategy()` Getter: A trigger controlling which transformations are snapshotted.
`boolean` `isAnonymityPropertyPredicable()` Returns whether or not the anonymity property is predictable
`boolean` `isBinaryPhaseRequired()` Is a binary phase required.
`boolean` `isLinearPhaseRequired()` Is a linear phase required.
`boolean` `isPruneInsufficientUtility()` Prune based on lower bounds from monotonic shares of metrics for information loss?.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### createBinaryPhaseConfiguration

    public static FLASHConfiguration createBinaryPhaseConfiguration(FLASHPhaseConfiguration config,
                                                                    History.StorageStrategy storageStrategy,
                                                                    boolean pruneWithLowerBounds,
                                                                    boolean anonymityPropertyPredictable)

Creates a binary-phase only configuration.

Parameters:
  `config` -
  `storageStrategy` -
  `pruneWithLowerBounds` -
  `anonymityPropertyPredictable` -
Returns:

#### createLinearPhaseConfiguration

    public static FLASHConfiguration createLinearPhaseConfiguration(FLASHPhaseConfiguration config,
                                                                    History.StorageStrategy storageStrategy,
                                                                    boolean pruneWithLowerBounds,
                                                                    boolean anonymityPropertyPredictable)

Creates a linear-phase only configuration.

Parameters:
  `config` -
  `storageStrategy` -
  `pruneWithLowerBounds` -
  `anonymityPropertyPredictable` -
Returns:

#### createTwoPhaseConfiguration

    public static FLASHConfiguration createTwoPhaseConfiguration(FLASHPhaseConfiguration binaryPhaseConfiguration,
                                                                 FLASHPhaseConfiguration linearPhaseConfiguration,
                                                                 History.StorageStrategy storageStrategy,
                                                                 boolean pruneWithLowerBounds,
                                                                 boolean anonymityPropertyPredictable)

Creates a two-phase configuration.

Parameters:
  `binaryPhaseConfiguration` -
  `linearPhaseConfiguration` -
  `storageStrategy` -
  `pruneWithLowerBounds` -
  `anonymityPropertyPredictable` -
Returns:

#### getBinaryPhaseConfiguration

    public FLASHPhaseConfiguration getBinaryPhaseConfiguration()

Getter.

Returns:

#### getLinearPhaseConfiguration

    public FLASHPhaseConfiguration getLinearPhaseConfiguration()

Getter.

Returns:

#### getSnapshotStorageStrategy

    public History.StorageStrategy getSnapshotStorageStrategy()

Getter: A trigger controlling which transformations are snapshotted.

Returns:

#### isAnonymityPropertyPredicable

    public boolean isAnonymityPropertyPredicable()

Returns whether or not the anonymity property is predictable

Returns:

#### isBinaryPhaseRequired

    public boolean isBinaryPhaseRequired()

Is a binary phase required.

Returns:

#### isLinearPhaseRequired

    public boolean isLinearPhaseRequired()

Is a linear phase required.

Returns:

#### isPruneInsufficientUtility

    public boolean isPruneInsufficientUtility()

Prune based on lower bounds from monotonic shares of metrics for information loss?.

Returns: