검색 플러그인을 사용하면 사용자가 다른 컨텐츠 스트림을 병합할 때 도움이 되는 보기를 사용자 정의할 수 있습니다. 그러나 일부의 경우 사용자에게 도움을 주지 않고 스트림을 병합하는 기능이 바람직합니다. 확장점 org.eclipse.compare.streamMergers를 사용하면 세 개의 서로 다른 입력 스트림을 단일 출력 스트림으로 병합하는 클래스를 제공할 수 있습니다. 스트림 병합기는 파일 확장자와 연관되거나 특정 컨텐츠 유형에 바인드될 수 있습니다. 검색 플러그인은 일반 텍스트의 세 개 스트림을 병합하는 스트림 병합기를 정의합니다.
<extension point="org.eclipse.compare.streamMergers"> <streamMerger extensions="txt" class="org.eclipse.compare.internal.merge.TextStreamMerger" id="org.eclipse.compare.internal.merge.TextStreamMerger"> </streamMerger> <contentTypeBinding contentTypeId="org.eclipse.core.runtime.text" streamMergerId="org.eclipse.compare.internal.merge.TextStreamMerger"> </contentTypeBinding> </extension>
스트림 병합기 자체는 streamMerger 요소에 설명됩니다. 병합기의 ID 및 ID를 작성하는 클래스를 지정해야 합니다. 스트림 병합기를 사용해야 하는 모든 파일 확장자도 지정할 수 있습니다.
contentTypeBinding 요소를 사용하여 컨텐츠 유형을 스트림 병합기와 연관시킬 수도 있습니다.
스트림 병합기는 IStreamMerger를 구현해야 합니다. 이 단순 인터페이스는 세 개의 서로 다른 입력 스트림 컨텐츠를 단일 출력 스트림으로 병합합니다. 단순하지 않은 구현은 플러그인 및 컨텐츠 유형에 따라 다릅니다.
새 IStreamMerger는 CompareUI의 createStreamMerger 메소드로 등록된 유형에 대해 작성될 수 있습니다.