Files

File: src/main/java/com/paymentlink/config/DataSeeder.java

1 package com.paymentlink.config;
2
3 import com.paymentlink.service.RegionService;
4 import jakarta.annotation.PostConstruct;
5 import org.slf4j.Logger;
6 import org.slf4j.LoggerFactory;
7 import org.springframework.stereotype.Component;
8
9 @Component
10 public class DataSeeder {
11
12 private static final Logger logger = LoggerFactory.getLogger(DataSeeder.class);
13
14 private final RegionService regionService;
15
16 public DataSeeder(RegionService regionService) {
17 this.regionService = regionService;
18 }
19
20 @PostConstruct
21 public void init() {
22 logger.info("Running data seeder...");
23 seedRegions();
24 logger.info("Data seeding completed");
25 }
26
27 /**
28 * Seed regions table with default country data
29 */
30 private void seedRegions() {
31 try {
32 regionService.initializeDefaultRegions();
33 } catch (Exception e) {
34 logger.error("Failed to seed regions", e);
35 }
36 }
37 }
38