refactor: migrate all properties files to yaml
Some checks failed
Deploy to OCIWP / deploy (push) Failing after 0s
Some checks failed
Deploy to OCIWP / deploy (push) Failing after 0s
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# AX HUB 프로젝트 개발 규칙 (AGENTS.md)
|
||||
# AX HUB 프로젝트 개발 규칙 (AGENTS.md)
|
||||
|
||||
이 파일은 AI Agent(Antigravity)가 이 프로젝트에서 작업할 때 항상 명심하고 지켜야 할 규칙을 정의하는 파일입니다.
|
||||
작업 시 유의해야 할 사항이 생기면 언제든지 이 아래에 자유롭게 내용을 추가해 주세요!
|
||||
@@ -8,7 +8,7 @@
|
||||
* MapStruct 사용 시, Spring DI를 활용하여 의존성 주입(`private final Converter converter;`)을 받는 방식을 권장합니다. (단위 테스트 시에는 `@MockBean` 또는 직접 구현체를 주입하여 테스트)
|
||||
|
||||
## 명심해야 할 규칙 추가란
|
||||
* `application.properties` 등 설정 파일 수정 시 한글이 깨지지 않도록 항상 UTF-8 인코딩을 유지하고, 깨진 문자열(`?\uFFFD` 등)이 발생하지 않도록 각별히 주의한다.
|
||||
* `application.yml` 등 설정 파일 수정 시 한글이 깨지지 않도록 항상 UTF-8 인코딩을 유지하고, 깨진 문자열(`?\uFFFD` 등)이 발생하지 않도록 각별히 주의한다.
|
||||
* 이모지는 무조건 넣지 않는다
|
||||
* import 할것 무조건 한다
|
||||
* Git commit과 push는 사용자의 명시적인 허락(지시) 없이는 절대 수행하지 않는다.
|
||||
|
||||
62
.gitignore
vendored
62
.gitignore
vendored
@@ -56,11 +56,69 @@ build/
|
||||
# ===== VS Code =====
|
||||
.vscode/
|
||||
|
||||
# ===== 鍮뚮뱶 寃곌낵臾?=====
|
||||
target/
|
||||
!**/src/main/**/target/
|
||||
!**/src/test/**/target/
|
||||
*.class
|
||||
*.jar
|
||||
!gradle/wrapper/gradle-wrapper.jar
|
||||
*.war
|
||||
*.ear
|
||||
*.nar
|
||||
|
||||
# ===== 濡쒓렇 =====
|
||||
*.log
|
||||
logs/
|
||||
spring-shell.log
|
||||
|
||||
# ===== Maven =====
|
||||
.mvn/wrapper/maven-wrapper.jar
|
||||
pom.xml.tag
|
||||
pom.xml.releaseBackup
|
||||
pom.xml.versionsBackup
|
||||
pom.xml.next
|
||||
release.properties
|
||||
dependency-reduced-pom.xml
|
||||
buildNumber.properties
|
||||
.mvn/timing.properties
|
||||
|
||||
# ===== IntelliJ IDEA =====
|
||||
.idea/
|
||||
*.iws
|
||||
*.iml
|
||||
*.ipr
|
||||
out/
|
||||
|
||||
# ===== Eclipse / STS =====
|
||||
.apt_generated
|
||||
.classpath
|
||||
.factorypath
|
||||
.project
|
||||
.settings
|
||||
.springBeans
|
||||
.sts4-cache
|
||||
bin/
|
||||
|
||||
# ===== NetBeans =====
|
||||
/nbproject/private/
|
||||
/nbbuild/
|
||||
/dist/
|
||||
/nbdist/
|
||||
/.nb-gradle/
|
||||
build/
|
||||
.gradle/
|
||||
!**/src/main/**/build/
|
||||
!**/src/test/**/build/
|
||||
|
||||
# ===== VS Code =====
|
||||
.vscode/
|
||||
|
||||
# ===== OS =====
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
ehthumbs.db
|
||||
|
||||
# ===== ?섍꼍?ㅼ젙 (誘쇨컧?뺣낫 遺꾨━ ?? =====
|
||||
# application-local.properties
|
||||
# application-secret.properties
|
||||
# application-local.yml
|
||||
# application-secret.yml
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/**
|
||||
/**
|
||||
* @package io.shinhanlife
|
||||
* @className McpBridge
|
||||
* @description AX HUB 시스템 처리 클래스
|
||||
|
||||
@@ -83,7 +83,7 @@ DAP Backend는 2개의 주요 애플리케이션으로 분리 운영됩니다:
|
||||
레지스트리에 정상적으로 등록되어 게이트웨이가 동적으로 라우팅하지만, 클라이언트에게 제공되는 `/tools/list` API 목록에서는 숨겨집니다.
|
||||
2. **`register = false`**:
|
||||
내부 레지스트리(Redis)에 툴 정보를 등록하지 않습니다 (외부 레지스트리를 독자적으로 사용할 경우 등).
|
||||
이 경우 게이트웨이는 `application.properties`의 `mcp.gateway.fallback.routes` 설정을 참조하여 **Fallback 정적 라우팅**을 수행하므로 연동이 100% 보장됩니다.
|
||||
이 경우 게이트웨이는 `application.yml`의 `mcp.gateway.fallback.routes` 설정을 참조하여 **Fallback 정적 라우팅**을 수행하므로 연동이 100% 보장됩니다.
|
||||
|
||||
```java
|
||||
@McpFunction(
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg;
|
||||
package io.shinhanlife.dap.mcg;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.aop;
|
||||
package io.shinhanlife.dap.mcg.aop;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.aspectj.lang.ProceedingJoinPoint;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.audit;
|
||||
package io.shinhanlife.dap.mcg.audit;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.config;
|
||||
package io.shinhanlife.dap.mcg.config;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.config;
|
||||
package io.shinhanlife.dap.mcg.config;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.config;
|
||||
package io.shinhanlife.dap.mcg.config;
|
||||
|
||||
|
||||
/**
|
||||
@@ -25,7 +25,7 @@ import java.util.stream.Collectors;
|
||||
@Component
|
||||
@ConfigurationProperties(prefix = "mcp")
|
||||
/**
|
||||
* application.properties의 mcp.* 설정을 Java 코드에서 사용하기 위한 설정 클래스입니다.
|
||||
* application.yml의 mcp.* 설정을 Java 코드에서 사용하기 위한 설정 클래스입니다.
|
||||
*
|
||||
* API Key, 허용 Tool, 감사 로그, Redis Trace, Retry, Circuit Breaker,
|
||||
* EIMS/Tool 서버 주소 같은 MCP Gateway 운영 설정을 한 곳에서 관리합니다.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.config;
|
||||
package io.shinhanlife.dap.mcg.config;
|
||||
|
||||
import io.shinhanlife.dap.mcg.dto.ToolMetadata;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.dto;
|
||||
package io.shinhanlife.dap.mcg.dto;
|
||||
|
||||
/**
|
||||
* @package io.shinhanlife.dap.mcg.dto
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.dto;
|
||||
package io.shinhanlife.dap.mcg.dto;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.guardrail;
|
||||
package io.shinhanlife.dap.mcg.guardrail;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.guardrail;
|
||||
package io.shinhanlife.dap.mcg.guardrail;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.guardrail;
|
||||
package io.shinhanlife.dap.mcg.guardrail;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.messaging;
|
||||
package io.shinhanlife.dap.mcg.messaging;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.presentation;
|
||||
package io.shinhanlife.dap.mcg.presentation;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.presentation;
|
||||
package io.shinhanlife.dap.mcg.presentation;
|
||||
|
||||
import io.shinhanlife.dap.mcg.service.KillSwitchService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.presentation;
|
||||
package io.shinhanlife.dap.mcg.presentation;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.presentation;
|
||||
package io.shinhanlife.dap.mcg.presentation;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.redis;
|
||||
package io.shinhanlife.dap.mcg.redis;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.redis;
|
||||
package io.shinhanlife.dap.mcg.redis;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.registry;
|
||||
package io.shinhanlife.dap.mcg.registry;
|
||||
|
||||
import io.shinhanlife.dap.mcg.dto.ToolMetadata;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
package io.shinhanlife.dap.mcg.resilience;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.security;
|
||||
package io.shinhanlife.dap.mcg.security;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.security;
|
||||
package io.shinhanlife.dap.mcg.security;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.security;
|
||||
package io.shinhanlife.dap.mcg.security;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.service;
|
||||
package io.shinhanlife.dap.mcg.service;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.service;
|
||||
package io.shinhanlife.dap.mcg.service;
|
||||
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.service;
|
||||
package io.shinhanlife.dap.mcg.service;
|
||||
|
||||
import io.shinhanlife.dap.common.mcp.security.SecurityProperties;
|
||||
import io.shinhanlife.dap.mcg.registry.RedisRegistryService;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
|
||||
/**
|
||||
* @package io.shinhanlife.dap.mcg.sync
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
package io.shinhanlife.dap.mcg.sync;
|
||||
|
||||
import io.shinhanlife.dap.mcg.dto.ToolMetadata;
|
||||
import io.shinhanlife.dap.mcg.registry.RedisRegistryService;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.tool.large;
|
||||
package io.shinhanlife.dap.mcg.tool.large;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.tool.large;
|
||||
package io.shinhanlife.dap.mcg.tool.large;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.tool.large;
|
||||
package io.shinhanlife.dap.mcg.tool.large;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.tool.result;
|
||||
package io.shinhanlife.dap.mcg.tool.result;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.tool.result;
|
||||
package io.shinhanlife.dap.mcg.tool.result;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.transport;
|
||||
package io.shinhanlife.dap.mcg.transport;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.transport;
|
||||
package io.shinhanlife.dap.mcg.transport;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.converter;
|
||||
package io.shinhanlife.dap.sample.converter;
|
||||
|
||||
import io.shinhanlife.dap.sample.domain.model.AppliSystNtfyPatiModel;
|
||||
import io.shinhanlife.dap.sample.dto.AppliSystNtfyRgiInDTO;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.domain.model;
|
||||
package io.shinhanlife.dap.sample.domain.model;
|
||||
|
||||
import io.shinhanlife.glow.db.dto.AuditInfo;
|
||||
import lombok.*;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.domain.repository;
|
||||
package io.shinhanlife.dap.sample.domain.repository;
|
||||
|
||||
import io.shinhanlife.dap.sample.domain.model.AppliSystNtfyPatiModel;
|
||||
import io.shinhanlife.dap.sample.dto.StrnTermListInDTO;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.domain.service;
|
||||
package io.shinhanlife.dap.sample.domain.service;
|
||||
|
||||
import io.shinhanlife.dap.sample.dto.AppliSystNtfyRgiInDTO;
|
||||
import io.shinhanlife.dap.sample.dto.StrnTermListInDTO;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.domain.service.impl;
|
||||
package io.shinhanlife.dap.sample.domain.service.impl;
|
||||
|
||||
import io.shinhanlife.dap.sample.converter.SampleConverter;
|
||||
import io.shinhanlife.dap.sample.domain.model.AppliSystNtfyPatiModel;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.dto;
|
||||
package io.shinhanlife.dap.sample.dto;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.dto;
|
||||
package io.shinhanlife.dap.sample.dto;
|
||||
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.dto;
|
||||
package io.shinhanlife.dap.sample.dto;
|
||||
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.presentation;
|
||||
package io.shinhanlife.dap.sample.presentation;
|
||||
|
||||
|
||||
import io.shinhanlife.dap.sample.presentation.io.AppliSystNtfyPatiRequest;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.presentation.io;
|
||||
package io.shinhanlife.dap.sample.presentation.io;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.presentation.io;
|
||||
package io.shinhanlife.dap.sample.presentation.io;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.presentation.io;
|
||||
package io.shinhanlife.dap.sample.presentation.io;
|
||||
|
||||
import io.shinhanlife.glow.PageInfo;
|
||||
import lombok.*;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.presentation.io;
|
||||
package io.shinhanlife.dap.sample.presentation.io;
|
||||
|
||||
import io.shinhanlife.glow.PageInfo;
|
||||
import lombok.*;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.usecase;
|
||||
package io.shinhanlife.dap.sample.usecase;
|
||||
|
||||
import io.shinhanlife.dap.sample.presentation.io.AppliSystNtfyPatiRequest;
|
||||
import io.shinhanlife.dap.sample.presentation.io.AppliSystNtfyPatiResponse;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.sample.usecase.impl;
|
||||
package io.shinhanlife.dap.sample.usecase.impl;
|
||||
|
||||
import io.shinhanlife.dap.sample.converter.SampleConverter;
|
||||
import io.shinhanlife.dap.sample.domain.service.GlowSampleService;
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
# Dev 환경 전용 설정 (개발 서버 DB 연결 정보 등)
|
||||
# spring.datasource.url=jdbc:oracle:thin:@//dev-db-host:1521/XEPDB1
|
||||
# spring.datasource.driverClassName=oracle.jdbc.OracleDriver
|
||||
# spring.datasource.username=dev_user
|
||||
# spring.datasource.password=dev_password
|
||||
|
||||
# OCI (Oracle Cloud) 개발 환경 라우팅
|
||||
mcp.gateway.fallback.routes.sms=http://144.24.70.100:8282
|
||||
mcp.gateway.fallback.routes.email=http://144.24.70.100:8283
|
||||
mcp.gateway.fallback.default-url=http://144.24.70.100:8284
|
||||
mcp.gateway.fallback.routes.payment=http://144.24.70.100:8285
|
||||
mcp.gateway.fallback.routes.hr=http://144.24.70.100:8284
|
||||
|
||||
# --- 신한라이프 EAI/MCI 연계 IP 정보 (개발 환경) ---
|
||||
shinhan.integration.envrTypeCd=D
|
||||
shinhan.integration.eai.url=http://10.176.32.181
|
||||
shinhan.integration.internalMci.url=http://10.176.32.173
|
||||
shinhan.integration.bancaMci.url=http://10.176.32.117
|
||||
shinhan.integration.externalMci.url=http://10.176.32.176
|
||||
31
dap-gateway/src/main/resources/application-dev.yml
Normal file
31
dap-gateway/src/main/resources/application-dev.yml
Normal file
@@ -0,0 +1,31 @@
|
||||
# Dev 환경 전용 설정 (개발 서버 DB 연결 정보 등)
|
||||
# spring:
|
||||
# datasource:
|
||||
# url: jdbc:oracle:thin:@//dev-db-host:1521/XEPDB1
|
||||
# driverClassName: oracle.jdbc.OracleDriver
|
||||
# username: dev_user
|
||||
# password: dev_password
|
||||
|
||||
# OCI (Oracle Cloud) 개발 환경 라우팅
|
||||
mcp:
|
||||
gateway:
|
||||
fallback:
|
||||
default-url: http://144.24.70.100:8284
|
||||
routes:
|
||||
sms: http://144.24.70.100:8282
|
||||
email: http://144.24.70.100:8283
|
||||
payment: http://144.24.70.100:8285
|
||||
hr: http://144.24.70.100:8284
|
||||
|
||||
# --- 신한라이프 EAI/MCI 연계 IP 정보 (개발 환경) ---
|
||||
shinhan:
|
||||
integration:
|
||||
envrTypeCd: D
|
||||
eai:
|
||||
url: http://10.176.32.181
|
||||
internalMci:
|
||||
url: http://10.176.32.173
|
||||
bancaMci:
|
||||
url: http://10.176.32.117
|
||||
externalMci:
|
||||
url: http://10.176.32.176
|
||||
@@ -1,27 +0,0 @@
|
||||
# Local ?섍꼍 ?꾩슜 ?ㅼ젙 (H2 硫붾え由?DB ??
|
||||
spring.datasource.url=jdbc:p6spy:h2:mem:testdb;DB_CLOSE_DELAY=-1;
|
||||
spring.datasource.driverClassName=com.p6spy.engine.spy.P6SpyDriver
|
||||
spring.datasource.username=sa
|
||||
spring.datasource.password=password
|
||||
|
||||
spring.h2.console.enabled=true
|
||||
# EIMS 동적 라우팅 접속 정보
|
||||
eims.http.url=http://localhost:${server.port}/api/gateway
|
||||
eims.tcp.host=127.0.0.1
|
||||
eims.tcp.port=8090
|
||||
eims.tcp.timeout=5000
|
||||
eims.jsp.form.url=http://localhost:${server.port}/mock/jsp-form
|
||||
eims.jsp.json.url=http://localhost:${server.port}/mock/jsp-json
|
||||
eims.mci.url=http://localhost:${server.port}/api/mock/esb/api
|
||||
eims.mcistring.url=http://localhost:${server.port}/api/mock/esb/string
|
||||
|
||||
# Gateway/Tool URLs
|
||||
mcp.adapter.url=http://localhost:${server.port}/rpc/v1/execute
|
||||
mcp.gateway.url=http://localhost:${server.port}/mcp/api/v1
|
||||
mcp.tool.host=localhost
|
||||
|
||||
# Disable Kafka
|
||||
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration
|
||||
|
||||
# Suppress Kafka Connection Logs
|
||||
logging.level.org.apache.kafka=ERROR
|
||||
41
dap-gateway/src/main/resources/application-local.yml
Normal file
41
dap-gateway/src/main/resources/application-local.yml
Normal file
@@ -0,0 +1,41 @@
|
||||
# Local 환경 전용 설정 (H2 메모리 DB 등)
|
||||
spring:
|
||||
datasource:
|
||||
url: jdbc:p6spy:h2:mem:testdb;DB_CLOSE_DELAY=-1;
|
||||
driverClassName: com.p6spy.engine.spy.P6SpyDriver
|
||||
username: sa
|
||||
password: password
|
||||
h2:
|
||||
console:
|
||||
enabled: true
|
||||
autoconfigure:
|
||||
exclude: org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration
|
||||
|
||||
eims:
|
||||
http:
|
||||
url: http://localhost:${server.port}/api/gateway
|
||||
tcp:
|
||||
host: 127.0.0.1
|
||||
port: 8090
|
||||
timeout: 5000
|
||||
jsp:
|
||||
form:
|
||||
url: http://localhost:${server.port}/mock/jsp-form
|
||||
json:
|
||||
url: http://localhost:${server.port}/mock/jsp-json
|
||||
mci:
|
||||
url: http://localhost:${server.port}/api/mock/esb/api
|
||||
mcistring:
|
||||
url: http://localhost:${server.port}/api/mock/esb/string
|
||||
|
||||
mcp:
|
||||
adapter:
|
||||
url: http://localhost:${server.port}/rpc/v1/execute
|
||||
gateway:
|
||||
url: http://localhost:${server.port}/mcp/api/v1
|
||||
tool:
|
||||
host: localhost
|
||||
|
||||
logging:
|
||||
level:
|
||||
org.apache.kafka: ERROR
|
||||
@@ -1,12 +0,0 @@
|
||||
# Prod 환경 전용 설정 (운영 서버 DB 연결 정보 등)
|
||||
# spring.datasource.url=jdbc:oracle:thin:@//prod-db-host:1521/PROD
|
||||
# spring.datasource.driverClassName=oracle.jdbc.OracleDriver
|
||||
# spring.datasource.username=prod_user
|
||||
# spring.datasource.password=prod_password
|
||||
|
||||
# --- 신한라이프 EAI/MCI 연계 IP 정보 (운영 환경) ---
|
||||
shinhan.integration.envrTypeCd=R
|
||||
shinhan.integration.eai.url=http://10.172.32.181
|
||||
shinhan.integration.internalMci.url=http://10.172.32.173
|
||||
shinhan.integration.bancaMci.url=http://10.172.32.117
|
||||
shinhan.integration.externalMci.url=http://10.172.32.177
|
||||
20
dap-gateway/src/main/resources/application-prod.yml
Normal file
20
dap-gateway/src/main/resources/application-prod.yml
Normal file
@@ -0,0 +1,20 @@
|
||||
# Prod 환경 전용 설정 (운영 서버 DB 연결 정보 등)
|
||||
# spring:
|
||||
# datasource:
|
||||
# url: jdbc:oracle:thin:@//prod-db-host:1521/PROD
|
||||
# driverClassName: oracle.jdbc.OracleDriver
|
||||
# username: prod_user
|
||||
# password: prod_password
|
||||
|
||||
# --- 신한라이프 EAI/MCI 연계 IP 정보 (운영 환경) ---
|
||||
shinhan:
|
||||
integration:
|
||||
envrTypeCd: R
|
||||
eai:
|
||||
url: http://10.172.32.181
|
||||
internalMci:
|
||||
url: http://10.172.32.173
|
||||
bancaMci:
|
||||
url: http://10.172.32.117
|
||||
externalMci:
|
||||
url: http://10.172.32.177
|
||||
@@ -1,52 +0,0 @@
|
||||
spring.application.name=dap-admin
|
||||
|
||||
# Gateway Fallback Routing (For unregistered tools)
|
||||
mcp.gateway.fallback.routes.sms=http://tool-sms:8082
|
||||
mcp.gateway.fallback.routes.email=http://tool-email:8083
|
||||
mcp.gateway.fallback.default-url=http://tool-other:8084
|
||||
mcp.gateway.fallback.routes.payment=http://tool-payment:8085
|
||||
mcp.gateway.fallback.routes.hr=http://tool-hr:8086
|
||||
|
||||
|
||||
|
||||
server.port=8081
|
||||
server.http2.enabled=true
|
||||
|
||||
# 기본적으로 local 환경을 실행
|
||||
spring.profiles.active=local
|
||||
|
||||
# MyBatis 공통 설정
|
||||
mybatis.mapper-locations=classpath:mapper/**/*.xml
|
||||
mybatis.type-aliases-package=
|
||||
mybatis.configuration.map-underscore-to-camel-case=true
|
||||
spring.sql.init.mode=always
|
||||
|
||||
logging.level.com.corundumstudio.socketio=DEBUG
|
||||
|
||||
# 우아한 종료 (Graceful Shutdown) 설정
|
||||
server.shutdown=graceful
|
||||
spring.lifecycle.timeout-per-shutdown-phase=20s
|
||||
# Suppress Kafka Connection Logs
|
||||
logging.level.org.apache.kafka=ERROR
|
||||
|
||||
# Spring AI MCP Server Settings
|
||||
# spring.ai.mcp.server.protocol=STATELESS
|
||||
mcp.agent-claims-required=false
|
||||
mcp.trusted-claims-required=false
|
||||
mcp.write-approval-required=false
|
||||
mcp.default-page-size=100
|
||||
mcp.max-page-size=500
|
||||
mcp.max-pages-per-call=3
|
||||
mcp.max-stream-bytes=1048576
|
||||
mcp.max-response-bytes-from-tool=5242880
|
||||
mcp.tool-registry-sync-interval-millis=5000
|
||||
|
||||
# API 보안 키 설정
|
||||
mcp.security.tenant-domains.TESTER-DEV=ALL
|
||||
mcp.security.tenant-domains.system=ALL
|
||||
# Spring AI OpenAI / Gemini API Config
|
||||
spring.ai.openai.api-key=AQ.Ab8RN6KFZggsQf8iooY1v_3h3vp2TIjiYB54dV4Yay3vVKEMtg
|
||||
spring.ai.openai.base-url=https://generativelanguage.googleapis.com/v1beta/openai/
|
||||
spring.ai.openai.chat.options.model=gemini-flash-latest
|
||||
spring.ai.openai.chat.options.temperature=0.3
|
||||
|
||||
58
dap-gateway/src/main/resources/application.yml
Normal file
58
dap-gateway/src/main/resources/application.yml
Normal file
@@ -0,0 +1,58 @@
|
||||
spring:
|
||||
application:
|
||||
name: dap-admin
|
||||
profiles:
|
||||
active: local
|
||||
sql:
|
||||
init:
|
||||
mode: always
|
||||
lifecycle:
|
||||
timeout-per-shutdown-phase: 20s
|
||||
ai:
|
||||
openai:
|
||||
api-key: AQ.Ab8RN6KFZggsQf8iooY1v_3h3vp2TIjiYB54dV4Yay3vVKEMtg
|
||||
base-url: https://generativelanguage.googleapis.com/v1beta/openai/
|
||||
chat:
|
||||
options:
|
||||
model: gemini-flash-latest
|
||||
temperature: 0.3
|
||||
|
||||
server:
|
||||
port: 8081
|
||||
http2:
|
||||
enabled: true
|
||||
shutdown: graceful
|
||||
|
||||
mcp:
|
||||
gateway:
|
||||
fallback:
|
||||
default-url: http://tool-other:8084
|
||||
routes:
|
||||
sms: http://tool-sms:8082
|
||||
email: http://tool-email:8083
|
||||
payment: http://tool-payment:8085
|
||||
hr: http://tool-hr:8086
|
||||
agent-claims-required: false
|
||||
trusted-claims-required: false
|
||||
write-approval-required: false
|
||||
default-page-size: 100
|
||||
max-page-size: 500
|
||||
max-pages-per-call: 3
|
||||
max-stream-bytes: 1048576
|
||||
max-response-bytes-from-tool: 5242880
|
||||
tool-registry-sync-interval-millis: 5000
|
||||
security:
|
||||
tenant-domains:
|
||||
TESTER-DEV: ALL
|
||||
system: ALL
|
||||
|
||||
mybatis:
|
||||
mapper-locations: classpath:mapper/**/*.xml
|
||||
type-aliases-package: ""
|
||||
configuration:
|
||||
map-underscore-to-camel-case: true
|
||||
|
||||
logging:
|
||||
level:
|
||||
com.corundumstudio.socketio: DEBUG
|
||||
org.apache.kafka: ERROR
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg;
|
||||
package io.shinhanlife.dap.mcg;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.mcg.tool.large;
|
||||
package io.shinhanlife.dap.mcg.tool.large;
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.aop;
|
||||
package io.shinhanlife.dap.common.adapter.aop;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.aspectj.lang.ProceedingJoinPoint;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
|
||||
import io.shinhanlife.dap.common.adapter.support.DynamicPayloadBuilder;
|
||||
import io.shinhanlife.dap.common.adapter.support.DynamicSchemaValidator;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
|
||||
import io.shinhanlife.dap.common.adapter.support.DynamicPayloadBuilder;
|
||||
import io.shinhanlife.dap.common.adapter.support.DynamicSchemaValidator;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
|
||||
import io.shinhanlife.dap.common.adapter.support.ResultStandardizer;
|
||||
import io.github.resilience4j.circuitbreaker.annotation.CircuitBreaker;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import io.shinhanlife.dap.common.adapter.sender.EimsSender;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
package io.shinhanlife.dap.common.adapter.connector;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.dto;
|
||||
package io.shinhanlife.dap.common.adapter.dto;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.dto;
|
||||
package io.shinhanlife.dap.common.adapter.dto;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.dto;
|
||||
package io.shinhanlife.dap.common.adapter.dto;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
|
||||
import lombok.Getter;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.dto;
|
||||
package io.shinhanlife.dap.common.adapter.dto;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.exception;
|
||||
package io.shinhanlife.dap.common.adapter.exception;
|
||||
|
||||
/**
|
||||
* @package io.shinhanlife.dap.common.adapter.exception
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
/**
|
||||
* @package io.shinhanlife.dap.common.adapter.sender
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import io.shinhanlife.dap.common.integration.mci.config.ShinhanIntegrationProperties;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
package io.shinhanlife.dap.common.adapter.sender;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import java.util.List;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
package io.shinhanlife.dap.common.adapter.support;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user