Class XmlSocketParser

  • All Implemented Interfaces:
    XmlConstants
    Direct Known Subclasses:
    XmlSocketServer.ConnectionHandler

    public class XmlSocketParser
    extends XmlStreamParser
    Провайдер трассы, переданной по сети в формате XML (такие трассы генерируются с помощью XmlFormatter или приходят из CTESK).

    Слушает TCP-порт с указанным номером. При вызове метода process() принимает ровно 1 входящее соединение, читает весь переданный по нему поток XML-сообщений и обрабатывает полученную трассу. При необходимости можно вызывать метод process() несколько раз, при этом каждый раз будет обрабатываться очередное сетевое соединение.

    Также используется классом XmlSocketServer для обработки принятых им соединений.

    See Also:
    XmlSocketServer
    • Field Detail

      • serverSock

        protected java.net.ServerSocket serverSock
        Для работы в режиме сервера.
      • port

        protected int port
      • connection

        protected java.net.Socket connection
        Для работы в режиме обработки одного соединения.
      • channelPrefix

        protected java.lang.String channelPrefix
      • channelIds

        protected java.util.HashMap<java.lang.String,​java.lang.String> channelIds
    • Constructor Detail

      • XmlSocketParser

        public XmlSocketParser​(int port)
                        throws java.io.IOException
        Конструктор.
        Parameters:
        port - TCP-порт для приёма соединений.
        Throws:
        java.io.IOException
      • XmlSocketParser

        protected XmlSocketParser​(java.net.Socket sock)
    • Method Detail

      • closeSocket

        public void closeSocket()
        Закрыть серверный сокет.
      • finalize

        protected void finalize()
                         throws java.lang.Throwable
        Overrides:
        finalize in class java.lang.Object
        Throws:
        java.lang.Throwable
      • setChannelPrefix

        protected void setChannelPrefix​(java.lang.String prefix)
      • getChannelPrefix

        protected java.lang.String getChannelPrefix()
      • getInputStream

        protected java.io.InputStream getInputStream()
                                              throws java.io.IOException,
                                                     java.lang.IllegalStateException
        Specified by:
        getInputStream in class XmlStreamParser
        Throws:
        java.io.IOException
        java.lang.IllegalStateException
      • setTraceDesc

        public void setTraceDesc​(java.lang.String traceDesc)
      • channelFor

        protected java.lang.String channelFor​(java.lang.String traceChannelId)
        Description copied from class: XmlStreamParser
        Преобразует идентификатор канала, полученный из входной трассы, в идентификатор канала для использования в системе обработки трасс. Реализация по умолчанию возвращает полученное значение.
        Overrides:
        channelFor in class XmlStreamParser