weka.filters.unsupervised.instance

## Class Flash

- java.lang.Object
- - weka.filters.Filter
  - - weka.filters.SimpleFilter
    - - weka.filters.SimpleBatchFilter
      - - weka.filters.unsupervised.instance.Flash

- All Implemented Interfaces:
    java.io.Serializable, CapabilitiesHandler, OptionHandler, RevisionHandler, UnsupervisedFilter

      public class Flash
      extends SimpleBatchFilter
      implements UnsupervisedFilter

  This package provides algorithms to apply k-Anonymity, l-Diversity and t-Closeness with traversal strategy "Flash" for an optimal transformation to an anonymized dataset with respect to minimal information loss. The algorithms originate from the ARX Data Anonymization Toolkit, please read for further information's: http://arx.deidentifier.org/development/algorithms/.
  Author:
    Andre Breitenfeld, Simon Koennecke, Christian Windolf
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static Tag[]` | `L_DIVERSITY_VARIANTS` Array with tags for l-diversity variants.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Flash()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `dataHierarchyFolderTipText()` Returns the tip text for the hierarchy folder property.
    `java.lang.String` | `dataQuasiIdentifierTipText()` Returns the tip text for the quasi-identifiers.
    `java.lang.String` | `dataSensitiveAttributesTipText()` Returns the tip text for the sensitive attributes.
    `java.lang.String` | `enableKAnonymityTipText()` Returns the tip text for enabling k-anonymity.
    `java.lang.String` | `enableLDiversityTipText()` Returns the tip text for enabling l-diversity.
    `java.lang.String` | `enableTClosenessTipText()` Returns the tip text for enabling t-closeness.
    `Capabilities` | `getCapabilities()`
    `java.io.File` | `getDataHierarchyFolder()` Gets the data hierarchy folder.
    `java.lang.String` | `getDataQuasiIdentifier()` Gets the quasi identifiers.
    `java.lang.String` | `getDataSensitiveAttributes()` Gets the sensitive attributes.
    `boolean` | `getEnableKAnonymity()` Get k-Anonymity activation.
    `boolean` | `getEnableLDiversity()` Get l-Diversity activation.
    `boolean` | `getEnableTCloseness()` Get t-Closeness activation.
    `double` | `getMaxOutliers()` Gets the value for max outliers.
    `java.lang.String[]` | `getOptions()`
    `java.lang.String` | `getRevision()` Returns the revision string.
    `int` | `getValueK()` Gets the value for k.
    `int` | `getValueL()` Gets the value for l.
    `double` | `getValueT()` Gets the value for t.
    `SelectedTag` | `getVariant()` Gets the selected variant for l-Diversity.
    `java.lang.String` | `globalInfo()` Returns the global info.
    `java.util.Enumeration<Option>` | `listOptions()`
    `static void` | `main(java.lang.String[] args)`
    `java.lang.String` | `maxOutliersTipText()`
    `Instances` | `process(Instances instances)` Process the given instance to apply anonymization algorithm.
    `void` | `setDataHierarchyFolder(java.io.File value)` Sets the data hierarchy folder.
    `void` | `setDataQuasiIdentifier(java.lang.String value)` Sets the quasi identifiers.
    `void` | `setDataSensitiveAttributes(java.lang.String value)` Sets the sensitive attributes.
    `void` | `setEnableKAnonymity(boolean value)` Enables or disables k-Anonymity.
    `void` | `setEnableLDiversity(boolean value)` Enables or disables l-Diversity.
    `void` | `setEnableTCloseness(boolean value)` Enables or disables t-Closeness.
    `void` | `setMaxOutliers(double maxOutliers)` Sets the value for max outliers.
    `void` | `setOptions(java.lang.String[] options)`
    `void` | `setValueK(int value)` Sets the value for k.
    `void` | `setValueL(int value)` Sets the value for l.
    `void` | `setValueT(double value)` Sets the value for t.
    `void` | `setVariant(SelectedTag value)`
    `java.lang.String` | `valueKTipText()` Returns the tip text for the value of k.
    `java.lang.String` | `valueLTipText()` Returns the tip text for the value of l.
    `java.lang.String` | `valueTTipText()` Returns the tip text for the value of t.
    `java.lang.String` | `variantTipText()` Returns the tip text for the variant of l-diversity.

    - ### Methods inherited from class weka.filters.SimpleBatchFilter

      `allowAccessToFullInputFormat, batchFinished, input`

    - ### Methods inherited from class weka.filters.SimpleFilter

      `debugTipText, doNotCheckCapabilitiesTipText, getDebug, getDoNotCheckCapabilities, setDebug, setDoNotCheckCapabilities, setInputFormat`

    - ### Methods inherited from class weka.filters.Filter

      `batchFilterFile, filterFile, getCapabilities, getOutputFormat, isFirstBatchDone, isNewBatch, isOutputFormatDefined, makeCopies, makeCopy, mayRemoveInstanceAfterFirstBatchDone, numPendingOutput, output, outputPeek, runFilter, toString, useFilter, wekaStaticWrapper`

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

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

- - ### Field Detail

    - #### L_DIVERSITY_VARIANTS

          public static final Tag[] L_DIVERSITY_VARIANTS

      Array with tags for l-diversity variants.

  - ### Constructor Detail

    - #### Flash

          public Flash()

  - ### Method Detail

    - #### globalInfo

          public java.lang.String globalInfo()

      Returns the global info.
      Specified by:
        `globalInfo` in class `SimpleFilter`
      Returns:
        The global info.

    - #### dataHierarchyFolderTipText

          public java.lang.String dataHierarchyFolderTipText()

      Returns the tip text for the hierarchy folder property.
      Returns:
        String with corresponding tip text

    - #### getDataHierarchyFolder

          public java.io.File getDataHierarchyFolder()

      Gets the data hierarchy folder.
      Returns:
        Returns a file object

    - #### setDataHierarchyFolder

          public void setDataHierarchyFolder(java.io.File value)

      Sets the data hierarchy folder.
      Parameters:
        `value` - Fle object

    - #### dataQuasiIdentifierTipText

          public java.lang.String dataQuasiIdentifierTipText()

      Returns the tip text for the quasi-identifiers.
      Returns:
        String with corresponding tip text

    - #### getDataQuasiIdentifier

          public java.lang.String getDataQuasiIdentifier()

      Gets the quasi identifiers.
      Returns:
        Range string with quasi identifiers

    - #### setDataQuasiIdentifier

          public void setDataQuasiIdentifier(java.lang.String value)

      Sets the quasi identifiers.
      Parameters:
        `value` - Range string with quasi identifiers

    - #### dataSensitiveAttributesTipText

          public java.lang.String dataSensitiveAttributesTipText()

      Returns the tip text for the sensitive attributes.
      Returns:
        String with corresponding tip text

    - #### getDataSensitiveAttributes

          public java.lang.String getDataSensitiveAttributes()

      Gets the sensitive attributes.
      Returns:
        Range string with sensitive attributes

    - #### setDataSensitiveAttributes

          public void setDataSensitiveAttributes(java.lang.String value)

      Sets the sensitive attributes.
      Parameters:
        `value` - Range string with sensitive attributes

    - #### enableKAnonymityTipText

          public java.lang.String enableKAnonymityTipText()

      Returns the tip text for enabling k-anonymity.
      Returns:
        String with corresponding tip text

    - #### getEnableKAnonymity

          public boolean getEnableKAnonymity()

      Get k-Anonymity activation.
      Returns:
        Boolean indicate

    - #### setEnableKAnonymity

          public void setEnableKAnonymity(boolean value)

      Enables or disables k-Anonymity.
      Parameters:
        `value` - Boolean value

    - #### enableLDiversityTipText

          public java.lang.String enableLDiversityTipText()

      Returns the tip text for enabling l-diversity.
      Returns:
        String with corresponding tip text

    - #### getEnableLDiversity

          public boolean getEnableLDiversity()

      Get l-Diversity activation.
      Returns:
        Boolean indicate

    - #### setEnableLDiversity

          public void setEnableLDiversity(boolean value)

      Enables or disables l-Diversity.
      Parameters:
        `value` - Boolean value

    - #### enableTClosenessTipText

          public java.lang.String enableTClosenessTipText()

      Returns the tip text for enabling t-closeness.
      Returns:
        String with corresponding tip text

    - #### getEnableTCloseness

          public boolean getEnableTCloseness()

      Get t-Closeness activation.
      Returns:
        Boolean indicate

    - #### setEnableTCloseness

          public void setEnableTCloseness(boolean value)

      Enables or disables t-Closeness.
      Parameters:
        `value` - Boolean value

    - #### valueKTipText

          public java.lang.String valueKTipText()

      Returns the tip text for the value of k.
      Returns:
        String with corresponding tip text

    - #### getValueK

          public int getValueK()

      Gets the value for k.
      Returns:
        Integer for k

    - #### setValueK

          public void setValueK(int value)

      Sets the value for k.
      Parameters:
        `value` - Integer for k

    - #### valueLTipText

          public java.lang.String valueLTipText()

      Returns the tip text for the value of l.
      Returns:
        String with corresponding tip text

    - #### getValueL

          public int getValueL()

      Gets the value for l.
      Returns:
        Integer for l

    - #### setValueL

          public void setValueL(int value)

      Sets the value for l.
      Parameters:
        `value` - Integer for l

    - #### valueTTipText

          public java.lang.String valueTTipText()

      Returns the tip text for the value of t.
      Returns:
        String with corresponding tip text

    - #### getValueT

          public double getValueT()

      Gets the value for t.
      Returns:
        Integer for t

    - #### setValueT

          public void setValueT(double value)

      Sets the value for t.
      Parameters:
        `value` - Integer for t

    - #### variantTipText

          public java.lang.String variantTipText()

      Returns the tip text for the variant of l-diversity.
      Returns:
        String with corresponding tip text

    - #### getVariant

          public SelectedTag getVariant()

      Gets the selected variant for l-Diversity.
      Returns:
        l-Diversity variant

    - #### setVariant

          public void setVariant(SelectedTag value)

    - #### maxOutliersTipText

          public java.lang.String maxOutliersTipText()

    - #### getMaxOutliers

          public double getMaxOutliers()

      Gets the value for max outliers.
      Returns:
        Double for max outliers

    - #### setMaxOutliers

          public void setMaxOutliers(double maxOutliers)

      Sets the value for max outliers.
      Parameters:
        `maxOutliers` - Double for max outliers

    - #### main

          public static void main(java.lang.String[] args)

    - #### listOptions

          public java.util.Enumeration<Option> listOptions()

      Specified by:
        `listOptions` in interface `OptionHandler`
      Overrides:
        `listOptions` in class `SimpleFilter`

    - #### setOptions

          public void setOptions(java.lang.String[] options)
                          throws java.lang.Exception

      Specified by:
        `setOptions` in interface `OptionHandler`
      Overrides:
        `setOptions` in class `SimpleFilter`
      Throws:
        `java.lang.Exception`

    - #### getOptions

          public java.lang.String[] getOptions()

      Specified by:
        `getOptions` in interface `OptionHandler`
      Overrides:
        `getOptions` in class `SimpleFilter`

    - #### getCapabilities

          public Capabilities getCapabilities()

      Specified by:
        `getCapabilities` in interface `CapabilitiesHandler`
      Overrides:
        `getCapabilities` in class `SimpleFilter`

    - #### getRevision

          public java.lang.String getRevision()

      Returns the revision string.
      Specified by:
        `getRevision` in interface `RevisionHandler`
      Overrides:
        `getRevision` in class `Filter`
      Returns:
        The revision string.

    - #### process

          public Instances process(Instances instances)
                            throws java.lang.Exception

      Process the given instance to apply anonymization algorithm.
      Specified by:
        `process` in class `SimpleFilter`
      Parameters:
        `instances` - The instance on which k-Anonymity, l-diversity or t-closeness should be applied.
      Returns:
        An anonymized instance.
      Throws:
        `IllegalArgumentException,` - if incorrect parameters are provided
        `java.lang.Exception`