Move api name & version into ScriptRevision; make the records that go into record-scripts be api versions of records.

This commit is contained in:
2023-04-28 12:11:56 -05:00
parent 4135607a4c
commit 6f99111c52
15 changed files with 283 additions and 99 deletions

View File

@ -118,7 +118,7 @@ public class ApiInstanceMetaDataProvider
ApiInstanceMetaDataContainer apiInstanceMetaDataContainer = ApiInstanceMetaDataContainer.of(instance);
for(Map.Entry<String, ApiInstanceMetaData> entry : apiInstanceMetaDataContainer.getApis().entrySet())
{
apiNamePossibleValues.add(new QPossibleValue<>(entry.getKey()));
apiNamePossibleValues.add(new QPossibleValue<>(entry.getKey(), entry.getValue().getLabel()));
ApiInstanceMetaData apiInstanceMetaData = entry.getValue();
allVersions.addAll(apiInstanceMetaData.getPastVersions());

View File

@ -28,11 +28,13 @@ import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import com.kingsrook.qqq.api.actions.ApiImplementation;
import com.kingsrook.qqq.api.actions.QRecordApiAdapter;
import com.kingsrook.qqq.api.model.APIVersion;
import com.kingsrook.qqq.api.model.metadata.ApiInstanceMetaData;
import com.kingsrook.qqq.api.model.metadata.ApiInstanceMetaDataContainer;
import com.kingsrook.qqq.backend.core.context.QContext;
import com.kingsrook.qqq.backend.core.exceptions.QException;
import com.kingsrook.qqq.backend.core.model.data.QRecord;
/*******************************************************************************
@ -49,20 +51,30 @@ public class ApiScriptUtils implements Serializable
** Constructor
**
*******************************************************************************/
public ApiScriptUtils()
public ApiScriptUtils(String apiName, String apiVersion)
{
setApiName(apiName);
setApiVersion(apiVersion);
}
/*******************************************************************************
** Constructor
**
*******************************************************************************/
public ApiScriptUtils(String apiName, String apiVersion)
public static ArrayList<Map<String, Serializable>> qRecordListToApiRecordList(List<QRecord> qRecordList, String tableName, String apiName, String apiVersion) throws QException
{
setApiName(apiName);
setApiVersion(apiVersion);
if(qRecordList == null)
{
return (null);
}
ArrayList<Map<String, Serializable>> rs = new ArrayList<>();
for(QRecord qRecord : qRecordList)
{
rs.add(QRecordApiAdapter.qRecordToApiMap(qRecord, tableName, apiName, apiVersion));
}
return (rs);
}

View File

@ -267,10 +267,7 @@ class ApiScriptUtilsTest extends BaseTest
*******************************************************************************/
private static ApiScriptUtils newDefaultApiScriptUtils()
{
ApiScriptUtils apiScriptUtils = new ApiScriptUtils();
apiScriptUtils.setApiName(TestUtils.API_NAME);
apiScriptUtils.setApiVersion(TestUtils.CURRENT_API_VERSION);
return apiScriptUtils;
return (new ApiScriptUtils(TestUtils.API_NAME, TestUtils.CURRENT_API_VERSION));
}
}