- private Reply performRequest(SimpleFieldSet fields, Bucket data) throws PluginException {
- final String identifier = "FCP-Command-" + System.currentTimeMillis() + "-" + counter.getAndIncrement();
- final Reply reply = new Reply();
- logger.log(Level.FINE, String.format("Sending FCP Request: %s", fields.get("Message")));
- ConnectorListener connectorListener = new ConnectorListener() {
-
- @Override
- @SuppressWarnings("synthetic-access")
- public void receivedReply(PluginConnector pluginConnector, SimpleFieldSet fields, Bucket data) {
- String messageName = fields.get("Message");
- logger.log(Level.FINEST, String.format("Received Reply from Plugin: %s", messageName));
- synchronized (reply) {
- reply.setFields(fields);
- reply.setData(data);
- reply.notify();
- }
- }
- };
- pluginConnector.addConnectorListener(WOT_PLUGIN_NAME, identifier, connectorListener);
- synchronized (reply) {
- pluginConnector.sendRequest(WOT_PLUGIN_NAME, identifier, fields, data);
- try {
- reply.wait();
- } catch (InterruptedException ie1) {
- logger.log(Level.WARNING, String.format("Got interrupted while waiting for reply on %s.", fields.get("Message")), ie1);
- }
- }
- pluginConnector.removeConnectorListener(WOT_PLUGIN_NAME, identifier, connectorListener);
- logger.log(Level.FINEST, String.format("Received FCP Response for %s: %s", fields.get("Message"), (reply.getFields() != null) ? reply.getFields().get("Message") : null));
- if ((reply.getFields() == null) || "Error".equals(reply.getFields().get("Message"))) {
+ private PluginReply performRequest(SimpleFieldSet fields, Bucket data) throws PluginException {
+ logger.log(Level.FINE, format("Sending FCP Request: %s", fields.get("Message")));
+ PluginReply pluginReply = pluginConnector.sendRequest(WOT_PLUGIN_NAME, "", fields, data);
+ logger.log(Level.FINEST, format("Received FCP Response for %s: %s", fields.get("Message"), pluginReply.getFields().get("Message")));
+ if ("Error".equals(pluginReply.getFields().get("Message"))) {