GetChartByFolderAndSaveV2
public BackendReturnObject GetChartByFolderAndSaveV2(int folderId, bool isChartKeyIsName);
The new CDN chart feature, which significantly improves the speed of the existing chart functionality, is now available.\ Please use this feature for much faster data look up and storage.
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
The functionality is nearly identical to GetChartByFolderAndSave(), but the following differences exist.
- Charts where files cannot be applied are excluded
- JSON return values do not have the 'old' column.
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\ :::
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
});
ReturnCase
Success cases
When the lookup is successful\ statusCode : 200\ message : Success\ 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");
}
}