이 절에서는 특정 호스트에서 실행 중인 특정 응용 프로그램에 대한 사용자 설정을 사용하여 구성 데이터를 처리하는 방법에 대해 설명합니다.
각 사용자 응용 프로그램에서는 다음과 같은 원본에서 구성 데이터를 검색합니다.
기본 구성 데이터 원본: 응용 프로그램에 대한 기본 설정을 저장합니다. 이 구성 데이터 원본은 응용 프로그램과 함께 배포되며 유효 기간 동안 거의 변경되지 않은 상태로 유지됩니다. 이 데이터 원본에 대한 쿼리 메커니즘과 형식은 응용 프로그램별로 정의됩니다. 응용 프로그램은 "소유" 방법을 사용하여 구성 데이터를 저장하기도 하고, GConf와 같이 구성 데이터의 공유 하위 시스템을 사용하기도 합니다.
사용자 구성 데이터 원본: 응용 프로그램에 대한 사용자 설정을 저장합니다. 이 데이터 원본에 대한 쿼리/업데이트 메커니즘과 형식은 응용 프로그램별로 정의됩니다.
프로필 구성 데이터 원본: 이 데이터 원본은 Sun Desktop Manager 1.0에 의해 제공됩니다. 구성 데이터는 구성 리포지토리에 저장됩니다. 해당 데이터에 액세스하는 메커니즘은 Configuration Agent 및 Configuration Adapters에 의해 제공됩니다.
호스트에서 사용자에 대한 응용 프로그램 설정은 두 단계로 계산됩니다. 프로필 구성 트리가 구성된 다음 구성 데이터 원본이 결합됩니다.
프로필 구성 데이터는 특정 호스트에서 실행하는 사용자 응용 프로그램에 대한 구성 프로필을 보관합니다.
구성 리포지토리에는 조직 단위가 사용자와 함께 계층으로 저장됩니다. 이는 도메인 구성 요소에도 동일하게 적용됩니다.
구성 프로필은 계층에서 요소에 지정됩니다. 요소에 지정된 구성 프로필은 해당 요소의 자식에게 상속됩니다.
응용 프로그램의 구성 데이터는 응용 프로그램을 실행하는 사용자와 응용 프로그램을 실행하는 호스트에 따라 다릅니다.
사용자에게 영향을 주는 구성 설정은 사용자 요소에서 트리의 루트 사이의 경로에 있는 요소에 지정된 구성 프로필에 따라 다릅니다. 사용자에 대한 구성 설정 집합을 구성하려면 이러한 프로필을 병합해야 합니다.
사용자의 응용 프로그램이 실행 중인 호스트를 기반으로 프로필을 정의할 수 있으므로, 호스트에서 트리의 루트 사이의 경로에 있는 요소에 지정된 프로필 또는 호스트에 지정된 프로필을 사용자에게 영향을 주는 구성 프로필과도 병합해야 합니다.
프로필 구성을 만드는 데 사용되는 규칙은 다음과 같습니다.
처리 순서: 프로필이 병합되는 순서는 중요합니다. 구성 프로필은 호스트 로컬 집합, 호스트 글로벌 집합, 사용자 로컬 집합 및 사용자 글로벌 집합의 순서대로 처리됩니다.
한 세트에 구성 프로필이 둘 이상 있는 경우 프로필에 연결된 우선 순위 번호에 따라 프로필의 처리 순서가 결정됩니다. 즉, 번호가 가장 낮은 프로필이 제일 먼저 처리됩니다.
등록 정보 및 값: 등록 정보는 구성에서 정의할 수 있는 요소(예: "배경색")입니다. 값은 등록 정보에 지정하는 값입니다. 예를 들어, "배경색" 등록 정보의 값은 "흰색"입니다.
한 프로필에서 새 등록 정보를 지정하면 등록 정보와 해당 값이 병합된 구성 트리에 추가됩니다.
등록 정보에 시행됨으로 표시된 값이 있으면 새 값이 병합된 트리에 저장됩니다. 다른 프로필에 발생하는 새 등록 정보 값은 무시됩니다.
처리 중인 프로필에 새 값을 정의할 때 등록 정보에 값이 이미 있으면 새 값이 등록 정보에 지정됩니다.
서로 다른 세 개의 구성 데이터 원본에서 제공하는 구성 데이터를 결합하여 사용자 응용 프로그램이 런타임에 사용할 단일 설정 세트를 구성해야 합니다.
기본 구성 공급자가 제공하는 구성 데이터를 읽고 구성 트리를 작성합니다.
클라이언트 응용 프로그램의 사용자와 호스트를 기반으로 프로필 구성 데이터를 구성합니다.
사용자 설정을 읽고 구성 트리를 작성합니다.
세 개의 트리를 하나로 결합하여 응용 프로그램이 사용할 구성 설정을 가져옵니다. 이 프로세스에 적용되는 규칙은 프로필 구성 데이터를 작성할 때 사용되는 규칙과 동일합니다.
결과 트리는 응용 프로그램 어댑터에서 구성 설정을 제공하는 데 사용됩니다.