mirror of
https://github.com/Kingsrook/qqq.git
synced 2025-07-18 05:01:07 +00:00
CE-1727 - migrating from updatedFrontendStepList to processMetaDataAdjustment - so one can update fields in a process (original intent for inline PVS's)
This commit is contained in:
@ -335,12 +335,12 @@ public class RunProcessAction
|
|||||||
///////////////////////////////////////////////////
|
///////////////////////////////////////////////////
|
||||||
runProcessInput.seedFromProcessState(optionalProcessState.get());
|
runProcessInput.seedFromProcessState(optionalProcessState.get());
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// if we're restoring an old state, we can discard a previously stored updatedFrontendStepList - //
|
// if we're restoring an old state, we can discard a previously stored processMetaDataAdjustment - //
|
||||||
// it is only needed on the transitional edge from a backend-step to a frontend step, but not //
|
// it is only needed on the transitional edge from a backend-step to a frontend step, but not //
|
||||||
// in the other directly //
|
// in the other directly //
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
optionalProcessState.get().setUpdatedFrontendStepList(null);
|
optionalProcessState.get().setProcessMetaDataAdjustment(null);
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
// if there were values from the caller, put those (back) in the request //
|
// if there were values from the caller, put those (back) in the request //
|
||||||
|
@ -29,7 +29,6 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import com.kingsrook.qqq.backend.core.model.data.QRecord;
|
import com.kingsrook.qqq.backend.core.model.data.QRecord;
|
||||||
import com.kingsrook.qqq.backend.core.model.metadata.processes.QFrontendStepMetaData;
|
|
||||||
|
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
@ -42,10 +41,7 @@ public class ProcessState implements Serializable
|
|||||||
private List<String> stepList = new ArrayList<>();
|
private List<String> stepList = new ArrayList<>();
|
||||||
private Optional<String> nextStepName = Optional.empty();
|
private Optional<String> nextStepName = Optional.empty();
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
private ProcessMetaDataAdjustment processMetaDataAdjustment = null;
|
||||||
// maybe, remove this altogether - just let the frontend compute & send if needed... but how does it know last version...? //
|
|
||||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
||||||
private List<QFrontendStepMetaData> updatedFrontendStepList = null;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -148,33 +144,36 @@ public class ProcessState implements Serializable
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
** Getter for updatedFrontendStepList
|
** Getter for processMetaDataAdjustment
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public List<QFrontendStepMetaData> getUpdatedFrontendStepList()
|
public ProcessMetaDataAdjustment getProcessMetaDataAdjustment()
|
||||||
{
|
{
|
||||||
return (this.updatedFrontendStepList);
|
return (this.processMetaDataAdjustment);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
** Setter for updatedFrontendStepList
|
** Setter for processMetaDataAdjustment
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public void setUpdatedFrontendStepList(List<QFrontendStepMetaData> updatedFrontendStepList)
|
public void setProcessMetaDataAdjustment(ProcessMetaDataAdjustment processMetaDataAdjustment)
|
||||||
{
|
{
|
||||||
this.updatedFrontendStepList = updatedFrontendStepList;
|
this.processMetaDataAdjustment = processMetaDataAdjustment;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
** Fluent setter for updatedFrontendStepList
|
** Fluent setter for processMetaDataAdjustment
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public ProcessState withUpdatedFrontendStepList(List<QFrontendStepMetaData> updatedFrontendStepList)
|
public ProcessState withProcessMetaDataAdjustment(ProcessMetaDataAdjustment processMetaDataAdjustment)
|
||||||
{
|
{
|
||||||
this.updatedFrontendStepList = updatedFrontendStepList;
|
this.processMetaDataAdjustment = processMetaDataAdjustment;
|
||||||
return (this);
|
return (this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -374,7 +374,13 @@ public class RunBackendStepOutput extends AbstractActionOutput implements Serial
|
|||||||
.map(step -> (QFrontendStepMetaData) step)
|
.map(step -> (QFrontendStepMetaData) step)
|
||||||
.toList());
|
.toList());
|
||||||
|
|
||||||
setUpdatedFrontendStepList(updatedFrontendStepList);
|
ProcessMetaDataAdjustment processMetaDataAdjustment = getProcessMetaDataAdjustment();
|
||||||
|
if(processMetaDataAdjustment == null)
|
||||||
|
{
|
||||||
|
processMetaDataAdjustment = new ProcessMetaDataAdjustment();
|
||||||
|
}
|
||||||
|
processMetaDataAdjustment.setUpdatedFrontendStepList(updatedFrontendStepList);
|
||||||
|
setProcessMetaDataAdjustment(processMetaDataAdjustment);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -411,21 +417,21 @@ public class RunBackendStepOutput extends AbstractActionOutput implements Serial
|
|||||||
|
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
** Getter for updatedFrontendStepList
|
** Getter for ProcessMetaDataAdjustment (pass-through to processState)
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public List<QFrontendStepMetaData> getUpdatedFrontendStepList()
|
public ProcessMetaDataAdjustment getProcessMetaDataAdjustment()
|
||||||
{
|
{
|
||||||
return (this.processState.getUpdatedFrontendStepList());
|
return (this.processState.getProcessMetaDataAdjustment());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
** Setter for updatedFrontendStepList
|
** Setter for updatedFrontendStepList (pass-through to processState)
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public void setUpdatedFrontendStepList(List<QFrontendStepMetaData> updatedFrontendStepList)
|
public void setProcessMetaDataAdjustment(ProcessMetaDataAdjustment processMetaDataAdjustment)
|
||||||
{
|
{
|
||||||
this.processState.setUpdatedFrontendStepList(updatedFrontendStepList);
|
this.processState.setProcessMetaDataAdjustment(processMetaDataAdjustment);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -33,6 +33,7 @@ import java.util.Optional;
|
|||||||
import com.kingsrook.qqq.backend.core.model.actions.AbstractActionOutput;
|
import com.kingsrook.qqq.backend.core.model.actions.AbstractActionOutput;
|
||||||
import com.kingsrook.qqq.backend.core.model.data.QRecord;
|
import com.kingsrook.qqq.backend.core.model.data.QRecord;
|
||||||
import com.kingsrook.qqq.backend.core.model.metadata.processes.QFrontendStepMetaData;
|
import com.kingsrook.qqq.backend.core.model.metadata.processes.QFrontendStepMetaData;
|
||||||
|
import com.kingsrook.qqq.backend.core.utils.ObjectUtils;
|
||||||
import com.kingsrook.qqq.backend.core.utils.ValueUtils;
|
import com.kingsrook.qqq.backend.core.utils.ValueUtils;
|
||||||
|
|
||||||
|
|
||||||
@ -336,7 +337,12 @@ public class RunProcessOutput extends AbstractActionOutput implements Serializab
|
|||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public void setUpdatedFrontendStepList(List<QFrontendStepMetaData> updatedFrontendStepList)
|
public void setUpdatedFrontendStepList(List<QFrontendStepMetaData> updatedFrontendStepList)
|
||||||
{
|
{
|
||||||
this.processState.setUpdatedFrontendStepList(updatedFrontendStepList);
|
if(this.processState.getProcessMetaDataAdjustment() == null)
|
||||||
|
{
|
||||||
|
this.processState.setProcessMetaDataAdjustment(new ProcessMetaDataAdjustment());
|
||||||
|
}
|
||||||
|
|
||||||
|
this.processState.getProcessMetaDataAdjustment().setUpdatedFrontendStepList(updatedFrontendStepList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -346,7 +352,27 @@ public class RunProcessOutput extends AbstractActionOutput implements Serializab
|
|||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
public List<QFrontendStepMetaData> getUpdatedFrontendStepList()
|
public List<QFrontendStepMetaData> getUpdatedFrontendStepList()
|
||||||
{
|
{
|
||||||
return this.processState.getUpdatedFrontendStepList();
|
return ObjectUtils.tryElse(() -> this.processState.getProcessMetaDataAdjustment().getUpdatedFrontendStepList(), null);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
** Getter for processMetaDataAdjustment
|
||||||
|
*******************************************************************************/
|
||||||
|
public ProcessMetaDataAdjustment getProcessMetaDataAdjustment()
|
||||||
|
{
|
||||||
|
return (this.processState.getProcessMetaDataAdjustment());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*******************************************************************************
|
||||||
|
** Setter for processMetaDataAdjustment
|
||||||
|
*******************************************************************************/
|
||||||
|
public void setProcessMetaDataAdjustment(ProcessMetaDataAdjustment processMetaDataAdjustment)
|
||||||
|
{
|
||||||
|
this.processState.setProcessMetaDataAdjustment(processMetaDataAdjustment);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -176,9 +176,9 @@ public class StreamedETLExecuteStep extends BaseStreamedETLStep implements Backe
|
|||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
// propagate data from inner-step state to process-level step state //
|
// propagate data from inner-step state to process-level step state //
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
if(postRunOutput.getUpdatedFrontendStepList() != null)
|
if(postRunOutput.getProcessMetaDataAdjustment() != null)
|
||||||
{
|
{
|
||||||
runBackendStepOutput.setUpdatedFrontendStepList(postRunOutput.getUpdatedFrontendStepList());
|
runBackendStepOutput.setProcessMetaDataAdjustment(postRunOutput.getProcessMetaDataAdjustment());
|
||||||
}
|
}
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
@ -281,10 +281,10 @@ public class StreamedETLExecuteStep extends BaseStreamedETLStep implements Backe
|
|||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
// propagate data from inner-step state to process-level step state //
|
// propagate data from inner-step state to process-level step state //
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
if(streamedBackendStepOutput.getUpdatedFrontendStepList() != null)
|
if(streamedBackendStepOutput.getProcessMetaDataAdjustment() != null)
|
||||||
{
|
{
|
||||||
runBackendStepOutput.getProcessState().setStepList(streamedBackendStepOutput.getProcessState().getStepList());
|
runBackendStepOutput.getProcessState().setStepList(streamedBackendStepOutput.getProcessState().getStepList());
|
||||||
runBackendStepOutput.setUpdatedFrontendStepList(streamedBackendStepOutput.getUpdatedFrontendStepList());
|
runBackendStepOutput.getProcessState().setProcessMetaDataAdjustment(streamedBackendStepOutput.getProcessMetaDataAdjustment());
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////
|
////////////////////////////////////////////////
|
||||||
@ -299,10 +299,10 @@ public class StreamedETLExecuteStep extends BaseStreamedETLStep implements Backe
|
|||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
// propagate data from inner-step state to process-level step state //
|
// propagate data from inner-step state to process-level step state //
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
if(streamedBackendStepOutput.getUpdatedFrontendStepList() != null)
|
if(streamedBackendStepOutput.getProcessMetaDataAdjustment() != null)
|
||||||
{
|
{
|
||||||
runBackendStepOutput.getProcessState().setStepList(streamedBackendStepOutput.getProcessState().getStepList());
|
runBackendStepOutput.getProcessState().setStepList(streamedBackendStepOutput.getProcessState().getStepList());
|
||||||
runBackendStepOutput.setUpdatedFrontendStepList(streamedBackendStepOutput.getUpdatedFrontendStepList());
|
runBackendStepOutput.getProcessState().setProcessMetaDataAdjustment(streamedBackendStepOutput.getProcessMetaDataAdjustment());
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////
|
||||||
|
@ -148,9 +148,9 @@ public class StreamedETLPreviewStep extends BaseStreamedETLStep implements Backe
|
|||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
// propagate data from inner-step state to process-level step state //
|
// propagate data from inner-step state to process-level step state //
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
if(postRunOutput.getUpdatedFrontendStepList() != null)
|
if(postRunOutput.getProcessMetaDataAdjustment() != null)
|
||||||
{
|
{
|
||||||
runBackendStepOutput.setUpdatedFrontendStepList(postRunOutput.getUpdatedFrontendStepList());
|
runBackendStepOutput.setProcessMetaDataAdjustment(postRunOutput.getProcessMetaDataAdjustment());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -219,10 +219,9 @@ public class StreamedETLPreviewStep extends BaseStreamedETLStep implements Backe
|
|||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
// propagate data from inner-step state to process-level step state //
|
// propagate data from inner-step state to process-level step state //
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
if(streamedBackendStepOutput.getUpdatedFrontendStepList() != null)
|
if(streamedBackendStepOutput.getProcessMetaDataAdjustment() != null)
|
||||||
{
|
{
|
||||||
runBackendStepOutput.getProcessState().setStepList(streamedBackendStepOutput.getProcessState().getStepList());
|
runBackendStepOutput.getProcessState().setProcessMetaDataAdjustment(streamedBackendStepOutput.getProcessMetaDataAdjustment());
|
||||||
runBackendStepOutput.setUpdatedFrontendStepList(streamedBackendStepOutput.getUpdatedFrontendStepList());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
////////////////////////////////////////////////////
|
////////////////////////////////////////////////////
|
||||||
|
@ -145,9 +145,9 @@ public class StreamedETLValidateStep extends BaseStreamedETLStep implements Back
|
|||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
// propagate data from inner-step state to process-level step state //
|
// propagate data from inner-step state to process-level step state //
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
if(postRunOutput.getUpdatedFrontendStepList() != null)
|
if(postRunOutput.getProcessMetaDataAdjustment() != null)
|
||||||
{
|
{
|
||||||
runBackendStepOutput.setUpdatedFrontendStepList(postRunOutput.getUpdatedFrontendStepList());
|
runBackendStepOutput.setProcessMetaDataAdjustment(postRunOutput.getProcessMetaDataAdjustment());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -183,10 +183,9 @@ public class StreamedETLValidateStep extends BaseStreamedETLStep implements Back
|
|||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
// propagate data from inner-step state to process-level step state //
|
// propagate data from inner-step state to process-level step state //
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
if(streamedBackendStepOutput.getUpdatedFrontendStepList() != null)
|
if(streamedBackendStepOutput.getProcessMetaDataAdjustment() != null)
|
||||||
{
|
{
|
||||||
runBackendStepOutput.getProcessState().setStepList(streamedBackendStepOutput.getProcessState().getStepList());
|
runBackendStepOutput.setProcessMetaDataAdjustment(streamedBackendStepOutput.getProcessMetaDataAdjustment());
|
||||||
runBackendStepOutput.setUpdatedFrontendStepList(streamedBackendStepOutput.getUpdatedFrontendStepList());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
///////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////
|
||||||
|
@ -453,11 +453,19 @@ public class QJavalinProcessHandler
|
|||||||
resultForCaller.put("values", runProcessOutput.getValues());
|
resultForCaller.put("values", runProcessOutput.getValues());
|
||||||
runProcessOutput.getProcessState().getNextStepName().ifPresent(nextStep -> resultForCaller.put("nextStep", nextStep));
|
runProcessOutput.getProcessState().getNextStepName().ifPresent(nextStep -> resultForCaller.put("nextStep", nextStep));
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// todo - delete after all frontends look for processMetaDataAdjustment instead of updatedFrontendStepList //
|
||||||
|
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
List<QFrontendStepMetaData> updatedFrontendStepList = runProcessOutput.getUpdatedFrontendStepList();
|
List<QFrontendStepMetaData> updatedFrontendStepList = runProcessOutput.getUpdatedFrontendStepList();
|
||||||
if(updatedFrontendStepList != null)
|
if(updatedFrontendStepList != null)
|
||||||
{
|
{
|
||||||
resultForCaller.put("updatedFrontendStepList", updatedFrontendStepList);
|
resultForCaller.put("updatedFrontendStepList", updatedFrontendStepList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(runProcessOutput.getProcessMetaDataAdjustment() != null)
|
||||||
|
{
|
||||||
|
resultForCaller.put("processMetaDataAdjustment", runProcessOutput.getProcessMetaDataAdjustment());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user