Browse Source

Merge branch 'master' of https://github.com/thingsboard/thingsboard

pull/874/head
charlie 8 years ago
parent
commit
9560a65718
  1. 2
      application/pom.xml
  2. 4
      application/src/main/java/org/thingsboard/server/actors/tenant/TenantActor.java
  3. 26
      application/src/main/scripts/windows/service.xml
  4. 2
      common/data/pom.xml
  5. 2
      common/message/pom.xml
  6. 2
      common/pom.xml
  7. 2
      common/transport/pom.xml
  8. 2
      dao/pom.xml
  9. 4
      netty-mqtt/pom.xml
  10. 2
      pom.xml
  11. 2
      rule-engine/pom.xml
  12. 2
      rule-engine/rule-engine-api/pom.xml
  13. 2
      rule-engine/rule-engine-components/pom.xml
  14. 2
      tools/pom.xml
  15. 2
      transport/coap/pom.xml
  16. 2
      transport/http/pom.xml
  17. 2
      transport/mqtt/pom.xml
  18. 2
      transport/pom.xml
  19. 2
      ui/package.json
  20. 2
      ui/pom.xml
  21. 2
      ui/src/app/api/alias-controller.js
  22. 2
      ui/src/app/api/entity.service.js
  23. 6
      ui/src/app/components/datasource-entity.tpl.html
  24. 4
      ui/src/app/components/datasource-func.tpl.html
  25. 10
      ui/src/app/components/details-sidenav.scss
  26. 6
      ui/src/app/components/widget/widget-config.tpl.html
  27. 3
      ui/src/app/device/device-card.tpl.html
  28. 12
      ui/src/app/widget/lib/CanvasDigitalGauge.js
  29. 5
      ui/src/app/widget/lib/canvas-digital-gauge.js

2
application/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>thingsboard</artifactId>
</parent>
<artifactId>application</artifactId>

4
application/src/main/java/org/thingsboard/server/actors/tenant/TenantActor.java

@ -109,11 +109,15 @@ public class TenantActor extends RuleChainManagerActor {
}
private void onServiceToRuleEngineMsg(ServiceToRuleEngineMsg msg) {
if (ruleChainManager.getRootChainActor()!=null)
ruleChainManager.getRootChainActor().tell(msg, self());
else logger.info("[{}] No Root Chain", msg);
}
private void onDeviceActorToRuleEngineMsg(DeviceActorToRuleEngineMsg msg) {
if (ruleChainManager.getRootChainActor()!=null)
ruleChainManager.getRootChainActor().tell(msg, self());
else logger.info("[{}] No Root Chain", msg);
}
private void onRuleChainMsg(RuleChainToRuleChainMsg msg) {

26
application/src/main/scripts/windows/service.xml

@ -10,6 +10,32 @@
<executable>java</executable>
<startargument>-Dplatform=windows</startargument>
<startargument>-Dinstall.data_dir=%BASE%\data</startargument>
<startargument>-Xloggc:%BASE%\logs\gc.log</startargument>
<startargument>-XX:+HeapDumpOnOutOfMemoryError</startargument>
<startargument>-XX:+PrintGCDetails</startargument>
<startargument>-XX:+PrintGCDateStamps</startargument>
<startargument>-XX:+PrintHeapAtGC</startargument>
<startargument>-XX:+PrintTenuringDistribution</startargument>
<startargument>-XX:+PrintGCApplicationStoppedTime</startargument>
<startargument>-XX:+UseGCLogFileRotation</startargument>
<startargument>-XX:NumberOfGCLogFiles=10</startargument>
<startargument>-XX:GCLogFileSize=10M</startargument>
<startargument>-XX:-UseBiasedLocking</startargument>
<startargument>-XX:+UseTLAB</startargument>
<startargument>-XX:+ResizeTLAB</startargument>
<startargument>-XX:+PerfDisableSharedMem</startargument>
<startargument>-XX:+UseCondCardMark</startargument>
<startargument>-XX:CMSWaitDuration=10000</startargument>
<startargument>-XX:+UseParNewGC</startargument>
<startargument>-XX:+UseConcMarkSweepGC</startargument>
<startargument>-XX:+CMSParallelRemarkEnabled</startargument>
<startargument>-XX:+CMSParallelInitialMarkEnabled</startargument>
<startargument>-XX:+CMSEdenChunksRecordAlways</startargument>
<startargument>-XX:CMSInitiatingOccupancyFraction=75</startargument>
<startargument>-XX:+UseCMSInitiatingOccupancyOnly</startargument>
<startargument>-Xms512m</startargument>
<startargument>-Xmx1024m</startargument>
<startargument>-jar</startargument>
<startargument>%BASE%\lib\${pkg.name}.jar</startargument>
</service>

2
common/data/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>common</artifactId>
</parent>
<groupId>org.thingsboard.common</groupId>

2
common/message/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>common</artifactId>
</parent>
<groupId>org.thingsboard.common</groupId>

2
common/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>thingsboard</artifactId>
</parent>
<groupId>org.thingsboard</groupId>

2
common/transport/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>common</artifactId>
</parent>
<groupId>org.thingsboard.common</groupId>

2
dao/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>thingsboard</artifactId>
</parent>
<artifactId>dao</artifactId>

4
netty-mqtt/pom.xml

@ -19,12 +19,12 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>thingsboard</artifactId>
</parent>
<groupId>org.thingsboard</groupId>
<artifactId>netty-mqtt</artifactId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Netty MQTT Client</name>

2
pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.thingsboard</groupId>
<artifactId>thingsboard</artifactId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Thingsboard</name>

2
rule-engine/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>thingsboard</artifactId>
</parent>
<artifactId>rule-engine</artifactId>

2
rule-engine/rule-engine-api/pom.xml

@ -22,7 +22,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>rule-engine</artifactId>
</parent>
<groupId>org.thingsboard.rule-engine</groupId>

2
rule-engine/rule-engine-components/pom.xml

@ -22,7 +22,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>rule-engine</artifactId>
</parent>
<groupId>org.thingsboard.rule-engine</groupId>

2
tools/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>thingsboard</artifactId>
</parent>
<groupId>org.thingsboard</groupId>

2
transport/coap/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>transport</artifactId>
</parent>
<groupId>org.thingsboard.transport</groupId>

2
transport/http/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>transport</artifactId>
</parent>
<groupId>org.thingsboard.transport</groupId>

2
transport/mqtt/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>transport</artifactId>
</parent>
<groupId>org.thingsboard.transport</groupId>

2
transport/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>thingsboard</artifactId>
</parent>
<groupId>org.thingsboard</groupId>

2
ui/package.json

@ -1,7 +1,7 @@
{
"name": "thingsboard",
"private": true,
"version": "2.0.2",
"version": "2.0.4",
"description": "Thingsboard UI",
"licenses": [
{

2
ui/pom.xml

@ -20,7 +20,7 @@
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.thingsboard</groupId>
<version>2.0.3-SNAPSHOT</version>
<version>2.0.4-SNAPSHOT</version>
<artifactId>thingsboard</artifactId>
</parent>
<groupId>org.thingsboard</groupId>

2
ui/src/app/api/alias-controller.js

@ -146,6 +146,7 @@ export default class AliasController {
newDatasource.entityId = resolvedEntity.id;
newDatasource.entityType = resolvedEntity.entityType;
newDatasource.entityName = resolvedEntity.name;
newDatasource.entityDescription = resolvedEntity.entityDescription
newDatasource.name = resolvedEntity.name;
newDatasource.generated = i > 0 ? true : false;
datasources.push(newDatasource);
@ -167,6 +168,7 @@ export default class AliasController {
datasource.entityType = entity.entityType;
datasource.entityName = entity.name;
datasource.name = entity.name;
datasource.entityDescription = entity.entityDescription;
deferred.resolve([datasource]);
} else {
if (aliasInfo.stateEntity) {

2
ui/src/app/api/entity.service.js

@ -329,7 +329,7 @@ function EntityService($http, $q, $filter, $translate, $log, userService, device
}
function entityToEntityInfo(entity) {
return { name: entity.name, entityType: entity.id.entityType, id: entity.id.id };
return { name: entity.name, entityType: entity.id.entityType, id: entity.id.id, entityDescription: entity.additionalInfo?entity.additionalInfo.description:"" };
}
function entityRelationInfoToEntityInfo(entityRelationInfo, direction) {

6
ui/src/app/components/datasource-entity.tpl.html

@ -60,7 +60,7 @@
<div class="tb-color-preview" ng-click="showColorPicker($event, $chip, $index)" style="margin-right: 5px;">
<div class="tb-color-result" ng-style="{background: $chip.color}"></div>
</div>
<div layout="row" flex>
<div layout="row">
<div class="tb-chip-label">
{{$chip.label}}
</div>
@ -112,7 +112,7 @@
<div class="tb-color-preview" ng-click="showColorPicker($event, $chip, $index)" style="margin-right: 5px;">
<div class="tb-color-result" ng-style="{background: $chip.color}"></div>
</div>
<div layout="row" flex>
<div layout="row">
<div class="tb-chip-label">
{{$chip.label}}
</div>
@ -164,7 +164,7 @@
<div class="tb-color-preview" ng-click="showColorPicker($event, $chip, $index)" style="margin-right: 5px;">
<div class="tb-color-result" ng-style="{background: $chip.color}"></div>
</div>
<div layout="row" flex>
<div layout="row">
<div class="tb-chip-label">
{{$chip.label}}
</div>

4
ui/src/app/components/datasource-func.tpl.html

@ -61,7 +61,7 @@
<div class="tb-color-preview" ng-click="showColorPicker($event, $chip, $index)" style="margin-right: 5px;">
<div class="tb-color-result" ng-style="{background: $chip.color}"></div>
</div>
<div layout="row" flex>
<div layout="row">
<div class="tb-chip-label">
{{$chip.label}}
</div>
@ -112,7 +112,7 @@
<div class="tb-color-preview" ng-click="showColorPicker($event, $chip, $index)" style="margin-right: 5px;">
<div class="tb-color-result" ng-style="{background: $chip.color}"></div>
</div>
<div layout="row" flex>
<div layout="row">
<div class="tb-chip-label">
{{$chip.label}}
</div>

10
ui/src/app/components/details-sidenav.scss

@ -59,14 +59,4 @@ md-sidenav.tb-sidenav-details {
background-color: $primary-hue-3;
}
}
md-tab-content.md-active > div {
height: 100%;
& > *:first-child {
height: 100%;
}
md-content {
height: 100%;
}
}
}

6
ui/src/app/components/widget/widget-config.tpl.html

@ -187,17 +187,17 @@
</div>
<div layout='column' layout-align="center" layout-gt-sm='row' layout-align-gt-sm="start center">
<div layout="row" layout-padding>
<md-checkbox flex aria-label="{{ 'widget-config.display-title' | translate }}"
<md-checkbox aria-label="{{ 'widget-config.display-title' | translate }}"
ng-model="showTitle">{{ 'widget-config.display-title' | translate }}
</md-checkbox>
</div>
<div layout="row" layout-padding>
<md-checkbox flex aria-label="{{ 'widget-config.drop-shadow' | translate }}"
<md-checkbox aria-label="{{ 'widget-config.drop-shadow' | translate }}"
ng-model="dropShadow">{{ 'widget-config.drop-shadow' | translate }}
</md-checkbox>
</div>
<div layout="row" layout-padding>
<md-checkbox flex aria-label="{{ 'widget-config.enable-fullscreen' | translate }}"
<md-checkbox aria-label="{{ 'widget-config.enable-fullscreen' | translate }}"
ng-model="enableFullscreen">{{ 'widget-config.enable-fullscreen' | translate }}
</md-checkbox>
</div>

3
ui/src/app/device/device-card.tpl.html

@ -16,7 +16,8 @@
-->
<div flex layout="column" style="margin-top: -10px;">
<div style="text-transform: uppercase; padding-bottom: 10px;">{{vm.item.type}}</div>
<div flex>{{vm.item.additionalInfo.description}}</div>
<div flex style="text-transform: uppercase; padding-bottom: 10px;">{{vm.item.type}}</div>
<div class="tb-small" ng-show="vm.isAssignedToCustomer()">{{'device.assignedToCustomer' | translate}} '{{vm.item.assignedCustomer.title}}'</div>
<div class="tb-small" ng-show="vm.isPublic()">{{'device.public' | translate}}</div>
</div>

12
ui/src/app/widget/lib/CanvasDigitalGauge.js

@ -204,8 +204,13 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge {
}
var valueChanged = false;
if (!this.elementValueClone.initialized || this.elementValueClone.renderedValue !== this.value || (options.showTimestamp && this.elementValueClone.renderedTimestamp !== this.timestamp)) {
if (!this.elementValueClone.initialized || angular.isDefined(this._value) && this.elementValueClone.renderedValue !== this._value || (options.showTimestamp && this.elementValueClone.renderedTimestamp !== this.timestamp)) {
if (angular.isDefined(this._value)) {
this.elementValueClone.renderedValue = this._value;
}
if (angular.isUndefined(this.elementValueClone.renderedValue)) {
this.elementValueClone.renderedValue = options.minValue;
}
let context = this.contextValueClone;
// clear the cache
context.clearRect(x, y, w, h);
@ -214,7 +219,7 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge {
context.drawImage(canvas.elementClone, x, y, w, h);
context.save();
drawDigitalValue(context, options, this.value);
drawDigitalValue(context, options, this.elementValueClone.renderedValue);
if (options.showTimestamp) {
drawDigitalLabel(context, options);
@ -222,7 +227,6 @@ export default class CanvasDigitalGauge extends canvasGauges.BaseGauge {
}
this.elementValueClone.initialized = true;
this.elementValueClone.renderedValue = this.value;
valueChanged = true;
}

5
ui/src/app/widget/lib/canvas-digital-gauge.js

@ -70,6 +70,10 @@ export default class TbCanvasDigitalGauge {
(settings.title && settings.title.length > 0 ?
settings.title : dataKey.label) : '');
if (!this.localSettings.unitTitle && this.localSettings.showTimestamp) {
this.localSettings.unitTitle = ' ';
}
this.localSettings.titleFont = {};
var settingsTitleFont = settings.titleFont;
if (!settingsTitleFont) {
@ -206,6 +210,7 @@ export default class TbCanvasDigitalGauge {
var value = tvPair[1];
if(value !== this.gauge.value) {
this.gauge.value = value;
this.gauge._value = value;
} else if (this.localSettings.showTimestamp && this.gauge.timestamp != timestamp) {
this.gauge.timestamp = timestamp;
}

Loading…
Cancel
Save