package com.oguerreiro.resilient.activities.inputDataImporter;

import java.util.concurrent.CompletableFuture;

import com.oguerreiro.resilient.activity.Activity;
import com.oguerreiro.resilient.activity.GenericGuide;
import com.oguerreiro.resilient.activity.GenericResult;
import com.oguerreiro.resilient.domain.InputDataUpload;
import com.oguerreiro.resilient.domain.enumeration.UploadStatus;

public interface POIFileImporterActivity extends Activity<GenericResult, GenericGuide<InputDataUpload>> {	
	CompletableFuture<GenericResult> doInternalActivityAsync(GenericGuide<InputDataUpload> guide);
	Integer countErrors(InputDataUpload inputDataUpload);
	
	InputDataUpload updateStateWithNewTransaction(InputDataUpload inputDataUpload, UploadStatus newUploadStatus);
}
