리소스 이벤트 핸들러

1 개요[ | ]

Resource Event Handler
리소스 이벤트 핸들러
  • Resource Event Handler는 컨트롤러가 특정 리소스의 변경사항에 대한 알림을 처리하는 곳이다.

ResourceEventHandlerFuncs
리소스 이벤트 핸들러 함수들 구조체
  • ResourceEventHandlerFuncs는 ResourceEventHandler를 구현하는 동안 원하는 만큼 알림 기능을 쉽게 지정할 수 있게 해주는 어댑터이다. 이 어댑터는 오브젝트 수정 금지를 제거하지 않는다.
  • HasSynced를 전파(propagate)해야 하는 경우 ResourceEventHandlerDetailedFuncs를 참조하자.
type ResourceEventHandlerFuncs struct {
	AddFunc    func(obj interface{})
	UpdateFunc func(oldObj, newObj interface{})
	DeleteFunc func(obj interface{})
}
  • AddFunc는 새 리소스가 생성될 때 호출된다.
  • UpdateFunc는 기존 리소스가 수정될 때 호출된다. oldObj는 리소스의 마지막으로 알려진 상태이다. UpdateFunc는 재동기화가 발생할 때도 호출되며, 아무것도 변경되지 않은 경우에도 호출된다.
  • DeleteFunc는 기존 리소스가 삭제될 때 호출된다. 리소스의 최종 상태를 가져온다(알려진 경우). 그렇지 않으면 DeletedFinalStateUnknown 타입의 오브젝트를 가져온다. 이는 감시(watch)가 닫혀 있고 삭제 이벤트를 놓치고 컨트롤러가 후속 목록 재조회(re-list)가 나올 때까지 삭제를 인지하지 못하는 경우에 발생할 수 있다.

2 같이 보기[ | ]

3 참고[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}