Учитывая стороннюю систему, которая передает мне XML через TCP. ВСЕГО передаваемый XML-контент (не одно сообщение потока, а объединенные сообщения) выглядит следующим образом:
<root>
<insert ....><remark>...</remark></insert>
<delete ....><remark>...</remark></delete>
<insert ....><remark>...</remark></insert>
....
<insert ....><remark>...</remark></insert>
</root>
Каждая строка вышеупомянутого образца может обрабатываться индивидуально. Так как это потоковый процесс, я не могу просто ждать, пока все придет, я должен обрабатывать контент по мере поступления. Проблема в том, что фрагменты контента могут быть разрезаны по любой точке, теги не соблюдаются.
У вас есть хороший совет о том, как обрабатывать контент, если он поступает такими фрагментами?
Кусок 1:
<root>
<insert ....><rem
Кусок 2:
ark>...</remark></insert>
<delete ....><remark>...</remark></delete>
<insert ....><remark>...</rema
Кусок N:
rk></insert>
....
<insert ....><remark>...</remark></insert>
</root>
РЕДАКТИРОВАТЬ:
Хотя скорость обработки не имеет значения (никаких проблем в реальном времени), я не могу дождаться полного сообщения. Практически последний кусок никогда не прибывает. Сторонняя система отправляет сообщения всякий раз, когда она сталкивается с изменениями. Процесс никогда не заканчивается, это поток, который никогда не останавливается.