GetChartByFolderAndSaveV2
public BackendReturnObject GetChartByFolderAndSaveV2(int folderId, bool isChartKeyIsName);
Parameters
Value | Type | Description |
---|---|---|
folderId | int | Chart folder ID |
isChartKeyIsName | bool | Whether to use the chart name as the key value of the chart to be saved true : Use the chart name specified in BACKND Console as the key value false : Use the chart's {uuid/id} as the key value |
Description
Calls and saves all chart file content under the specified folder created in BACKND Console's chart management.
- Depending on the parameters entered, the chart ID or the chart name set in BACKND Console is applied as the key.
- The content of the currently applied chart file is saved as the value.
- If there is no currently applied chart, it will not be saved.
Differences with GetChartByFolderAndSave
There are a few differences between this method and GetChartByFolderAndSave().
- Charts where files cannot be applied are excluded
- JSON return values do not have the 'old' column.
Note on migration from GetChartByFolderAndSave
Check the following when migrating from the GetChartByFolderAndSave() method to the GetChartByFolderAndSaveV2() method:
- If 'old' is used for parsing JSON(e.g., json["rows"][0]["S"]["old"].ToString())
- If there is a logic for charts without files applied
- If 'old' is used for parsing JSON(e.g., json["rows"][0]["S"]["old"].ToString())
- If there is a logic for charts without files applied
Example
Synchronous
Backend.Chart.GetChartByFolderAndSaveV2(1024, true);
Asynchronous
Backend.Chart.GetChartByFolderAndSaveV2(1024, true, callback =>
{
// Post-process
});
SendQueue
SendQueue.Enqueue(Backend.Chart.GetChartByFolderAndSaveV2, 1024, true, callback =>
{
// Post-process
});
Return cases
Success cases
When the lookup is successful
statusCode : 200
returnValue : refer to GetReturnValuetoJSON
GetReturnValuetoJSON
{
rows:
[
{
// Chart name
chartName: { S: "Monster chart" },
// Chart description
chartExplain: { NULL: true },
// Applied chart file id
selectedChartFileId: { N: "47" },
},
{
chartName: { S: "ItemChart" },
chartExplain: { S: "This chart has item information." },
selectedChartFileId: { N: "47333" },
}
]
}
Sample code
public class ChartCardV2 {
public string chartName; // Chart name
public string chartExplain; // Chart description
public int selectedChartFileId;// Chart file ID
public override string ToString() {
return $"chartName: {chartName}\n" +
$"chartExplain: {chartExplain}\n" +
$"selectedChartFileId: {selectedChartFileId}\n";
}
}
public void GetChartByFolderAndSaveV2Test() {
int folderId = 343;
var bro = Backend.Chart.GetChartByFolderAndSaveV2(folderId);
if(!bro.IsSuccess()) {
Debug.LogError("An error occurred : " + bro.ToString());
return;
}
List<ChartCardV2> chartCardList = new List<ChartCardV2>();
LitJson.JsonData json = bro.FlattenRows();
for(int i = 0; i < json.Count; i++) {
ChartCardV2 chartCard = new ChartCardV2();
chartCard.chartName = json[i]["chartName"].ToString();
chartCard.chartExplain = json[i]["chartExplain"].ToString();
chartCard.selectedChartFileId= json[i]["selectedChartFileId"].ToString();
chartCardList.Add(chartCard);
}
foreach(var chartCard in chartCardList) {
Debug.Log(chartCard.ToString() + "\n");
}
}