Sammanfoga flera strömmar

Med insticksprogrammet för sökning kan du anpassa vyer så att en användare får hjälp med att sammanfoga olika innehållsflöden. Ibland är det dock önskvärt att kunna göra detta utan hjälp. Via utökningspunkten org.eclipse.compare.streamMergers kan du bidra med en klass som sammanfogar tre olika indataflöden till ett enda utdataflöde. Flödessammanslagningar kan associeras till filtillägg eller bindas till en viss innehållstyp. I insticksprogrammet för sökning definieras en flödessammanslagare för sammanslagning av tre dataflöden med oformaterad text:

<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>

Själva flödessammanslagaren beskrivs i streamMerger-elementet. Du måste ange ID för sammanslagaren och klassen som implementerar den. Du kan även ange eventuella filtillägg för vilka flödessammanslagaren ska användas.

Du kan även använda elementet contentTypeBinding för att associera en innehållstyp med flödessammanslagaren.

Flödessammanslagare måste implementera IStreamMerger. Detta enkla gränssnitt sammanfogar innehållet i tre olika indataflöden till ett enda utdataflöde. Den inte-så-enkla implementeringen beror på ditt insticksprogram och dess innehållstyper.

Nya IStreamMerger kan skapas för typer som registrerats med createStreamMerger-metoder för CompareUI.