본문으로 이동
SK-INTELLIX / ARCHITECTURE ATLASMR7 개발 가이드 ↗

전체 Atlas / 모듈 상세 · 1398d109

EventAssetAgent · 프레임→clip→업로드 — 상세 구조도

기준 커밋: 1398d109c391c4044cae26d0e9aea4d3f08d9670. 도식은 기존 구현을 설명한다. 제품 이미지 설치·실기기 성공을 증명하지 않는다.

별도 APK의 IEventAssetService · 자료 파이프라인과 callback 소유

SVG 원본 크게 열기 · Mermaid 원본 · 모듈 분석 본문

EventAssetAgent · 프레임→clip→업로드
SVG 원본을 열어 확대하고, 아래 연결 표에서 E 번호를 확인하세요.

읽는 순서와 연결 의미

행은 책임·실행 경로별 묶음이며 별도 프로세스라는 뜻은 아니다. 같은 행의 인접 연결은 화살표로, 행을 넘거나 떨어진 상자 사이 연결은 동일한 E 번호의 출력·입력 포트로 표시한다. 아래 표는 방향과 의미를 모두 풀어 쓴 것이다. 그림의 코드 파일명을 눌러 저장소로 이동하는 기능은 없으며, 아래 경로로 지정 커밋을 조회할 수 있다.

연결 출발 → 도착 동작 종류
E01 RecordingAidlService → SKIXCameraBrokerClient connect 호출·명령
E02 SKIXCameraBrokerClient → RecordingManager frame 결과·이벤트
E03 RecordingManager → ClipRequestManager finalize 결과 결과·이벤트
E04 ClipRequestManager → ClipAssetStore asset 저장 데이터·구성 의존
E05 ClipRequestManager → ClipCallbackDispatcher clip 상태 결과·이벤트
E06 ClipCallbackDispatcher → WssEventAssetManager Binder event 결과·이벤트
E07 RecordingAidlService → UploadRequestHandler upload / cancel 호출·명령
E08 UploadRequestHandler → ClipUploadService start service 호출·명령
E09 ClipUploadService → UploadExecutor execute 호출·명령
E10 UploadExecutor → UploadHttpClient upload 호출·명령
E11 ClipUploadService → UploadCallbackDispatcher run 반환 후 dispatchFinished 호출·명령

구성요소별 책임과 코드 근거

상자 구성요소 책임·상태 지정 커밋의 소스 경로
N01 RecordingAidlService IEventAssetService / EventAssetIo / capture·clip·upload 입구 apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/RecordingAidlService.java
N02 SKIXCameraBrokerClient 외부 camera broker Binder / shared-memory frame 읽기 apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/broker/SKIXCameraBrokerClient.java
N03 RecordingManager prebuffer / audio·video / muxer / capture thread / finalizing apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/recording/RecordingManager.java
N04 ClipRequestManager 요청 queue / clip 수명 / finalized metadata 연결 apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/clip/ClipRequestManager.java
N05 ClipAssetStore 실제 asset 파일 / 유효성·조회·삭제 apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/storage/ClipAssetStore.java
N06 ClipCallbackDispatcher RemoteCallbackList / onClipStateChanged fan-out apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/callback/ClipCallbackDispatcher.java
N07 WssEventAssetManager DA의 검증·업로드 정책 / clip callback 소비 apps/DeviceAgent/app/src/main/java/com/sk/airbot/deviceagent/wss/eventasset/WssEventAssetManager.java
N08 UploadRequestHandler upload / cancel 접수 / service 요청 구성 apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/upload/UploadRequestHandler.java
N09 ClipUploadService 업로드 생명주기 / UploadExecutor 시작 apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/upload/ClipUploadService.java
N10 UploadExecutor asset 검증 / upload 실행 / 취소·결과 처리 apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/upload/UploadExecutor.java
N11 UploadHttpClient HTTP upload / 원격 endpoint는 외부 apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/upload/UploadHttpClient.java
N12 UploadCallbackDispatcher DB 상태·retry 연계 / onUploadStateChanged apps/EventAssetAgent/app/src/main/java/com/sk/airbot/eventassetagent/service/callback/UploadCallbackDispatcher.java

해석 경계와 변경 시 검토

Connections

전체 시각 자료 · 전체 분석 · 모듈 분석 · 전체 소스 근거