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());
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// if we're restoring an old state, we can discard a previously stored updatedFrontendStepList - //
|
||||
// it is only needed on the transitional edge from a backend-step to a frontend step, but not //
|
||||
// in the other directly //
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
optionalProcessState.get().setUpdatedFrontendStepList(null);
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// 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 //
|
||||
// in the other directly //
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
optionalProcessState.get().setProcessMetaDataAdjustment(null);
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// 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.Optional;
|
||||
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 Optional<String> nextStepName = Optional.empty();
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// maybe, remove this altogether - just let the frontend compute & send if needed... but how does it know last version...? //
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
private List<QFrontendStepMetaData> updatedFrontendStepList = null;
|
||||
private ProcessMetaDataAdjustment processMetaDataAdjustment = 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);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -374,7 +374,13 @@ public class RunBackendStepOutput extends AbstractActionOutput implements Serial
|
||||
.map(step -> (QFrontendStepMetaData) step)
|
||||
.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.data.QRecord;
|
||||
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;
|
||||
|
||||
|
||||
@ -336,7 +337,12 @@ public class RunProcessOutput extends AbstractActionOutput implements Serializab
|
||||
*******************************************************************************/
|
||||
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()
|
||||
{
|
||||
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 //
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
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 //
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
if(streamedBackendStepOutput.getUpdatedFrontendStepList() != null)
|
||||
if(streamedBackendStepOutput.getProcessMetaDataAdjustment() != null)
|
||||
{
|
||||
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 //
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
if(streamedBackendStepOutput.getUpdatedFrontendStepList() != null)
|
||||
if(streamedBackendStepOutput.getProcessMetaDataAdjustment() != null)
|
||||
{
|
||||
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 //
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
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 //
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
if(streamedBackendStepOutput.getUpdatedFrontendStepList() != null)
|
||||
if(streamedBackendStepOutput.getProcessMetaDataAdjustment() != null)
|
||||
{
|
||||
runBackendStepOutput.getProcessState().setStepList(streamedBackendStepOutput.getProcessState().getStepList());
|
||||
runBackendStepOutput.setUpdatedFrontendStepList(streamedBackendStepOutput.getUpdatedFrontendStepList());
|
||||
runBackendStepOutput.getProcessState().setProcessMetaDataAdjustment(streamedBackendStepOutput.getProcessMetaDataAdjustment());
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////
|
||||
|
@ -145,9 +145,9 @@ public class StreamedETLValidateStep extends BaseStreamedETLStep implements Back
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// 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 //
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
if(streamedBackendStepOutput.getUpdatedFrontendStepList() != null)
|
||||
if(streamedBackendStepOutput.getProcessMetaDataAdjustment() != null)
|
||||
{
|
||||
runBackendStepOutput.getProcessState().setStepList(streamedBackendStepOutput.getProcessState().getStepList());
|
||||
runBackendStepOutput.setUpdatedFrontendStepList(streamedBackendStepOutput.getUpdatedFrontendStepList());
|
||||
runBackendStepOutput.setProcessMetaDataAdjustment(streamedBackendStepOutput.getProcessMetaDataAdjustment());
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////
|
||||
|
@ -453,11 +453,19 @@ public class QJavalinProcessHandler
|
||||
resultForCaller.put("values", runProcessOutput.getValues());
|
||||
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();
|
||||
if(updatedFrontendStepList != null)
|
||||
{
|
||||
resultForCaller.put("updatedFrontendStepList", updatedFrontendStepList);
|
||||
}
|
||||
|
||||
if(runProcessOutput.getProcessMetaDataAdjustment() != null)
|
||||
{
|
||||
resultForCaller.put("processMetaDataAdjustment", runProcessOutput.getProcessMetaDataAdjustment());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user