Interface StructureChecker

All Known Implementing Classes:
AbbreviatedGroupChecker, AbsentChiralFlagChecker, AbsoluteStereoConfigurationChecker, AbstractStructureChecker, AliasChecker, AromaticityErrorChecker, AtomChecker, AtomMapChecker, AtomQueryPropertyChecker, AtomTypeChecker, AtomValueChecker, AtropisomerChecker, AttachedDataChecker, BondAngleChecker, BondChecker, BondLengthChecker, BondTopologyChecker, BracketsChecker, ChiralFlagChecker, ChiralFlagErrorChecker, CircularRGroupReferenceChecker, ComponentChecker, CoordinationSystemErrorChecker, CovalentCounterionChecker, CrossedDoubleBondChecker, EmptyStructureChecker, ExplicitHydrogenChecker, ExplicitLonePairChecker, ExternalStructureChecker, EZDoubleBondChecker, IncorrectTetrahedralStereoChecker, InvalidChecker, IsotopeChecker, MetalloceneErrorChecker, MissingAtomMapChecker, MissingRGroupChecker, MoleculeChargeChecker, MultiCenterChecker, MultiComponentChecker, MultipleStereocenterChecker, NonStandardWedgeSchemeChecker, NonStereoWedgeBondChecker, OCRErrorChecker, OverlappingAtomsChecker, OverlappingBondsChecker, PseudoAtomChecker, QueryAtomChecker, QueryBondChecker, RacemateChecker, RadicalChecker, RareElementChecker, RatomChecker, ReactingCenterBondMarkChecker, ReactionChecker, ReactionMapErrorChecker, RelativeStereoChecker, RgroupAttachmentErrorChecker, RgroupBridgeRatomChecker, RingStrainErrorChecker, SolventChecker, StarAtomChecker, StereoCareBoxChecker, StereoInversionRetentionMarkChecker, StraightDoubleBondChecker, SubstructureChecker, ThreeDimensionChecker, UnbalancedReactionChecker, UnusedRGroupChecker, ValenceErrorChecker, ValencePropertyChecker, WedgeErrorChecker, WigglyBondChecker, WigglyDoubleBondChecker

@PublicAPI public interface StructureChecker
General interface describing functions that are available for a chemical structure checker. Structure checkers can detect various structural issues, but it is the responsibility of fixers to correct them. The result of checking contains information of the discovered issues.
Since:
Marvin 5.3
  • Field Details

    • PROPERTY_KEY_VALID

      static final String PROPERTY_KEY_VALID
      This property key used to be the key of the property change event of valid property
      See Also:
  • Method Details

    • check

      Detects a specific error in the molecule.
      Parameters:
      molecule - a Molecule instance have to be checked
      Returns:
      an instance of StructureCheckerResult (which contains all data needed to fix the problem) if the molecule contains the examined error, null otherwise
      Throws:
      NullPointerException - if molecule is null
    • getName

      String getName()
      Gets the name of the checker
      Returns:
      a human readable name
    • setName

      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Sets the name of the checker
      Parameters:
      name - the human-readable name of the checker
    • getLocalMenuName

      String getLocalMenuName()
      Gets the local menu name of the checker
      Returns:
      the name for the local menu
    • setLocalMenuName

      @Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) void setLocalMenuName(String localMenuName)
      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Set the local menu name of the checker
      Parameters:
      localMenuName - a String to be shown in the local menu
    • getHelpText

      String getHelpText()
      Gets the help text of the checker
      Returns:
      the help text of the checker
    • setHelpText

      @Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) void setHelpText(String helpText)
      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Sets the detailed help of the checker which will shown in the tooltip on the GUI
      Parameters:
      helpText - a String to be shown in the tooltip
    • setNoErrorMessage

      @Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) void setNoErrorMessage(String noError)
      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Sets the message which will given in the result if no error found
      Parameters:
      noError - the error message if no error found
    • setOneErrorMessage

      @Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) void setOneErrorMessage(String oneError)
      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Sets the message which will given in the result if one error found
      Parameters:
      oneError - the error message if one error found
    • setMoreErrorMessage

      @Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) void setMoreErrorMessage(String moreError)
      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Sets the message which will given in the result if two or more error found
      Parameters:
      moreError - the error message if two or more error found
    • getIcon

      Icon getIcon()
      Gets the Icon of the current checker
      Returns:
      the Icon of the current checker
    • setIcon

      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Sets the icon of the checker
      Parameters:
      icon - is an instance of Icon
    • getErrorType

      Returns:
      the error type of this checker
      Since:
      5.4
    • getErrorCode

      String getErrorCode()
      Returns the String represented error code of the checker (this error code should be used for external implementation support instead of getErrorType())
      Returns:
      the String represented error code of the checker (this error code should be used for external implementation support instead of getErrorType())
      Since:
      5.6
    • getEditorClassName

      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Returns:
      the name of the editor class of the checker
      Since:
      5.4
    • setDescription

      @Deprecated(forRemoval=true) @SubjectToRemoval(date=JUL_01_2025) void setDescription(String description)
      Deprecated, for removal: This API element is subject to removal in a future version.
      This method isn't needed anymore and will be removed in 6.0
      Sets the description of the checker
      Parameters:
      description - the description of the checker
      Since:
      5.4
    • getDescription

      String getDescription()
      Returns:
      the description of the checker
      Since:
      5.4
    • cloneItem

      StructureChecker cloneItem()
      Returns a clone of this StructureChecker instance
      Returns:
      a clone of this StructureChecker instance
      Since:
      5.4
    • isValid

      boolean isValid()
      Returns true if the checker's configuration is valid, false otherwise
      Returns:
      true if the checker's configuration is valid, false otherwise
      Since:
      5.7
    • isAvailable

      boolean isAvailable()
      Returns true if the checker is available, and can be used
      Returns:
      true if the checker is available, and can be used
      Since:
      5.7
    • getDescriptor

      Returns a StructureCheckerDescriptor instance which represents the user interface related informations of the checker
      Returns:
      a StructureCheckerDescriptor instance which represents the user interface related informations of the checker
      Since:
      5.7
    • removePropertyChangeListener

      void removePropertyChangeListener(String propertyName, PropertyChangeListener listener)
      Remove a PropertyChangeListener for a specific property. If listener was added more than once to the same event source for the specified property, it will be notified one less time after being removed. If propertyName is null, no exception is thrown and no action is taken. If listener is null, or was never added for the specified property, no exception is thrown and no action is taken.
      Parameters:
      propertyName - The name of the property that was listened on.
      listener - The PropertyChangeListener to be removed
      Since:
      5.7
      See Also:
    • addPropertyChangeListener

      void addPropertyChangeListener(String propertyName, PropertyChangeListener listener)
      Add a PropertyChangeListener for a specific property. The listener will be invoked only when a call on firePropertyChange names that specific property. The same listener object may be added more than once. For each property, the listener will be invoked the number of times it was added for that property. If propertyName or listener is null, no exception is thrown and no action is taken.
      Parameters:
      propertyName - The name of the property to listen on.
      listener - The PropertyChangeListener to be added
      Since:
      5.7
      See Also:
    • removePropertyChangeListener

      void removePropertyChangeListener(PropertyChangeListener listener)
      Remove a PropertyChangeListener from the listener list. This removes a PropertyChangeListener that was registered for all properties. If listener was added more than once to the same event source, it will be notified one less time after being removed. If listener is null, or was never added, no exception is thrown and no action is taken.
      Parameters:
      listener - The PropertyChangeListener to be removed
      Since:
      5.7
      See Also:
    • addPropertyChangeListener

      void addPropertyChangeListener(PropertyChangeListener listener)
      Add a PropertyChangeListener to the listener list. The listener is registered for all properties. The same listener object may be added more than once, and will be called as many times as it is added. If listener is null, no exception is thrown and no action is taken.
      Parameters:
      listener - The PropertyChangeListener to be added
      Since:
      5.7
      See Also: