in src/stepfunctions/steps/states.py [0:0]
def __init__(self, state_id, **kwargs):
"""
The Wait state **must contain exactly one** of `seconds`, `seconds_path`, `timestamp`, or `timestamp_path`.
Args:
state_id (str): State name whose length **must be** less than or equal to 128 unicode characters. State names **must be** unique within the scope of the whole state machine.
seconds (int): Wait duration specified in seconds.
seconds_path (str): Path applied to the state's input to select the wait duration in seconds.
timestamp (str): Absolute expiry time, specified as an ISO-8601 extended offset date-time format string.
timestamp_path (str): Path applied to the state's input to select the timestamp to be used for wait duration.
comment (str, optional): Human-readable comment or description. (default: None)
input_path (str, optional): Path applied to the state’s raw input to select some or all of it; that selection is used by the state. (default: '$')
output_path (str, optional): Path applied to the state’s output, producing the effective output which serves as the raw input for the next state. (default: '$')
"""
super(Wait, self).__init__(state_id, 'Wait', **kwargs)
if len([v for v in (self.seconds, self.timestamp, self.timestamp_path, self.seconds_path) if v is not None]) != 1:
raise ValueError("The Wait state MUST contain exactly one of 'seconds', 'seconds_path', 'timestamp' or 'timestamp_path'.")