sonatype-lift[bot] commented on a change in pull request #8637:
URL: https://github.com/apache/skywalking/pull/8637#discussion_r821724451
##########
File path:
oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/UITemplateManagementDAOImpl.java
##########
@@ -49,12 +50,45 @@
private final InfluxClient client;
@Override
- public List<DashboardConfiguration> getAllTemplates(final Boolean
includingDisabled) throws IOException {
+ public DashboardConfiguration getTemplate(final String id) throws
IOException {
+ if (StringUtil.isEmpty(id)) {
+ return null;
+ }
+
+ final SelectQueryImpl query = select().all()
+ .from(client.getDatabase(),
UITemplate.INDEX_NAME)
+
.where(eq(InfluxConstants.TagName.ID_COLUMN, id))
+ .limit(1);
+
+ final QueryResult.Series series = client.queryForSingleSeries(query);
+ if (log.isDebugEnabled()) {
+ log.debug("SQL: {} result: {}", query.getCommand(), series);
+ }
+ final UITemplate.Builder builder = new UITemplate.Builder();
+
+ if (Objects.nonNull(series)) {
+ List<String> columnNames = series.getColumns();
+ final int size = series.getValues().size();
Review comment:
*UnusedVariable:* The local variable 'size' is never read.
[(details)](https://errorprone.info/bugpattern/UnusedVariable)
(at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with
`help` or `ignore`)
##########
File path:
oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/management/ui/template/UITemplate.java
##########
@@ -37,54 +37,48 @@
@ScopeDeclaration(id = UI_TEMPLATE, name = "UITemplate")
@Stream(name = UITemplate.INDEX_NAME, scopeId = UI_TEMPLATE, builder =
UITemplate.Builder.class, processor = ManagementStreamProcessor.class)
@EqualsAndHashCode(of = {
- "name"
+ "templateId"
}, callSuper = false)
public class UITemplate extends ManagementData {
public static final String INDEX_NAME = "ui_template";
- public static final String NAME = "name";
- public static final String TYPE = "type";
+ public static final String TEMPLATE_ID = "template_id";
public static final String CONFIGURATION = "configuration";
- public static final String ACTIVATED = "activated";
+ public static final String UPDATE_TIME = "update_time";
public static final String DISABLED = "disabled";
- @Column(columnName = NAME)
- private String name;
- @Column(columnName = TYPE, storageOnly = true)
- private String type;
+ @Column(columnName = TEMPLATE_ID)
+ private String templateId;
/**
* Configuration in JSON format.
*/
@Column(columnName = CONFIGURATION, storageOnly = true, length = 1_000_000)
private String configuration;
- @Column(columnName = ACTIVATED, storageOnly = true)
- private int activated;
+ @Column(columnName = UPDATE_TIME)
+ private long updateTime;
@Column(columnName = DISABLED)
private int disabled;
@Override
public String id() {
- return name;
+ return templateId;
}
public static class Builder implements StorageHashMapBuilder<UITemplate> {
@Override
public UITemplate storage2Entity(final Map<String, Object> dbMap) {
UITemplate uiTemplate = new UITemplate();
- uiTemplate.setName((String) dbMap.get(NAME));
- uiTemplate.setType((String) dbMap.get(TYPE));
+ uiTemplate.setTemplateId((String) dbMap.get(TEMPLATE_ID));
uiTemplate.setConfiguration((String) dbMap.get(CONFIGURATION));
- uiTemplate.setActivated(((Number)
dbMap.get(ACTIVATED)).intValue());
uiTemplate.setDisabled(((Number) dbMap.get(DISABLED)).intValue());
Review comment:
*NULL_DEREFERENCE:* object returned by `dbMap.get("disabled")` could be
null and is dereferenced at line 72.
(at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with
`help` or `ignore`)
##########
File path:
oap-server/server-storage-plugin/storage-influxdb-plugin/src/main/java/org/apache/skywalking/oap/server/storage/plugin/influxdb/query/UITemplateManagementDAOImpl.java
##########
@@ -49,12 +50,45 @@
private final InfluxClient client;
@Override
- public List<DashboardConfiguration> getAllTemplates(final Boolean
includingDisabled) throws IOException {
+ public DashboardConfiguration getTemplate(final String id) throws
IOException {
+ if (StringUtil.isEmpty(id)) {
+ return null;
+ }
+
+ final SelectQueryImpl query = select().all()
+ .from(client.getDatabase(),
UITemplate.INDEX_NAME)
+
.where(eq(InfluxConstants.TagName.ID_COLUMN, id))
+ .limit(1);
+
+ final QueryResult.Series series = client.queryForSingleSeries(query);
+ if (log.isDebugEnabled()) {
+ log.debug("SQL: {} result: {}", query.getCommand(), series);
+ }
+ final UITemplate.Builder builder = new UITemplate.Builder();
+
+ if (Objects.nonNull(series)) {
+ List<String> columnNames = series.getColumns();
Review comment:
*NULL_DEREFERENCE:* object `series` last assigned on line 63 could be
null and is dereferenced at line 70.
(at-me [in a reply](https://help.sonatype.com/lift/talking-to-lift) with
`help` or `ignore`)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]