private void publishBirth() {
try {
synchronized (seqLock) {
seq = 0;
SparkplugBPayload payload = new SparkplugBPayload(new Date(), new ArrayList<Metric>(), getSeqNum(),
newUUID(), null);
payload.addMetric(new MetricBuilder("bdSeq", Int64, (long) bdSeq).createMetric());
payload.addMetric(new MetricBuilder("Node Control/Rebirth", Boolean, false).createMetric());
payload.addMetric(
new MetricBuilder("simpleType", Template, newSimpleTemplate(true, null)).createMetric());
payload.addMetric(new MetricBuilder("mySimpleType", Template, newSimpleTemplate(false, "simpleType"))
.createMetric());
payload.addMetrics(newComplexTemplateDefs());
System.out.println("Publishing Edge Node Birth");
executor.execute(new Publisher(NAMESPACE + "/" + groupId + "/NBIRTH/" + edgeNode, payload));
payload = new SparkplugBPayload(new Date(), newComplexTemplateInstance(), getSeqNum(), newUUID(), null);
System.out.println("Publishing Device Birth");
executor.execute(
new Publisher(NAMESPACE + "/" + groupId + "/DBIRTH/" + edgeNode + "/" + deviceId, payload));
}
} catch (Exception e) {
e.printStackTrace();
}
}