Java часть была написана мною для того,чтобы возможно было из java программ управлять браузером, и работать с деревом html объектов (как локальной копией, построеной библиотекой htmlParser, так и деревом html объектов в Internet Explorer).
За взаимодейтствие с C++ частью отвечает класс BHOManager. В случае, если при взаимодействии возникают ошибки (например, объект BHO вовремя не присылает результат обработки команды),может быть выброшена ошибка BHOManagerException.
Сразу после создания экземпляра класса BHOManager создается новый класс BHONetworkManager,у которого вызывается метод recieveBHOConnection в отдельном потоке.
Метод recieveBHOConnection отвечает за:
1.Прием соединений от объектов Browser Helper Object (то есть от объектов C++ части проекта).
2.Прием параметров от объектов Browser Helper Object.
В этом методе открывается порт 8082 для взаимодействия с C++ частью
Отправка команд C++ части и ожидание ответа осуществляется в основном потоке, в котором работают и автоматизированные тесты (то есть вызовы методов для выполнения команд являются блокирующими).
Поскольку номер порта, который прослушивает java часть,является фиксированным и определен протоколом, на одной операционной системе одновременно может быть запущен только один экземпляр класса NetworkController, и ,соответственно, запущен только один автоматизированный тест, использующий данную библиотеку.
Java-doc документация может быть найдена по этой ссылке.