thingsboard-aplcache
Changes
extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPlugin.java 7(+7 -0)
Details
diff --git a/extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPlugin.java b/extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPlugin.java
index 797ebf5..a07c80d 100644
--- a/extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPlugin.java
+++ b/extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPlugin.java
@@ -55,6 +55,13 @@ public class RestApiCallPlugin extends AbstractPlugin<RestApiCallPluginConfigura
this.headers.add(AUTHORIZATION_HEADER_NAME, String.format(AUTHORIZATION_HEADER_FORMAT, new String(token)));
}
+ if (configuration.getHeaders() != null) {
+ configuration.getHeaders().forEach(h -> {
+ log.debug("Adding header to request object. Key = {}, Value = {}", h.getKey(), h.getValue());
+ this.headers.add(h.getKey(), h.getValue());
+ });
+ }
+
init();
}
diff --git a/extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPluginConfiguration.java b/extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPluginConfiguration.java
index 2b20e9b..cfd23b8 100644
--- a/extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPluginConfiguration.java
+++ b/extensions/extension-rest-api-call/src/main/java/org/thingsboard/server/extensions/rest/plugin/RestApiCallPluginConfiguration.java
@@ -16,6 +16,9 @@
package org.thingsboard.server.extensions.rest.plugin;
import lombok.Data;
+import org.thingsboard.server.extensions.core.plugin.KeyValuePluginProperties;
+
+import java.util.List;
@Data
public class RestApiCallPluginConfiguration {
@@ -27,4 +30,6 @@ public class RestApiCallPluginConfiguration {
private String userName;
private String password;
+
+ private List<KeyValuePluginProperties> headers;
}
diff --git a/extensions/extension-rest-api-call/src/main/resources/RestApiCallPluginDescriptor.json b/extensions/extension-rest-api-call/src/main/resources/RestApiCallPluginDescriptor.json
index e0e4d18..06f8559 100644
--- a/extensions/extension-rest-api-call/src/main/resources/RestApiCallPluginDescriptor.json
+++ b/extensions/extension-rest-api-call/src/main/resources/RestApiCallPluginDescriptor.json
@@ -30,6 +30,24 @@
"password": {
"title": "Password",
"type": "string"
+ },
+ "headers": {
+ "title": "Request Headers",
+ "type": "array",
+ "items": {
+ "title": "Request Header",
+ "type": "object",
+ "properties": {
+ "key": {
+ "title": "Key",
+ "type": "string"
+ },
+ "value": {
+ "title": "Value",
+ "type": "string"
+ }
+ }
+ }
}
},
"required": [
@@ -62,6 +80,7 @@
{
"key": "password",
"type": "password"
- }
+ },
+ "headers"
]
}
\ No newline at end of file