package com.sikey.wa04.business.infrastructure.configuration;

import lombok.Data;
import lombok.ToString;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

@Data
@Configuration
@ConfigurationProperties(prefix = "push")
public class PushConfig {
    private XiaomiOAuth2Config xiaomi;
    private PushHuaweiOAuth2Config huawei;
    private PushIOSSigningConfig ios;

    @Data
    @ToString
    public static class XiaomiOAuth2Config {
        private String appSecret;
        private Integer maxRetry;
    }

    @Data
    @ToString
    public static class PushHuaweiOAuth2Config {
        private String clientId;
        private String clientSecret;
        private String projectId;
    }

    @Data
    @ToString
    public static class PushIOSSigningConfig {
        private String packageName;
        private String filename;
        private String keyId;
        private String teamId;
        private Integer maxRetry;
    }

}
