org.processmining.framework.log.filter
Class AddNoiseLogFilter

java.lang.Object
  extended by org.processmining.framework.log.LogFilter
      extended by org.processmining.framework.log.filter.AddNoiseLogFilter

public class AddNoiseLogFilter
extends LogFilter

Title: AddNoiseLogFilter

Description: This class adds noise to a log. There are 5 possible noise types: head, body, tail, swap and remove. The noise types head, body and tail respectively remove at most! the first, second or third 1/3 of a process instance. The noise type swap randomly swaps two audit trail entries (or tasks) in a process instance. The noise type remove randomly removes one audit trail entry (or task) from a process instance.

NOTE: This class does not treat input logs in which the process instances are grouped!

Version:
1.0
Author:
Ana Karla A. de Medeiros

Field Summary
static java.lang.String BODY
           
static int BODY_INDEX
           
static java.lang.String HEAD
           
static int HEAD_INDEX
           
static java.lang.String[] NOISE_TYPES
           
static java.lang.String REMOVE
           
static int REMOVE_INDEX
           
static java.lang.String SWAP
           
static int SWAP_INDEX
           
static java.lang.String TAIL
           
static int TAIL_INDEX
           
 
Fields inherited from class org.processmining.framework.log.LogFilter
FAST, filter, load, MODERATE, SLOW
 
Constructor Summary
AddNoiseLogFilter()
           
 
Method Summary
protected  boolean doFiltering(ProcessInstance instance)
          Filters a single process instance.
protected  java.lang.String getHelpForThisLogFilter()
          Returns the help for this LogFilter as HTML text, but without the and tags!
 LogFilterParameterDialog getParameterDialog(LogSummary summary)
          Returns a Panel for the setting of parameters.
 boolean[] getSelectedNoiseTypes()
           
protected  void readSpecificXML(org.w3c.dom.Node logFilterSpecifcNode)
          Read the inside of the tag in the XML export file from the InputStream input.
 void setSelectedNoiseTypes(int index, boolean value)
           
protected  boolean thisFilterChangesLog()
          Method to tell whether this LogFilter changes the log or not.
protected  void writeSpecificXML(java.io.BufferedWriter output)
          Write the inside of the tag in the XML export file to the OutputStream output.
 
Methods inherited from class org.processmining.framework.log.LogFilter
changesLog, filter, getComplexity, getComplexityAsString, getFilter, getHelp, getName, getThisLogFilterComplexity, readXML, setLowLevelFilter, setName, toString, writeXML
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

HEAD

public static final java.lang.String HEAD
See Also:
Constant Field Values

BODY

public static final java.lang.String BODY
See Also:
Constant Field Values

TAIL

public static final java.lang.String TAIL
See Also:
Constant Field Values

SWAP

public static final java.lang.String SWAP
See Also:
Constant Field Values

REMOVE

public static final java.lang.String REMOVE
See Also:
Constant Field Values

HEAD_INDEX

public static final int HEAD_INDEX
See Also:
Constant Field Values

BODY_INDEX

public static final int BODY_INDEX
See Also:
Constant Field Values

TAIL_INDEX

public static final int TAIL_INDEX
See Also:
Constant Field Values

SWAP_INDEX

public static final int SWAP_INDEX
See Also:
Constant Field Values

REMOVE_INDEX

public static final int REMOVE_INDEX
See Also:
Constant Field Values

NOISE_TYPES

public static final java.lang.String[] NOISE_TYPES
Constructor Detail

AddNoiseLogFilter

public AddNoiseLogFilter()
Method Detail

doFiltering

protected boolean doFiltering(ProcessInstance instance)
Filters a single process instance.

Specified by:
doFiltering in class LogFilter
Parameters:
instance - the process instance to filter
Returns:
true if the whole process instance passes the filter, false if the process instance should be discarded.

getSelectedNoiseTypes

public boolean[] getSelectedNoiseTypes()

setSelectedNoiseTypes

public void setSelectedNoiseTypes(int index,
                                  boolean value)

thisFilterChangesLog

protected boolean thisFilterChangesLog()
Description copied from class: LogFilter
Method to tell whether this LogFilter changes the log or not. This method is used in the compare method.

Specified by:
thisFilterChangesLog in class LogFilter
Returns:
boolean True if this LogFilter changes the process instance in the filter() method. False otherwise.

getParameterDialog

public LogFilterParameterDialog getParameterDialog(LogSummary summary)
Description copied from class: LogFilter
Returns a Panel for the setting of parameters. When a LogFilter can be added to a list in the framework. This panel is shown, and parameters can be set. When the dialog is closed, a new instance of a LogFilter is created by the framework by calling the getNewLogFilter method of the dialog.

Specified by:
getParameterDialog in class LogFilter
Parameters:
summary - A LogSummary to be used for setting parameters.
Returns:
JPanel

getHelpForThisLogFilter

protected java.lang.String getHelpForThisLogFilter()
Description copied from class: LogFilter
Returns the help for this LogFilter as HTML text, but without the and tags!

Specified by:
getHelpForThisLogFilter in class LogFilter
Returns:
the help as string

writeSpecificXML

protected void writeSpecificXML(java.io.BufferedWriter output)
                         throws java.io.IOException
Write the inside of the tag in the XML export file to the OutputStream output.

Specified by:
writeSpecificXML in class LogFilter
Parameters:
output - OutputStream
Throws:
java.io.IOException

readSpecificXML

protected void readSpecificXML(org.w3c.dom.Node logFilterSpecifcNode)
                        throws java.io.IOException
Read the inside of the tag in the XML export file from the InputStream input.

Specified by:
readSpecificXML in class LogFilter
Parameters:
input - InputStream
Throws:
java.io.IOException