2022-02-14 12:23:13 +01:00
|
|
|
package org.gcube.application.geoportal.common.model.document.lifecycle;
|
2021-11-24 14:47:59 +01:00
|
|
|
|
|
|
|
import lombok.*;
|
|
|
|
|
2022-01-17 14:19:59 +01:00
|
|
|
import java.util.ArrayList;
|
2021-12-01 11:13:34 +01:00
|
|
|
import java.util.List;
|
|
|
|
|
2022-02-14 12:23:13 +01:00
|
|
|
@Data
|
2021-11-24 14:47:59 +01:00
|
|
|
public class LifecycleInformation {
|
2021-12-01 11:13:34 +01:00
|
|
|
|
2022-02-15 19:02:00 +01:00
|
|
|
public static final String DRAFT_PHASE="DRAFT";
|
|
|
|
|
2022-01-14 12:31:11 +01:00
|
|
|
public static final String PHASE="phase";
|
2022-02-14 12:23:13 +01:00
|
|
|
public static final String LAST_INVOKED_STEP="lastInvokedStep";
|
2022-01-14 12:31:11 +01:00
|
|
|
public static final String LAST_OPERATION_STATUS="lastOperationStatus";
|
|
|
|
public static final String ERROR_MESSAGES="errorMessages";
|
2022-02-14 12:23:13 +01:00
|
|
|
public static final String WARNING_MESSAGES="warningMessages";
|
|
|
|
public static final String TRIGGERED_EVENTS="triggeredEvents";
|
2022-01-14 12:31:11 +01:00
|
|
|
|
|
|
|
public static enum Status{
|
2022-01-17 14:19:59 +01:00
|
|
|
OK,ERROR,WARNING
|
2021-12-01 11:13:34 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
private String phase;
|
2022-02-14 12:23:13 +01:00
|
|
|
private String lastInvokedStep;
|
2021-12-01 11:13:34 +01:00
|
|
|
private Status lastOperationStatus;
|
|
|
|
private List<String> errorMessages;
|
|
|
|
private List<String> warningMessages;
|
2022-02-14 12:23:13 +01:00
|
|
|
private List<TriggeredEvents> triggeredEvents;
|
2021-12-01 11:13:34 +01:00
|
|
|
|
2022-01-17 14:19:59 +01:00
|
|
|
|
2022-02-17 16:01:39 +01:00
|
|
|
public LifecycleInformation addErrorMessage(String msg){
|
2022-01-17 14:19:59 +01:00
|
|
|
if(errorMessages==null)
|
|
|
|
errorMessages=new ArrayList<>();
|
|
|
|
errorMessages.add(msg);
|
2022-02-17 16:01:39 +01:00
|
|
|
return this;
|
2022-01-17 14:19:59 +01:00
|
|
|
}
|
2022-02-17 16:01:39 +01:00
|
|
|
public LifecycleInformation addWarningMessage(String msg){
|
2022-01-17 14:19:59 +01:00
|
|
|
if(warningMessages==null)
|
|
|
|
warningMessages=new ArrayList<>();
|
|
|
|
warningMessages.add(msg);
|
2022-02-17 16:01:39 +01:00
|
|
|
return this;
|
2022-01-17 14:19:59 +01:00
|
|
|
}
|
2022-02-14 12:23:13 +01:00
|
|
|
|
2022-02-17 16:01:39 +01:00
|
|
|
public LifecycleInformation addEventReport(TriggeredEvents info){
|
2022-02-14 12:23:13 +01:00
|
|
|
if(triggeredEvents==null) triggeredEvents=new ArrayList<>();
|
|
|
|
triggeredEvents.add(info);
|
2022-02-17 16:01:39 +01:00
|
|
|
return this;
|
|
|
|
}
|
|
|
|
|
|
|
|
public LifecycleInformation cleanState(){
|
|
|
|
setLastOperationStatus(null);
|
|
|
|
setLastInvokedStep(null);
|
|
|
|
setTriggeredEvents(new ArrayList<>());
|
|
|
|
setErrorMessages(new ArrayList<>());
|
|
|
|
setWarningMessages(new ArrayList<>());
|
|
|
|
return this;
|
2022-02-14 12:23:13 +01:00
|
|
|
}
|
2021-11-24 14:47:59 +01:00
|
|
|
}
|