@ -12,6 +12,8 @@ public class VmisProperties {
@NotNull
private IntegrationProps integration = new IntegrationProps ( ) ;
@NotNull
private RestTemplateProps restTemplate = new RestTemplateProps ( ) ;
@NotNull
private SystemProps system = new SystemProps ( ) ;
@NotNull
private GpkiProps gpki = new GpkiProps ( ) ;
@ -22,6 +24,8 @@ public class VmisProperties {
public IntegrationProps getIntegration ( ) { return integration ; }
public void setIntegration ( IntegrationProps integration ) { this . integration = integration ; }
public RestTemplateProps getRestTemplate ( ) { return restTemplate ; }
public void setRestTemplate ( RestTemplateProps restTemplate ) { this . restTemplate = restTemplate ; }
public SystemProps getSystem ( ) { return system ; }
public void setSystem ( SystemProps system ) { this . system = system ; }
public GpkiProps getGpki ( ) { return gpki ; }
@ -49,15 +53,9 @@ public class VmisProperties {
public static class ApiProps {
@NotBlank
private String url = "http://localhost:8081/api/v1/vehicles" ;
private int connectTimeoutMillis = 5000 ;
private int readTimeoutMillis = 10000 ;
public String getUrl ( ) { return url ; }
public void setUrl ( String url ) { this . url = url ; }
public int getConnectTimeoutMillis ( ) { return connectTimeoutMillis ; }
public void setConnectTimeoutMillis ( int connectTimeoutMillis ) { this . connectTimeoutMillis = connectTimeoutMillis ; }
public int getReadTimeoutMillis ( ) { return readTimeoutMillis ; }
public void setReadTimeoutMillis ( int readTimeoutMillis ) { this . readTimeoutMillis = readTimeoutMillis ; }
}
}
@ -67,7 +65,7 @@ public class VmisProperties {
/** INFO_SYS_IP */
private String infoSysIp ;
/** 시군구코드 (SIGUNGU_CODE) */
private String region Code;
private String sigungu Code;
private String departmentCode ;
// 담당자 정보
private String chargerId ;
@ -78,8 +76,8 @@ public class VmisProperties {
public void setInfoSysId ( String infoSysId ) { this . infoSysId = infoSysId ; }
public String getInfoSysIp ( ) { return infoSysIp ; }
public void setInfoSysIp ( String infoSysIp ) { this . infoSysIp = infoSysIp ; }
public String get RegionCode( ) { return region Code; }
public void set RegionCode( String regionCode ) { this . regionCode = region Code; }
public String get SigunguCode( ) { return sigungu Code; }
public void set SigunguCode( String sigunguCode ) { this . sigunguCode = sigungu Code; }
public String getDepartmentCode ( ) { return departmentCode ; }
public void setDepartmentCode ( String departmentCode ) { this . departmentCode = departmentCode ; }
public String getChargerId ( ) { return chargerId ; }
@ -144,6 +142,61 @@ public class VmisProperties {
public boolean isEnabledFlag ( ) { return "Y" . equalsIgnoreCase ( enabled ) ; }
}
public static class RestTemplateProps {
@NotNull
private ModeConfig internal = new ModeConfig ( ) ;
@NotNull
private ModeConfig external = new ModeConfig ( ) ;
public ModeConfig getInternal ( ) { return internal ; }
public void setInternal ( ModeConfig internal ) { this . internal = internal ; }
public ModeConfig getExternal ( ) { return external ; }
public void setExternal ( ModeConfig external ) { this . external = external ; }
public static class ModeConfig {
@NotNull
private TimeoutConfig timeout = new TimeoutConfig ( ) ;
@NotNull
private ConnectionPoolConfig connectionPool = new ConnectionPoolConfig ( ) ;
@NotNull
private RateLimitConfig rateLimit = new RateLimitConfig ( ) ;
public TimeoutConfig getTimeout ( ) { return timeout ; }
public void setTimeout ( TimeoutConfig timeout ) { this . timeout = timeout ; }
public ConnectionPoolConfig getConnectionPool ( ) { return connectionPool ; }
public void setConnectionPool ( ConnectionPoolConfig connectionPool ) { this . connectionPool = connectionPool ; }
public RateLimitConfig getRateLimit ( ) { return rateLimit ; }
public void setRateLimit ( RateLimitConfig rateLimit ) { this . rateLimit = rateLimit ; }
public static class TimeoutConfig {
private int connectTimeoutMillis = 10000 ;
private int readTimeoutMillis = 12000 ;
public int getConnectTimeoutMillis ( ) { return connectTimeoutMillis ; }
public void setConnectTimeoutMillis ( int connectTimeoutMillis ) { this . connectTimeoutMillis = connectTimeoutMillis ; }
public int getReadTimeoutMillis ( ) { return readTimeoutMillis ; }
public void setReadTimeoutMillis ( int readTimeoutMillis ) { this . readTimeoutMillis = readTimeoutMillis ; }
}
public static class ConnectionPoolConfig {
private int maxTotal = 100 ;
private int maxPerRoute = 20 ;
public int getMaxTotal ( ) { return maxTotal ; }
public void setMaxTotal ( int maxTotal ) { this . maxTotal = maxTotal ; }
public int getMaxPerRoute ( ) { return maxPerRoute ; }
public void setMaxPerRoute ( int maxPerRoute ) { this . maxPerRoute = maxPerRoute ; }
}
public static class RateLimitConfig {
private double permitsPerSecond = 5.0 ;
public double getPermitsPerSecond ( ) { return permitsPerSecond ; }
public void setPermitsPerSecond ( double permitsPerSecond ) { this . permitsPerSecond = permitsPerSecond ; }
}
}
}
public static class GovProps {
@NotBlank
private String scheme = "http" ;
@ -151,8 +204,6 @@ public class VmisProperties {
private String host ;
@NotBlank
private String basePath ;
private int connectTimeoutMillis = 5000 ;
private int readTimeoutMillis = 10000 ;
@NotNull
private Services services = new Services ( ) ;
@ -162,10 +213,6 @@ public class VmisProperties {
public void setHost ( String host ) { this . host = host ; }
public String getBasePath ( ) { return basePath ; }
public void setBasePath ( String basePath ) { this . basePath = basePath ; }
public int getConnectTimeoutMillis ( ) { return connectTimeoutMillis ; }
public void setConnectTimeoutMillis ( int connectTimeoutMillis ) { this . connectTimeoutMillis = connectTimeoutMillis ; }
public int getReadTimeoutMillis ( ) { return readTimeoutMillis ; }
public void setReadTimeoutMillis ( int readTimeoutMillis ) { this . readTimeoutMillis = readTimeoutMillis ; }
public Services getServices ( ) { return services ; }
public void setServices ( Services services ) { this . services = services ; }