Commit Graph

336 Commits

Author SHA1 Message Date
curry772 1185329b78 Merge branch 'feature/cryptofilter' 2026-05-14 15:24:20 +09:00
curry772 a86d1ba30f chore: elink-online-common 서브모듈 업데이트 (JSON 파싱 횟수 최적화)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 14:53:55 +09:00
curry772 17a343c4ac chore: elink-online-common 서브모듈 업데이트 (decryptField mergeAtRoot 수정)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 13:35:10 +09:00
curry772 dd352fef42 chore: elink-online-common 서브모듈 업데이트 (BaseCryptoFilter 잔여 참조 수정)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 11:28:08 +09:00
curry772 656cd39d30 refactor: CryptoFilter → InCryptoFilter 참조 교체 및 서브모듈 업데이트
- DJBErpCryptoFilter: CryptoFilter → InCryptoFilter 상속 변경
- EncFieldCryptoFilter: BaseCryptoFilter → InCryptoFilter 사용으로 변경
- DJErpApiAdapterService: CryptoFilter.PROP_MODULE_NAME → AbstractCryptoFilter.PROP_MODULE_NAME
- elink-online-common 서브모듈 feature/cryptofilter 브랜치 반영

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-14 11:26:50 +09:00
curry772 7be74095c5 refactor: HttpAdapterFilterFactoryKjb 제거 - elink-online-common 서브모듈 업데이트
- DJErpApiAdapterController 임포트를 HttpAdapterFilterFactory로 교체
- elink-online-common 서브모듈 포인터 업데이트 (c4a250d)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 16:18:22 +09:00
curry772 28b233aeff refactor: HttpClient5 어댑터 필터 패키지를 elink-online-common으로 이동
- custom/kjb/adapter/http/client/filter/ 패키지 삭제 (elink-online-common으로 이동)
- custom/kjb/adapter/http/client/impl/HttpClient5AdapterServiceRestAddFilter.java 삭제
- elink-online-common 서브모듈 업데이트

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 15:58:32 +09:00
curry772 7a5958481f chore: elink-online-common 서브모듈 업데이트 (테스트 로그 추가)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 13:54:00 +09:00
curry772 ac15633b21 Merge branch 'feature/crypto-module'
CryptoFilter 암복호화 필터, HSM 연동, EncFieldCryptoFilter 실거래 검증 완료
2026-05-13 13:30:21 +09:00
curry772 158987b367 feat: EncFieldCryptoFilter 추가 및 DJErp 어댑터 암호화 모듈 연동
- EncFieldCryptoFilter 추가: /encryptedData 경로 고정 CryptoFilter 구현체
  (CryptoAdapterFilter 대체, custom 패키지로 분리)
- DJErpApiAdapterService: CRYPTO_MODULE_NAME 프로퍼티 transactionProp에 전달
- elink-online-common 서브모듈 업데이트
  (CryptoFilter UPPER_UNDERSCORE 키, HSM 통합 테스트 포함)
- elink-online-transformer 서브모듈 업데이트

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-13 13:30:09 +09:00
curry772 bf9f865508 feat: elink-online-transformer 서브모듈 업데이트 (ConcatN 함수 추가)
- ConcatN: 파라미터 수 제한 없는 가변 문자열 연결 함수 (numberOfParameters=-1)
- ConcatNFunctionTest, ConcatNParserTest 단위테스트 추가
- .gitignore에 작업내역 문서 패턴 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 20:07:47 +09:00
curry772 9c9ad8c19c Merge branch 'feature/crypto-module'
- HSM 키 파생 전략 elink-online-common으로 이동
- HsmContextSha256KeyDerivationStrategyTest elink-online-common으로 이동
- elink-online-common 서브모듈 업데이트 (CryptoFilter AAD 지원 + 단위테스트)
2026-05-12 20:07:10 +09:00
curry772 8ace28675b feat: elink-online-common 서브모듈 업데이트 (CryptoFilter AAD 지원 + 단위테스트)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 18:15:54 +09:00
curry772 1ab36c077b feat: HsmContextSha256KeyDerivationStrategyTest elink-online-common으로 이동
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 16:37:30 +09:00
curry772 547232bb26 feat: HSM 키 파생 전략 elink-online-common으로 이동 및 서브모듈 업데이트
- HsmContextSha256KeyDerivationStrategy: custom 패키지에서 elink-online-common으로 이동
- elink-online-common: feature/crypto-module 브랜치 (HSM 전략 클래스 + master 머지)
- elink-online-core-jpa: CryptoModuleConfig JPA Entity 및 Loader 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 16:34:20 +09:00
curry772 ebd89afa0d Merge branch 'feature/template-adapter-error-msg-handler' 2026-05-12 13:06:21 +09:00
curry772 407eccc827 feat: elink-online-common 서브모듈 업데이트 (기본값 문법 + JSON 파싱)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 13:05:43 +09:00
curry772 cebdfd6a19 fix: elink-online-common 서브모듈 업데이트 (PropManager 목 객체 수정)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 10:47:54 +09:00
curry772 1fd8712de0 Merge branch 'feature/template-adapter-error-msg-handler' into master 2026-05-12 09:44:19 +09:00
curry772 be204abb5e feat: elink-online-common 서브모듈 업데이트 (TemplateAdapterErrorMsgHandler)
서브모듈 elink-online-common 을 feature/template-adapter-error-msg-handler
브랜치의 신규 커밋으로 업데이트

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 09:43:00 +09:00
curry772 c2ad6d2423 Merge branch 'feature/inflow-control-improvement' into master 2026-05-08 10:51:48 +09:00
curry772 b6954139fe fix: custom.inflow 컴포넌트 스캔 추가 및 /manage/* FrontFilter 등록
- authserver-servlet.xml: com.eactive.eai.custom.inflow 패키지 component-scan 추가
  (ClientInflowTargetBucketController/MetricController 빈 등록)
- web.xml: FrontFilter url-pattern에 /manage/* 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 10:50:14 +09:00
curry772 d46fa8bd1a refactor: 클라이언트 버킷 상태 모니터링 custom.inflow 패키지로 분리
- InflowTargetBucketService/Controller에서 클라이언트 관련 메서드/엔드포인트 제거
- ClientInflowTargetBucketService/Controller를 custom.inflow 패키지에 신규 생성
  (ClientInflowTargetMetricService/Controller 패턴과 일치)
- 관련 단위 테스트 추가 및 기존 테스트에서 클라이언트 케이스 제거

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 10:22:15 +09:00
curry772 31171d0187 feat: 클라이언트 유량제어/RequestProcessor custom 패키지로 분리
- DJBRequestProcessor: inbound.processor → custom.inbound.processor 이동
- ClientInflowTargetMetricService/Controller: custom.inflow 패키지 신규 생성
  클라이언트 메트릭 API(/manage/inflow/client/**)를 InflowTargetMetric*에서 분리
- InflowTargetMetricService/Controller: 클라이언트 관련 메서드/엔드포인트 제거
- InflowTargetBucketService: getClientDualManager() 분리 반영
- standard-message-config.properties: requestProcessor.class 경로 업데이트
- 단위 테스트: ClientInflowTargetMetric{Service,Controller}Test 추가,
  기존 테스트에서 클라이언트 케이스 분리

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 18:02:51 +09:00
curry772 45ad9d8b6f Merge branch 'feature/crypto-module' into master 2026-05-07 15:39:00 +09:00
curry772 dd02c5902e feat: DJB ERP 연동 암복호화 필터 추가 및 단위테스트 작성
- DJBErpCryptoFilter: CryptoFilter 상속, httpHeaderGroup 헤더 JSON에서
  x-emp-nm(groupSeq|empNo) 파싱 → groupSeq를 runtimeContext로 전달
- DJBErpCryptoFilterTest: 17개 단위테스트 (buildRuntimeContext/doPreFilter/doPostFilter)
- elink-online-common 서브모듈 업데이트 (CryptoFilter 기반 클래스 포함)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-07 15:04:01 +09:00
curry772 c225104711 feat: 암호화모듈 프레임워크 적용 및 사이트 특화 전략 추가
- 서브모듈 포인터 업데이트 (elink-online-common, elink-online-core-jpa)
- HsmContextSha256KeyDerivationStrategy: SHA-256(masterKey || contextValue) 키 도출 전략
  elink-online-common에서 eapim-online custom 패키지로 분리 (사이트 의존성)
  FQCN: com.eactive.eai.custom.security.keyderiv.strategy.HsmContextSha256KeyDerivationStrategy
- HsmContextSha256KeyDerivationStrategyTest 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-06 16:50:17 +09:00
curry772 efcc7fe208 Merge branch 'feature/inflow-control-improvement'
- AbstractInflowControlManager 상속 구조 리팩토링
- DualInflowControlManager DAO 이중 호출 제거 및 타겟 메트릭 추가
- 어댑터/인터페이스/클라이언트 유량제어 메트릭 API 추가
- 관련 단위테스트 수정 및 추가
2026-04-30 10:17:15 +09:00
curry772 8bcbee7e52 feat: 어댑터/인터페이스/클라이언트 유량제어 메트릭 API 추가
InflowTargetMetricController / InflowTargetMetricService / TargetMetricDTO 추가.
어댑터·인터페이스·클라이언트별 허용/초당거절/임계거절 카운터 조회 및 초기화 API 제공.
단위테스트: InflowTargetMetricServiceTest(26건), InflowTargetMetricControllerTest(16건).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-30 10:16:10 +09:00
curry772 04aa0df977 refactor: InflowGroupBucketService / InflowTargetBucketService AbstractInflowControlManager 타입 적용
서브모듈 리팩토링(AbstractInflowControlManager 분리)에 맞춰
InflowControlManager.getInstance() 호출을 InflowControlUtil.getInflowControlManager()로 변경.
반환 타입을 AbstractInflowControlManager로 통일.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-30 10:15:55 +09:00
curry772 2eeee58d35 test: 버킷 상태 모니터링 Service/Controller 단위 테스트 추가
getDualManager()를 protected로 변경하여 서브클래스 오버라이드 방식으로 mock 주입

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 15:15:18 +09:00
curry772 5f24bacd48 feat: 어댑터/인터페이스/클라이언트 버킷 상태 모니터링 API 추가
- InflowTargetBucketController: 버킷 상태 조회 REST API
  GET /manage/inflow/adapter/bucket-status
  GET /manage/inflow/adapter/{adapterId}/bucket-status
  GET /manage/inflow/interface/bucket-status
  GET /manage/inflow/interface/{interfaceId}/bucket-status
  GET /manage/inflow/client/bucket-status
  GET /manage/inflow/client/{clientId}/bucket-status
- InflowTargetBucketService: DualInflowControlManager 에서 버킷 상태 조회
- TargetBucketStatusDTO: 어댑터/인터페이스/클라이언트 공통 버킷 상태 DTO

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 14:59:26 +09:00
curry772 21c3bcbc6a chore: elink-online-common 서브모듈 포인터 업데이트 (TypedCircuitBreaker 단위테스트)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 14:47:30 +09:00
curry772 aff3ed6658 Merge branch 'feature/hsm-integration-jdk8' into master 2026-04-29 12:59:41 +09:00
curry772 8947fc248f chore: elink-online-common 서브모듈 포인터 업데이트 (HSM 캐시/PropManager 연동)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-29 12:59:26 +09:00
curry772 58f659a179 chore: elink-online-common 서브모듈 포인터 업데이트 (HSM 연동)
feat: SafeNet HSM 연동 구현 (JDK 8 / SunPKCS11) 커밋 반영
  서브모듈 d08c7ef → acdb580

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-28 20:52:45 +09:00
curry772 745df6d073 Merge branch 'feature/inflow-control-improvement' into master 2026-04-27 17:25:10 +09:00
curry772 4a41398f03 Merge branch 'feature/jejubank-oauth-bypass' into master 2026-04-27 16:42:03 +09:00
curry772 3a578b3c70 토큰 발급 실패 오류 추가 - 미확인오류추가 2026-04-27 15:58:36 +09:00
curry772 4d479e4fd6 refactor: DualRequestProcessor 패키지 이동 반영
- standard-message-config.properties: requestProcessor.class 경로 수정
  com.eactive.eai.common.inflow.dual → com.eactive.eai.inbound.processor
- elink-online-common 서브모듈 포인터 업데이트

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 13:50:58 +09:00
curry772 780b9bd934 feat: 그룹 유량제어 메트릭 API 추가
- GroupMetricDTO: allowed/rejectedPerSecond/rejectedThreshold/rejectRatio 등
- InflowGroupMetricService: DualInflowControlManager를 통한 메트릭 조회·초기화
  (getManager() protected 처리 — 단위 테스트 서브클래싱 지원)
- InflowGroupMetricController: 4개 엔드포인트
  GET  /{groupId}/metric, GET  /metric
  POST /{groupId}/metric/reset, POST /metric/reset
- 단위 테스트 2종 (Service 16건, Controller 8건) 전체 통과
- elink-online-common 서브모듈 포인터 업데이트

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-27 09:40:46 +09:00
curry772 42f52a4974 refactor: InflowGroupBucketService 리플렉션 제거
Field 리플렉션으로 groupBucketList에 직접 접근하던 getCustomGroupBucket()을
InflowControlManager.getGroupBucket() public 메서드 호출로 교체.
불필요한 java.lang.reflect.Field, Map import 및 @SuppressWarnings 제거.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 15:21:15 +09:00
curry772 1a79c39e76 Merge branch 'feature/standard-message-djb' 2026-04-23 14:14:58 +09:00
curry772 bfda9ef610 chore: 매핑설정·테스트 보완 및 서브모듈 포인터 업데이트
[standard-message-mapping-config-djb.properties]
- INST_CODE: eai_node_dvcd → xtis_cd 경로 수정
- REQ_SYS_CODE: 필드 경로 제거 (미사용)

[StandardMessageFlatFlowTest]
- HEAD.chnl_tycd EAI 값 검증 테스트 추가

[elink-online-common]
- RequestProcessor DJErp InterfaceID TODO 주석 추가 커밋 반영

[elink-online-transformer]
- feature/json-validation-test 머지 및 BigDecimal 검사 위치 수정 커밋 반영

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 14:11:02 +09:00
curry772 df1b1f2667 fix: 정상응답 FLAT 왕복 시 MSG 블록 누락 버그 수정 + FLAT 흐름 통합 테스트 추가
[StandardMessageCoordinatorDJB]
coordinateAfterRecvNonStdSyncResponse()에서 dman_rspn_dvcd 미설정 버그 수정.
기본값이 S(요청)이므로, 정상응답 처리 시에도 R(응답)으로 명시적 설정.
→ FlatReader가 MSG 조건(!S) 평가 시 올바르게 블록 포함 판단.

[StandardMessageFlatFlowTest]
비ERP/ERP 요청, 오류응답, 정상응답, 거래로그 시나리오를 포함한
FLAT 직렬화→파싱 왕복 32개 통합 테스트 추가.
elink-online-common submodule 포인터 업데이트 (StandardItem FLAT 버그 픽스 포함).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 10:34:43 +09:00
curry772 a891676617 chore: elink-online-common 서브모듈 포인터 업데이트 (master 반영)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 15:53:37 +09:00
curry772 cd2ab33a0d fix: 표준헤더 진행번호(SendTime) 처리 수정
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 15:40:59 +09:00
curry772 b39a26350e Merge branch 'feature/jejubank-oauth-bypass' 2026-04-22 14:41:40 +09:00
curry772 65d61e646b oAuth 운영 인증서 파일 업데이트
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 14:41:06 +09:00
curry772 68bc6fa47a 제거 2026-04-22 08:52:39 +09:00