SystemMailMeta 데이터 로드 추가
This commit is contained in:
@@ -29,6 +29,7 @@ public class MetaDataFileLoader {
|
||||
private final Map<Integer, MetaLandData> lands;
|
||||
private final Map<Integer, MetaBattleConfigData> battleConfigs;
|
||||
private final Map<Integer, MetaBattleRewardData> battleRewards;
|
||||
private final Map<String, MetaSystemMailData> systemMails;
|
||||
|
||||
public MetaDataFileLoader(JsonFileReader jsonFileReader) {
|
||||
this.jsonFileReader = jsonFileReader;
|
||||
@@ -42,6 +43,7 @@ public class MetaDataFileLoader {
|
||||
this.lands = new ConcurrentHashMap<>();
|
||||
this.battleConfigs = new ConcurrentHashMap<>();
|
||||
this.battleRewards = new ConcurrentHashMap<>();
|
||||
this.systemMails = new ConcurrentHashMap<>();
|
||||
}
|
||||
|
||||
@PostConstruct
|
||||
@@ -72,6 +74,7 @@ public class MetaDataFileLoader {
|
||||
loadClothType();
|
||||
loadBattleConfig();
|
||||
loadBattleReward();
|
||||
loadSystemMail();
|
||||
}catch(MetaDataException e){
|
||||
log.error("Failed to initialize metadata", e);
|
||||
throw e;
|
||||
@@ -152,6 +155,9 @@ public class MetaDataFileLoader {
|
||||
.sorted(Comparator.comparing(MetaBattleRewardData::getGroupID)) // groupId 기준으로 정렬
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
public List<MetaSystemMailData> getMetaSystemMail() {
|
||||
return new ArrayList<>(systemMails.values());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -329,6 +335,7 @@ public class MetaDataFileLoader {
|
||||
item.setLandDesc((String)meta.get("LandDesc"));
|
||||
item.setLandSize((String)meta.get("LandSize"));
|
||||
item.setLandType((String)meta.get("LandType"));
|
||||
item.setLinkedItem((Integer)meta.get("LinkedItem"));
|
||||
item.setCityType((String)meta.get("CityType"));
|
||||
item.setBuildingArea((String)meta.get("BuildingArea"));
|
||||
item.setBuildingId((Integer)meta.get("BuildingId"));
|
||||
@@ -385,4 +392,24 @@ public class MetaDataFileLoader {
|
||||
|
||||
log.info("loadBattleReward {} Load Complete", EMetaData.BATTLE_REWARD_DATA.getFileName());
|
||||
}
|
||||
|
||||
// 시스템메일 데이터 로드
|
||||
public void loadSystemMail(){
|
||||
List<Map<String, Object>> metaList = jsonFileReader.readJsonFile(EMetaData.SYSTEM_MAIL_DATA.getFileName(), MetadataConstants.JSON_LIST_SYSTEM_META);
|
||||
if(metaList == null || metaList.isEmpty()) {
|
||||
log.warn("System Mail data is empty or file not found: {}", EMetaData.SYSTEM_MAIL_DATA.getFileName());
|
||||
return;
|
||||
}
|
||||
|
||||
metaList.forEach(meta -> {
|
||||
MetaSystemMailData item = new MetaSystemMailData();
|
||||
item.setKey((String)meta.get("Key"));
|
||||
item.setMailTitle((String)meta.get("Mail_Title"));
|
||||
item.setMailDesc((String)meta.get("Mail_Desc"));
|
||||
item.setSender((String)meta.get("Sender"));
|
||||
systemMails.put((String)meta.get("Key"), item);
|
||||
});
|
||||
|
||||
log.info("loadSystemMail {} Load Complete", EMetaData.SYSTEM_MAIL_DATA.getFileName());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -78,5 +78,9 @@ public class MetaDataHandler {
|
||||
public List<MetaBattleRewardData> getMetaBattleRewardsListData() {
|
||||
return metadataFileLoader.getMetaBattleRewards();
|
||||
}
|
||||
|
||||
public List<MetaSystemMailData> getMetaSystemMailListData() {
|
||||
return metadataFileLoader.getMetaSystemMail();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
package com.caliverse.admin.domain.datacomponent;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@EqualsAndHashCode
|
||||
public class MetaQuestKey {
|
||||
private Integer qeustId;
|
||||
private Integer taskNum;
|
||||
}
|
||||
@@ -12,7 +12,8 @@ public enum EMetaData {
|
||||
LAND_DATA("LandData.json", true),
|
||||
BUILDING_DATA("BuildingData.json", true),
|
||||
BATTLE_CONFIG_DATA("BattleFFAConfigData.json", true),
|
||||
BATTLE_REWARD_DATA("BattleFFARewardData.json", true)
|
||||
BATTLE_REWARD_DATA("BattleFFARewardData.json", true),
|
||||
SYSTEM_MAIL_DATA("SystemMailData.json", true)
|
||||
|
||||
;
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@ public class MetaLandData {
|
||||
private Integer landId;
|
||||
private String owner;
|
||||
private String editor;
|
||||
private Integer linkedItem;
|
||||
private boolean nonAuction;
|
||||
private boolean rentalStateSwitch;
|
||||
private boolean rentalAvailable;
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.caliverse.admin.domain.entity.metadata;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
|
||||
@Getter @Setter
|
||||
public class MetaSystemMailData {
|
||||
private String key;
|
||||
@JsonProperty("mail_title")
|
||||
private String mailTitle;
|
||||
@JsonProperty("mail_desc")
|
||||
private String mailDesc;
|
||||
private String sender;
|
||||
}
|
||||
Reference in New Issue
Block a user