Skip to main content
Version: Next

ActionConfig API Reference

Complete reference for all ActionConfig classes and their methods.

Base Classes

ActionConfig

Abstract base class for all action configurations.

public abstract class ActionConfig

Common Properties

PropertyTypeDefaultDescription
pauseBeforeBegindouble0.0Seconds to wait before executing
pauseAfterEnddouble0.0Seconds to wait after completion
illustrateIllustrateUSE_GLOBALIllustration setting
successCriteriaPredicate<ActionResult>nullCustom success validation
subsequentActionsList<ActionConfig>emptyChained actions
logTypeLogEventTypeACTIONLog event categorization

Common Methods

  • then(ActionConfig next) - Chain another action
  • getSubsequentActions() - Get chained actions
  • getIllustrate() - Get illustration setting

BaseFindOptions

Abstract base for all find operations.

public abstract class BaseFindOptions extends ActionConfig

Additional Properties

PropertyTypeDefaultDescription
similaritydouble0.7Minimum similarity score
searchRegionsSearchRegionsnullAreas to search
captureImagebooleantrueCapture screenshot
useDefinedRegionbooleanfalseUse predefined region
maxMatchesToActOnint-1Max matches (-1 = all)

Find Options

PatternFindOptions

Standard image pattern matching.

public class PatternFindOptions extends BaseFindOptions

Example

PatternFindOptions find = new PatternFindOptions.Builder()
.setSimilarity(0.85)
.setSearchRegions(regions)
.build();

HistogramFindOptions

Find by color histogram comparison.

public class HistogramFindOptions extends BaseFindOptions

Additional Properties

PropertyTypeDefaultDescription
hueBinsint30Hue histogram bins
saturationBinsint32Saturation bins
valueBinsint32Value/brightness bins
useGrayscalebooleanfalseUse grayscale histogram

MotionFindOptions

Detect motion between frames.

public class MotionFindOptions extends BaseFindOptions

Additional Properties

PropertyTypeDefaultDescription
motionThresholdint25Pixel difference threshold
minChangeAreaint100Minimum changed area
frameDelayint100Milliseconds between frames

VanishOptions

Wait for element to disappear.

public class VanishOptions extends BaseFindOptions

Additional Properties

PropertyTypeDefaultDescription
timeoutdouble5.0Maximum wait time in seconds

Click Options

ClickOptions

Mouse click configuration.

public class ClickOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
numberOfClicksint1Number of clicks
pressOptionsMousePressOptionsdefaultMouse button config
verificationOptionsVerificationOptionsnullPost-click verification

Example

ClickOptions doubleClick = new ClickOptions.Builder()
.setNumberOfClicks(2)
.setPressOptions(new MousePressOptions.Builder()
.setButton(MouseButton.LEFT)
.setPauseBetweenClicks(0.1)
.build())
.build();

MousePressOptions

Reusable mouse press configuration (not an ActionConfig).

public class MousePressOptions

Properties

PropertyTypeDefaultDescription
buttonMouseButtonLEFTWhich button to press
pauseBeforeMouseDowndouble0.3Pause before press
pauseAfterMouseDowndouble0.3Pause after press
pauseBeforeMouseUpdouble0.3Pause before release
pauseAfterMouseUpdouble0.3Pause after release
pauseBetweenClicksdouble0.3Pause between multi-clicks

Type Options

TypeOptions

Keyboard input configuration.

public class TypeOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
textStringnullText to type
keysList<Key>emptySpecial keys to press
modifierKeysString[]emptyModifier keys (ctrl, shift, alt)
pauseBeforeKeyDowndouble0.0Pause before key press
pauseAfterKeyUpdouble0.0Pause after key release
typeDelaydouble0.03Delay between characters

Example

TypeOptions typeWithModifiers = new TypeOptions.Builder()
.setText("s")
.setModifierKeys("ctrl", "shift")
.build();

Mouse Movement Options

MouseMoveOptions

Mouse movement configuration.

public class MouseMoveOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
locationLocationnullTarget location
moveTimedouble0.5Movement duration
movementPatternMovementPatternSMOOTHMovement style

MouseDownOptions

Mouse button press (without release).

public class MouseDownOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
pressOptionsMousePressOptionsdefaultButton configuration

MouseUpOptions

Mouse button release.

public class MouseUpOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
pressOptionsMousePressOptionsdefaultButton configuration

ScrollMouseWheelOptions

Mouse wheel scrolling.

public class ScrollMouseWheelOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
directionScrollDirectionDOWNScroll direction
clicksint3Number of scroll clicks
pauseBetweenScrollsdouble0.1Pause between scrolls

Visual Options

DefineRegionOptions

Define a screen region.

public class DefineRegionOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
regionTypeRegionTypeDYNAMICType of region
anchorPointAnchorPointCENTERAnchor position
offsetXint0X offset from anchor
offsetYint0Y offset from anchor
widthint0Region width
heightint0Region height

HighlightOptions

Visual highlighting.

public class HighlightOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
durationdouble2.0Highlight duration
colorColorREDHighlight color
lineWidthint3Border width

Composite Options

DragOptions

Drag and drop configuration.

public class DragOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
fromOptionsBaseFindOptionsrequiredFind source
toOptionsBaseFindOptionsrequiredFind target
holdTimedouble0.5Hold before drag
dragSpeedDragSpeedNORMALDrag speed

Example

DragOptions drag = new DragOptions.Builder()
.setFromOptions(new PatternFindOptions.Builder()
.setSimilarity(0.9)
.build())
.setToOptions(new PatternFindOptions.Builder()
.setSimilarity(0.9)
.build())
.build();

ClickUntilOptions

Click repeatedly until condition.

public class ClickUntilOptions extends ActionConfig

Properties

PropertyTypeDefaultDescription
clickOptionsClickOptionsrequiredClick configuration
untilConditionUntilConditionrequiredStop condition
conditionObjectsObjectCollectionnullObjects to monitor
maxIterationsint10Maximum attempts
delayBetweenClicksdouble1.0Delay between clicks

Supporting Classes

VerificationOptions

Post-action verification (not an ActionConfig).

public class VerificationOptions

Properties

PropertyTypeDefaultDescription
eventEventNONEWhat to verify
conditionConditionCONTINUE_UNTIL_CONDITION_METHow to verify
objectCollectionObjectCollectionnullObjects to verify
textStringnullText to verify

Event Types

  • NONE - No verification
  • OBJECTS_APPEAR - Wait for objects to appear
  • OBJECTS_VANISH - Wait for objects to disappear
  • TEXT_APPEARS - Wait for text to appear
  • TEXT_VANISHES - Wait for text to disappear

ActionChainOptions

Configuration for chained action execution.

public class ActionChainOptions

Properties

PropertyTypeDefaultDescription
initialActionActionConfigrequiredFirst action
chainedActionsList<ActionConfig>emptySubsequent actions
strategyChainingStrategyNESTEDExecution strategy

Chaining Strategies

  • NESTED - Each action searches within previous results
  • CONFIRM - Each action validates previous results

Enumerations

MouseButton

public enum MouseButton {
LEFT, RIGHT, MIDDLE
}

ScrollDirection

public enum ScrollDirection {
UP, DOWN, LEFT, RIGHT
}

Illustrate

public enum Illustrate {
YES, // Always illustrate
NO, // Never illustrate
USE_GLOBAL // Use framework setting
}

Builder Pattern

All ActionConfig classes use the builder pattern:

// General pattern
XxxOptions options = new XxxOptions.Builder()
.setProperty1(value1)
.setProperty2(value2)
.build();

// With chaining
ActionConfig chain = new XxxOptions.Builder()
.setProperty(value)
.then(new YyyOptions.Builder()
.setProperty(value)
.build())
.build();

Common Methods

All builders inherit these methods from ActionConfig.Builder:

  • setPauseBeforeBegin(double seconds)
  • setPauseAfterEnd(double seconds)
  • setIllustrate(Illustrate setting)
  • setSuccessCriteria(Predicate<ActionResult> criteria)
  • setLogType(LogEventType logType)
  • then(ActionConfig next)
  • build()