gov.nih.nlm.mms.filters
Class SuppressibleTermgroupsFilter

java.lang.Object
  extended bygov.nih.nlm.mms.filters.AbstractFilter
      extended bygov.nih.nlm.mms.filters.SuppressibleTermgroupsFilter
All Implemented Interfaces:
Comparable, ConceptContentSelector, ConceptManipulator, Configurable, Filter, GUIConfigurable, SourcesToRemoveListener, SubsetListener

public class SuppressibleTermgroupsFilter
extends AbstractFilter
implements SourcesToRemoveListener, ConceptContentSelector, ConceptManipulator

Computes which content is suppressible and (optionally) removes it.

Author:
Deborah Shapiro

Field Summary
 
Fields inherited from class gov.nih.nlm.mms.filters.AbstractFilter
default_configuration, init_cui, subset_content, user_configuration
 
Constructor Summary
SuppressibleTermgroupsFilter()
          Instantiates an empty SuppressibleTermgroupsFilter.
 
Method Summary
protected  void addSuppressibleTermgroup(SourceTermType tg)
          Adds a SourceTermType to the list of suppressible termgroups.
 void applyChanges(Concept concept)
          Manipulates data in the Concept, but does not remove any data from the concept.
 void applySelections(Concept concept)
          Sets the suppressibility of atoms and removes suppressible content if advanced options indicate to do so.
 void clearConfirmDefaultSuppressibleTermgroups()
          Clears the list of SourceTermTypes that have been confirmed by the user to be suppressible.
protected  void clearSuppressibleTermgroups()
          Clears the list of suppressible SourceTermTypes.
 Color getColor()
          Returns the Color that should be used to display the name.
 String getConfigurationDetails()
          Returns configuration details for use in mmsys.log.
 List getConfirmDefaultSuppressibleTermgroups()
          Returns a list of SourceTermTypes that have been confirmed by the user via a dialog box to be suppressible.
 List getDefaultSuppressibleTermgroups()
          Returns an List containing all SourceTermTypes to be suppressed from the default termgroup list.
 JPanel getHelpPanel()
          Returns a help JPanel.
 String getName()
          Returns the filter name.
 JPanel getPanel()
          Returns the GUI panel that will display the filter's screen as one of the tabs on the main GUI window.
 Properties getProperties()
          Returns filter state.
 int getRowForTermgroup(SourceTermType tg)
          Maps a SourceTermType to a row number in the table.
 List getSuppressibleTermgroups()
          Returns the List containing all suppressible SourceTermTypes.
 Set getSuppressibleTermgroupSet()
          Returns the Set containing all suppressible SourceTermTypes.
 SortableJTable getSuppressibleTermgroupsTable()
          Returns the table that includes SourceTermTypes with the suppressible termgroups highlighted.
 String getTabDescription()
          Returns the description.
 SourceTermType getTermgroupAtRow(int tg)
          Maps a row number to the SourceTermType.
 boolean hasAdvancedOptions()
          Indicates whether or not an options menu item should be supplied for advanced configuration options.
 boolean isEfficientEnabled()
          Indicates if Filter can use the efficient mode during the "Initialize Cuis" phase of the subsetting process.
 boolean removeSuppressibleData()
          Indicates whether the Remove Suppressible Data option has been chosen on the Advanced Suppressibility Options panel.
protected  void removeSuppressibleTermgroup(SourceTermType tg)
          Removes a SourceTermType from the list of suppressible termgroups.
 void resetToDefaults()
          Resets state to defaults.
 void setConfiguration(ApplicationConfiguration c)
          Sets the ApplicationConfiguration.
 void setPanelSelections()
          Selects rows on the suppressiblity table for rows of termgroups that should be suppressed.
 void setProperties(Properties p)
          Sets filter state.
 void setRemoveSuppressibleData(boolean b)
          Sets the flag indicating whether or not suppressible data will be removed from the subset.
 void setSuppressibleTermgroups(List stgs)
          Sets the suppressible termgroups list with the one provided.
 void showOptions()
          Shows an advanced options GUI to the user.
 void sourcesToRemoveChanged(SourcesToRemoveEvent e)
          Resets the suppressiblity table when the user tabs between filters.
 
Methods inherited from class gov.nih.nlm.mms.filters.AbstractFilter
addDataChangeListener, applyFilter, beginInitializeCuiList, beginSubsetContent, compareTo, endInitializeCuiList, endSubsetContent, fireDataChanged, fireNotUndoableDataChanged, getGUIConfigurableForValidationFailure, getValidateMessage, getValidationErrors, getValidationWarnings, hasDataChanged, removeDataChangeListener, resetDataChanged, setConfiguration, setCuiList, setDataChanged, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface gov.nih.nlm.mms.filters.Filter
applyFilter
 
Methods inherited from interface gov.nih.nlm.mms.GUIConfigurable
addDataChangeListener, getGUIConfigurableForValidationFailure, getValidationErrors, getValidationWarnings, hasDataChanged, removeDataChangeListener, resetDataChanged, setDataChanged, validate
 
Methods inherited from interface gov.nih.nlm.mms.Configurable
setConfiguration
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface gov.nih.nlm.mms.SubsetListener
beginInitializeCuiList, beginSubsetContent, endInitializeCuiList, endSubsetContent, setCuiList
 

Constructor Detail

SuppressibleTermgroupsFilter

public SuppressibleTermgroupsFilter()
Instantiates an empty SuppressibleTermgroupsFilter.

Method Detail

getPanel

public JPanel getPanel()
Returns the GUI panel that will display the filter's screen as one of the tabs on the main GUI window.

Specified by:
getPanel in interface GUIConfigurable
Returns:
JPanel that displays graphical interface for the filter

setPanelSelections

public void setPanelSelections()
Selects rows on the suppressiblity table for rows of termgroups that should be suppressed.

Specified by:
setPanelSelections in interface GUIConfigurable

getTabDescription

public String getTabDescription()
Returns the description.

Specified by:
getTabDescription in interface GUIConfigurable
Returns:
the description

resetToDefaults

public void resetToDefaults()
Resets state to defaults.

Specified by:
resetToDefaults in interface Configurable

showOptions

public void showOptions()
Shows an advanced options GUI to the user.

Specified by:
showOptions in interface GUIConfigurable
Overrides:
showOptions in class AbstractFilter

hasAdvancedOptions

public boolean hasAdvancedOptions()
Indicates whether or not an options menu item should be supplied for advanced configuration options.

Specified by:
hasAdvancedOptions in interface GUIConfigurable
Overrides:
hasAdvancedOptions in class AbstractFilter
Returns:
true if so; false otherwise

getHelpPanel

public JPanel getHelpPanel()
Returns a help JPanel.

Specified by:
getHelpPanel in interface GUIConfigurable
Overrides:
getHelpPanel in class AbstractFilter
Returns:
a help JPanel

setConfiguration

public void setConfiguration(ApplicationConfiguration c)
Sets the ApplicationConfiguration. Used for "default" selections.

Specified by:
setConfiguration in interface Configurable
Overrides:
setConfiguration in class AbstractFilter
Parameters:
c - the ApplicationConfiguration

getProperties

public Properties getProperties()
Returns filter state.

Specified by:
getProperties in interface Configurable
Returns:
filter state as Properties

setProperties

public void setProperties(Properties p)
Sets filter state.

Specified by:
setProperties in interface Configurable
Parameters:
p - Properties representing filter state

applyChanges

public void applyChanges(Concept concept)
Manipulates data in the Concept, but does not remove any data from the concept.

Specified by:
applyChanges in interface ConceptManipulator
Parameters:
concept - Concept

applySelections

public void applySelections(Concept concept)
Sets the suppressibility of atoms and removes suppressible content if advanced options indicate to do so.

Specified by:
applySelections in interface ConceptContentSelector
Parameters:
concept - the current Concept

getName

public String getName()
Returns the filter name.

Specified by:
getName in interface GUIConfigurable
Returns:
the filter name

getConfigurationDetails

public String getConfigurationDetails()
Returns configuration details for use in mmsys.log.

Specified by:
getConfigurationDetails in interface Configurable
Returns:
configuration details for use in mmsys.log

clearSuppressibleTermgroups

protected void clearSuppressibleTermgroups()
Clears the list of suppressible SourceTermTypes.


addSuppressibleTermgroup

protected void addSuppressibleTermgroup(SourceTermType tg)
Adds a SourceTermType to the list of suppressible termgroups.

Parameters:
tg - the SourceTermType

removeSuppressibleTermgroup

protected void removeSuppressibleTermgroup(SourceTermType tg)
Removes a SourceTermType from the list of suppressible termgroups.

Parameters:
tg - SourceTermType

getDefaultSuppressibleTermgroups

public List getDefaultSuppressibleTermgroups()
Returns an List containing all SourceTermTypes to be suppressed from the default termgroup list.

Returns:
List of suppressed termgroups

getConfirmDefaultSuppressibleTermgroups

public List getConfirmDefaultSuppressibleTermgroups()
Returns a list of SourceTermTypes that have been confirmed by the user via a dialog box to be suppressible. Prevents user from being queried twice about a termgroup's suppressiblity.

Returns:
List of suppressed termgroups

clearConfirmDefaultSuppressibleTermgroups

public void clearConfirmDefaultSuppressibleTermgroups()
Clears the list of SourceTermTypes that have been confirmed by the user to be suppressible.


setSuppressibleTermgroups

public void setSuppressibleTermgroups(List stgs)
Sets the suppressible termgroups list with the one provided.

Parameters:
stgs - the List of SourceTermTypes

getSuppressibleTermgroups

public List getSuppressibleTermgroups()
Returns the List containing all suppressible SourceTermTypes.

Returns:
List of suppressible termgroups

getSuppressibleTermgroupSet

public Set getSuppressibleTermgroupSet()
Returns the Set containing all suppressible SourceTermTypes.

Returns:
Set of suppressible termgroups

removeSuppressibleData

public boolean removeSuppressibleData()
Indicates whether the Remove Suppressible Data option has been chosen on the Advanced Suppressibility Options panel.

Returns:
true if so, false otherwise

setRemoveSuppressibleData

public void setRemoveSuppressibleData(boolean b)
Sets the flag indicating whether or not suppressible data will be removed from the subset.

Parameters:
b - the flag indicating whether or not suppressible data will be removed from the subset

getSuppressibleTermgroupsTable

public SortableJTable getSuppressibleTermgroupsTable()
Returns the table that includes SourceTermTypes with the suppressible termgroups highlighted.

Returns:
SortableJTable

sourcesToRemoveChanged

public void sourcesToRemoveChanged(SourcesToRemoveEvent e)
Resets the suppressiblity table when the user tabs between filters. Removes entries visible in the table based on which sources are to be excluded.

Specified by:
sourcesToRemoveChanged in interface SourcesToRemoveListener
Parameters:
e - SourcesToRemoveEvent

getRowForTermgroup

public int getRowForTermgroup(SourceTermType tg)
Maps a SourceTermType to a row number in the table. This is necessary because only SourceTermTypes from sources that are not to be excluded will be visible in the table.

Parameters:
tg - the SourceTermType
Returns:
int row number of termgroup in table -1 if termgroup is to be excluded

getTermgroupAtRow

public SourceTermType getTermgroupAtRow(int tg)
Maps a row number to the SourceTermType. Adjusts for the SourceTermTypes that are not currently visible in the suppressibility table because their sources are to be excluded.

Parameters:
tg - int row in the suppressibility table
Returns:
SourceTermType located at that row in the table

getColor

public Color getColor()
Returns the Color that should be used to display the name.

Specified by:
getColor in interface GUIConfigurable
Overrides:
getColor in class AbstractFilter
Returns:
the Color

isEfficientEnabled

public boolean isEfficientEnabled()
Indicates if Filter can use the efficient mode during the "Initialize Cuis" phase of the subsetting process. The efficient mode reads only MRCONSO and MRSTY during the "Initialize Cuis" phase.

Specified by:
isEfficientEnabled in interface Filter
Returns:
true


Copyright ©2005