11 changed files with 143 additions and 50 deletions
-
5src/src/main/java/com/my/graphiteDigesterBg/diframe/DiDevice.java
-
65src/src/main/java/com/my/graphiteDigesterBg/diframe/DiDeviceRuntimeVariableManager.java
-
22src/src/main/java/com/my/graphiteDigesterBg/diframe/DiOptionManager.java
-
2src/src/main/java/com/my/graphiteDigesterBg/diframe/api/DiApiDevice.java
-
15src/src/main/java/com/my/graphiteDigesterBg/diframe/model/DiMdbOption.java
-
18src/src/main/java/com/my/graphiteDigesterBg/diframe/model/DiMdbRuntimeVariable.java
-
4src/src/main/java/com/my/graphiteDigesterBg/move/MoveLiquidAdd.java
-
22src/src/main/java/com/my/graphiteDigesterBg/resource/ResAcidBucket.java
-
28src/src/main/java/com/my/graphiteDigesterBg/resource/ResAcidManager.java
-
10src/src/main/java/com/my/graphiteDigesterBg/task/TaskStartReset.java
-
2src/web/src/pages/main/contents/AcidManagement.vue
@ -1,50 +1,55 @@ |
|||||
package com.my.graphiteDigesterBg.diframe; |
package com.my.graphiteDigesterBg.diframe; |
||||
|
import com.my.graphiteDigesterBg.diframe.model.DiMdbRuntimeVariable; |
||||
import java.util.Map; |
import java.util.Map; |
||||
public class DiDeviceRuntimeVariableManager { |
public class DiDeviceRuntimeVariableManager { |
||||
// variables |
|
||||
private final Map<String, Object> variables; |
|
||||
|
// get location value |
||||
|
public DiMdbRuntimeVariable getVariable(String key, Object ... args ) { |
||||
|
key = this.buildKey(key, args); |
||||
|
return DiActiveRecord.findOne(DiMdbRuntimeVariable.class, Map.of("key", key)); |
||||
|
} |
||||
|
|
||||
// constructor |
|
||||
public DiDeviceRuntimeVariableManager() { |
|
||||
this.variables = new java.util.HashMap<>(); |
|
||||
|
// build key |
||||
|
private String buildKey(String key, Object ... args) { |
||||
|
StringBuilder keyBuilder = new StringBuilder(key); |
||||
|
for (Object arg : args) { |
||||
|
keyBuilder.append(".").append(arg.toString()); |
||||
|
} |
||||
|
return keyBuilder.toString(); |
||||
} |
} |
||||
|
|
||||
// get string |
// get string |
||||
public String getString(String name) { |
|
||||
return (String)this.variables.get(name); |
|
||||
|
public String getString(String name, Object ... args ) { |
||||
|
var variable = this.getVariable(name, args); |
||||
|
return null == variable ? null : variable.value; |
||||
} |
} |
||||
|
|
||||
// get integer |
// get integer |
||||
public Integer getInteger(String name) { |
|
||||
return (Integer)this.variables.get(name); |
|
||||
} |
|
||||
|
|
||||
// get object |
|
||||
public Object get(String name) { |
|
||||
return this.variables.get(name); |
|
||||
} |
|
||||
|
|
||||
// get by class |
|
||||
public <T> T get(String name, Class<T> clazz) { |
|
||||
return (T)this.variables.get(name); |
|
||||
|
public Integer getInteger(String name, Object ... args ) { |
||||
|
var variable = this.getVariable(name, args); |
||||
|
return null == variable ? null : Integer.parseInt(variable.value); |
||||
} |
} |
||||
|
|
||||
// set string |
// set string |
||||
public void setString(String name, String value) { |
|
||||
this.variables.put(name, value); |
|
||||
} |
|
||||
|
|
||||
public void setInteger(String name, Integer value) { |
|
||||
this.variables.put(name, value); |
|
||||
|
public void setString(String value, String name, Object ... args ) { |
||||
|
var variable = this.getVariable(name, args); |
||||
|
if ( null == variable ) { |
||||
|
variable = new DiMdbRuntimeVariable(); |
||||
|
variable.key = this.buildKey(name, args); |
||||
|
} |
||||
|
variable.value = value; |
||||
|
variable.save(); |
||||
} |
} |
||||
|
|
||||
// set object |
|
||||
public void set(String name, Object value) { |
|
||||
this.variables.put(name, value); |
|
||||
|
// set integer |
||||
|
public void setInteger(Integer value, String name, Object ... args ) { |
||||
|
this.setString(value.toString(), name, args); |
||||
} |
} |
||||
|
|
||||
// remove |
// remove |
||||
public void remove(String name) { |
|
||||
this.variables.remove(name); |
|
||||
|
public void remove(String name, Object ... args ) { |
||||
|
var variable = this.getVariable(name); |
||||
|
if ( null != variable ) { |
||||
|
variable.delete(); |
||||
|
} |
||||
} |
} |
||||
} |
} |
@ -0,0 +1,22 @@ |
|||||
|
package com.my.graphiteDigesterBg.diframe; |
||||
|
import com.my.graphiteDigesterBg.diframe.model.DiMdbOption; |
||||
|
import java.util.Map; |
||||
|
public class DiOptionManager { |
||||
|
// get integer |
||||
|
public Integer getInteger(String key, Object ... args ) { |
||||
|
var option = this.getOption(key, args); |
||||
|
return Integer.parseInt(option.value); |
||||
|
} |
||||
|
|
||||
|
// get location value |
||||
|
public DiMdbOption getOption(String key, Object ... args ) { |
||||
|
StringBuilder keyBuilder = new StringBuilder(key); |
||||
|
for (Object arg : args) { |
||||
|
keyBuilder.append(".").append(arg.toString()); |
||||
|
} |
||||
|
key = keyBuilder.toString(); |
||||
|
var option = DiActiveRecord.findOne(DiMdbOption.class, Map.of("key", key)); |
||||
|
assert option != null; |
||||
|
return option; |
||||
|
} |
||||
|
} |
@ -0,0 +1,15 @@ |
|||||
|
package com.my.graphiteDigesterBg.diframe.model; |
||||
|
import com.my.graphiteDigesterBg.diframe.DiActiveRecord; |
||||
|
public class DiMdbOption extends DiActiveRecord { |
||||
|
// id |
||||
|
public Integer id; |
||||
|
// key |
||||
|
public String key; |
||||
|
// value |
||||
|
public String value; |
||||
|
|
||||
|
// get table name |
||||
|
public static String getTableName() { |
||||
|
return "app_options"; |
||||
|
} |
||||
|
} |
@ -0,0 +1,18 @@ |
|||||
|
package com.my.graphiteDigesterBg.diframe.model; |
||||
|
import com.my.graphiteDigesterBg.diframe.ActiveRecordField; |
||||
|
import com.my.graphiteDigesterBg.diframe.DiActiveRecord; |
||||
|
public class DiMdbRuntimeVariable extends DiActiveRecord { |
||||
|
@ActiveRecordField |
||||
|
public Integer id; |
||||
|
|
||||
|
@ActiveRecordField |
||||
|
public String key; |
||||
|
|
||||
|
@ActiveRecordField |
||||
|
public String value; |
||||
|
|
||||
|
// get table name |
||||
|
public static String getTableName() { |
||||
|
return "app_runtime_variables"; |
||||
|
} |
||||
|
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue