package com.eactive.eai.common.worker;

// SA 인터페이스 유형에서 요청에 대한 응답을 맞추기 위해 Outbound 인터페이스에서 사용하는 Worker Action
public interface Action {
	// Action의 고유 ID를 반환
	public String getId();

	// Action의 고유 ID를 Setting하고, Action의 초기화
	public void doInit(String id) throws ActionException;

	// 요청에 대한 응답 메시지를 수신하기위한 전처리
	public void doStart(Slot slot) throws ActionException;

	// 초기화 로직에 대한 Undo 로직을 처리
	public void doEnd() throws ActionException;

	// 요청에 대한 응답 메시지를 받기 위한 초기화가 되었는지 Flag를 반환
	public boolean isReady();
}
