Я сбиваю с толку создание пользовательского соединителя для WSO2 ESB 5.0.0. Мне нужен специальный разъем для устаревшего устройства (термометр). Этот разъем будет вызываться через ESB REST API. Единственное, что должен сделать коннектор, это создать соединение сокета с заданным IP-адресом (входным параметром разъема), а затем проанализировать данные ответа. Программа работает совершенно одна. Однако я не знаю, как его интегрировать в пользовательский коннектор. Особенно, как отправить данные из соединителя в ответ на вызов API.Специальный соединитель WSO2 ESB
Мой код Разъем:
@Override
public void connect(MessageContext messageContext) throws ConnectException {
Object templateParam = getParameter(messageContext, "generated_param");
try {
log.info("sample connector received message :" + templateParam);
/**Add your connector code here
**/
Socket socket = new Socket("172.16.xxx.xxx", 2000);
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF8"));
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
out.write("*SRTC\r");
out.flush();
System.out.println(in.readLine());
out.close();
in.close();
socket.close();
} catch (Exception e) {
throw new ConnectException(e);
}
}
Если сообщение in.readLine() следует отправить ???
вам нужно указан в/для вашего медиатора. эти параметры могут быть доступны внутри медиатора в качестве свойств, а ответ посредника может быть помещен в свойство или в полезную нагрузку сообщения. –
спасибо, кроме того, я не уверен, как вызывать пользовательский коннектор в ESB API. Какая правильная последовательность API? – vladikk