This is an automated email from the ASF dual-hosted git repository.

sruehl pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-plc4x.git


The following commit(s) were added to refs/heads/master by this push:
     new d0fbfbe  simplified azure example
d0fbfbe is described below

commit d0fbfbe5413ce05331a196516a10ba1085cea86b
Author: Sebastian Rühl <sru...@apache.org>
AuthorDate: Thu Aug 23 16:30:58 2018 +0200

    simplified azure example
---
 .../azure/iothub/S7PlcToAzureIoTHubSample.java     | 33 ++++++++--------------
 1 file changed, 12 insertions(+), 21 deletions(-)

diff --git 
a/examples/azure/src/main/java/org/apache/plc4x/java/examples/azure/iothub/S7PlcToAzureIoTHubSample.java
 
b/examples/azure/src/main/java/org/apache/plc4x/java/examples/azure/iothub/S7PlcToAzureIoTHubSample.java
index e2129f4..10ca886 100644
--- 
a/examples/azure/src/main/java/org/apache/plc4x/java/examples/azure/iothub/S7PlcToAzureIoTHubSample.java
+++ 
b/examples/azure/src/main/java/org/apache/plc4x/java/examples/azure/iothub/S7PlcToAzureIoTHubSample.java
@@ -18,7 +18,9 @@ under the License.
 */
 package org.apache.plc4x.java.examples.azure.iothub;
 
-import com.microsoft.azure.sdk.iot.device.*;
+import com.microsoft.azure.sdk.iot.device.DeviceClient;
+import com.microsoft.azure.sdk.iot.device.IotHubClientProtocol;
+import com.microsoft.azure.sdk.iot.device.Message;
 import org.apache.plc4x.java.PlcDriverManager;
 import org.apache.plc4x.java.api.connection.PlcConnection;
 import org.apache.plc4x.java.api.connection.PlcReader;
@@ -34,35 +36,25 @@ public class S7PlcToAzureIoTHubSample {
 
     private static final Logger LOGGER = 
LoggerFactory.getLogger(S7PlcToAzureIoTHubSample.class);
 
-    private static IotHubClientProtocol protocol = IotHubClientProtocol.MQTT;
-    private static DeviceClient client;
-
-    public static class Callback implements IotHubEventCallback {
-
-        private static final Logger LOGGER = 
LoggerFactory.getLogger(Callback.class);
-
-        @Override
-        public void execute(IotHubStatusCode iotHubStatusCode, Object ctx) {
-            LOGGER.info("Received status: ", iotHubStatusCode);
-        }
-    }
-
     /**
      * Example code do demonstrate sending events from an S7 device to 
Microsoft Azure IoT Hub
      *
      * @param args Expected: [plc4x connection string, plc4x address, IoT-Hub 
connection string].
      */
     public static void main(String[] args) throws Exception {
-        LOGGER.info("Connecting");
-        try (PlcConnection plcConnection = new 
PlcDriverManager().getConnection(args[0])) {
+        String plc4xConnectionString = args[0];
+        String addressString = args[1];
+        String iotConnectionString = args[2];
+        LOGGER.info("Connecting {}, {}, {}", plc4xConnectionString, 
addressString, iotConnectionString);
+        try (PlcConnection plcConnection = new 
PlcDriverManager().getConnection(plc4xConnectionString)) {
             LOGGER.info("Connected");
 
-            client = new DeviceClient(args[2], protocol);
+            DeviceClient client = new DeviceClient(iotConnectionString, 
IotHubClientProtocol.MQTT);
             client.open();
 
             PlcReader plcReader = 
plcConnection.getReader().orElseThrow(IllegalStateException::new);
 
-            Address outputs = plcConnection.parseAddress(args[1]);
+            Address outputs = plcConnection.parseAddress(addressString);
 
             while (!Thread.currentThread().isInterrupted()) {
                 // Simulate telemetry.
@@ -75,10 +67,9 @@ public class S7PlcToAzureIoTHubSample {
                             String result = 
Long.toBinaryString(byteValue.longValue());
                             LOGGER.info("Outputs {}", result);
                             Message msg = new Message("{ \"bits\" : \"" + 
result + "\"}");
-                            // Send the message.
-                            Callback callback = new Callback();
 
-                            client.sendEventAsync(msg, callback, new Object());
+                            // Send the message.
+                            client.sendEventAsync(msg, (responseStatus, 
callbackContext) -> LOGGER.info("Received status: ", responseStatus), new 
Object());
                         }
                     );
 

Reply via email to