diff --git a/application/src/test/java/org/thingsboard/server/controller/AbstractControllerTest.java b/application/src/test/java/org/thingsboard/server/controller/AbstractControllerTest.java index ca02138d2a..f973aaf825 100644 --- a/application/src/test/java/org/thingsboard/server/controller/AbstractControllerTest.java +++ b/application/src/test/java/org/thingsboard/server/controller/AbstractControllerTest.java @@ -80,7 +80,7 @@ import static org.springframework.test.web.servlet.setup.MockMvcBuilders.webAppC @ActiveProfiles("test") @RunWith(SpringRunner.class) @ContextConfiguration(classes = AbstractControllerTest.class, loader = SpringBootContextLoader.class) -@TestPropertySource(locations = {"classpath:cassandra-test.properties", "classpath:application-test.properties"}) +@TestPropertySource(locations = {"classpath:cassandra-test.properties", "classpath:application-test.properties", "classpath:nosql-test.properties"}) @DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_CLASS) @Configuration @ComponentScan({"org.thingsboard.server"}) diff --git a/dao/src/main/java/org/thingsboard/server/dao/JpaDaoConfig.java b/dao/src/main/java/org/thingsboard/server/dao/JpaDaoConfig.java index 7c791cf2ec..5e4d5c17e3 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/JpaDaoConfig.java +++ b/dao/src/main/java/org/thingsboard/server/dao/JpaDaoConfig.java @@ -21,7 +21,7 @@ import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.data.jpa.repository.config.EnableJpaRepositories; import org.springframework.transaction.annotation.EnableTransactionManagement; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; /** * @author Valerii Sosliuk diff --git a/dao/src/main/java/org/thingsboard/server/dao/NoSqlDaoConfig.java b/dao/src/main/java/org/thingsboard/server/dao/NoSqlDaoConfig.java index 234ae882dd..904d390657 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/NoSqlDaoConfig.java +++ b/dao/src/main/java/org/thingsboard/server/dao/NoSqlDaoConfig.java @@ -20,7 +20,7 @@ import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration; import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration; import org.springframework.context.annotation.Configuration; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; @Configuration @EnableAutoConfiguration( diff --git a/dao/src/main/java/org/thingsboard/server/dao/alarm/CassandraAlarmDao.java b/dao/src/main/java/org/thingsboard/server/dao/alarm/CassandraAlarmDao.java index d15f38a9c8..83578eb29a 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/alarm/CassandraAlarmDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/alarm/CassandraAlarmDao.java @@ -33,8 +33,8 @@ import org.thingsboard.server.common.data.id.EntityId; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.common.data.relation.EntityRelation; import org.thingsboard.server.common.data.relation.RelationTypeGroup; -import org.thingsboard.server.dao.CassandraAbstractModelDao; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractModelDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.nosql.AlarmEntity; import org.thingsboard.server.dao.relation.RelationDao; diff --git a/dao/src/main/java/org/thingsboard/server/dao/asset/CassandraAssetDao.java b/dao/src/main/java/org/thingsboard/server/dao/asset/CassandraAssetDao.java index ce8111d54c..c2025b9f7d 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/asset/CassandraAssetDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/asset/CassandraAssetDao.java @@ -27,9 +27,9 @@ import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.asset.Asset; import org.thingsboard.server.common.data.asset.TenantAssetType; import org.thingsboard.server.common.data.page.TextPageLink; -import org.thingsboard.server.dao.CassandraAbstractSearchTextDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.TenantAssetTypeEntity; import org.thingsboard.server.dao.model.nosql.AssetEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/attributes/CassandraBaseAttributesDao.java b/dao/src/main/java/org/thingsboard/server/dao/attributes/CassandraBaseAttributesDao.java index 1dd7a6dc47..247463fbe4 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/attributes/CassandraBaseAttributesDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/attributes/CassandraBaseAttributesDao.java @@ -26,8 +26,8 @@ import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.id.EntityId; import org.thingsboard.server.common.data.kv.AttributeKvEntry; import org.thingsboard.server.common.data.kv.BaseAttributeKvEntry; -import org.thingsboard.server.dao.CassandraAbstractAsyncDao; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractAsyncDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.timeseries.CassandraBaseTimeseriesDao; diff --git a/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraCluster.java b/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraCluster.java index e3b6bfa786..e180d140ad 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraCluster.java +++ b/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraCluster.java @@ -26,7 +26,7 @@ import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Component; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import javax.annotation.PostConstruct; import javax.annotation.PreDestroy; diff --git a/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraQueryOptions.java b/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraQueryOptions.java index 27ac661231..1d29910c58 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraQueryOptions.java +++ b/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraQueryOptions.java @@ -21,12 +21,14 @@ import lombok.Data; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import org.springframework.stereotype.Component; +import org.thingsboard.server.dao.util.NoSqlDao; import javax.annotation.PostConstruct; @Component @Configuration @Data +@NoSqlDao public class CassandraQueryOptions { @Value("${cassandra.query.default_fetch_size}") diff --git a/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraSocketOptions.java b/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraSocketOptions.java index b4cb7ba120..5c8f196f05 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraSocketOptions.java +++ b/dao/src/main/java/org/thingsboard/server/dao/cassandra/CassandraSocketOptions.java @@ -20,12 +20,14 @@ import lombok.Data; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Configuration; import org.springframework.stereotype.Component; +import org.thingsboard.server.dao.util.NoSqlDao; import javax.annotation.PostConstruct; @Component @Configuration @Data +@NoSqlDao public class CassandraSocketOptions { @Value("${cassandra.socket.connect_timeout}") diff --git a/dao/src/main/java/org/thingsboard/server/dao/component/CassandraBaseComponentDescriptorDao.java b/dao/src/main/java/org/thingsboard/server/dao/component/CassandraBaseComponentDescriptorDao.java index 64ae0c03e9..d39b7f8bab 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/component/CassandraBaseComponentDescriptorDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/component/CassandraBaseComponentDescriptorDao.java @@ -27,9 +27,9 @@ import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.common.data.plugin.ComponentDescriptor; import org.thingsboard.server.common.data.plugin.ComponentScope; import org.thingsboard.server.common.data.plugin.ComponentType; -import org.thingsboard.server.dao.CassandraAbstractSearchTextDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.nosql.ComponentDescriptorEntity; @@ -102,7 +102,7 @@ public class CassandraBaseComponentDescriptorDao extends CassandraAbstractSearch public List findByTypeAndPageLink(ComponentType type, TextPageLink pageLink) { log.debug("Try to find component by type [{}] and pageLink [{}]", type, pageLink); List entities = findPageWithTextSearch(ModelConstants.COMPONENT_DESCRIPTOR_BY_TYPE_AND_SEARCH_TEXT_COLUMN_FAMILY_NAME, - Arrays.asList(eq(ModelConstants.COMPONENT_DESCRIPTOR_TYPE_PROPERTY, type.name())), pageLink); + Arrays.asList(eq(ModelConstants.COMPONENT_DESCRIPTOR_TYPE_PROPERTY, type)), pageLink); if (log.isTraceEnabled()) { log.trace("Search result: [{}]", Arrays.toString(entities.toArray())); } else { @@ -115,7 +115,7 @@ public class CassandraBaseComponentDescriptorDao extends CassandraAbstractSearch public List findByScopeAndTypeAndPageLink(ComponentScope scope, ComponentType type, TextPageLink pageLink) { log.debug("Try to find component by scope [{}] and type [{}] and pageLink [{}]", scope, type, pageLink); List entities = findPageWithTextSearch(ModelConstants.COMPONENT_DESCRIPTOR_BY_SCOPE_TYPE_AND_SEARCH_TEXT_COLUMN_FAMILY_NAME, - Arrays.asList(eq(ModelConstants.COMPONENT_DESCRIPTOR_TYPE_PROPERTY, type.name()), + Arrays.asList(eq(ModelConstants.COMPONENT_DESCRIPTOR_TYPE_PROPERTY, type), eq(ModelConstants.COMPONENT_DESCRIPTOR_SCOPE_PROPERTY, scope.name())), pageLink); if (log.isTraceEnabled()) { log.trace("Search result: [{}]", Arrays.toString(entities.toArray())); diff --git a/dao/src/main/java/org/thingsboard/server/dao/customer/CassandraCustomerDao.java b/dao/src/main/java/org/thingsboard/server/dao/customer/CassandraCustomerDao.java index c363d330f0..cdb49f8b26 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/customer/CassandraCustomerDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/customer/CassandraCustomerDao.java @@ -20,9 +20,9 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.Customer; import org.thingsboard.server.common.data.page.TextPageLink; -import org.thingsboard.server.dao.CassandraAbstractSearchTextDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.nosql.CustomerEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/dashboard/CassandraDashboardDao.java b/dao/src/main/java/org/thingsboard/server/dao/dashboard/CassandraDashboardDao.java index d323ff857a..07a7d350b6 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/dashboard/CassandraDashboardDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/dashboard/CassandraDashboardDao.java @@ -17,8 +17,8 @@ package org.thingsboard.server.dao.dashboard; import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.Dashboard; -import org.thingsboard.server.dao.CassandraAbstractSearchTextDao; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.nosql.DashboardEntity; import static org.thingsboard.server.dao.model.ModelConstants.DASHBOARD_COLUMN_FAMILY_NAME; diff --git a/dao/src/main/java/org/thingsboard/server/dao/dashboard/CassandraDashboardInfoDao.java b/dao/src/main/java/org/thingsboard/server/dao/dashboard/CassandraDashboardInfoDao.java index 61ce9e199b..7d1ae35ecf 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/dashboard/CassandraDashboardInfoDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/dashboard/CassandraDashboardInfoDao.java @@ -19,9 +19,9 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.DashboardInfo; import org.thingsboard.server.common.data.page.TextPageLink; -import org.thingsboard.server.dao.CassandraAbstractSearchTextDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.nosql.DashboardInfoEntity; import java.util.Arrays; diff --git a/dao/src/main/java/org/thingsboard/server/dao/device/CassandraDeviceCredentialsDao.java b/dao/src/main/java/org/thingsboard/server/dao/device/CassandraDeviceCredentialsDao.java index 5ee86706f9..f1e1dd9bb1 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/device/CassandraDeviceCredentialsDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/device/CassandraDeviceCredentialsDao.java @@ -19,9 +19,9 @@ import com.datastax.driver.core.querybuilder.Select.Where; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.security.DeviceCredentials; -import org.thingsboard.server.dao.CassandraAbstractModelDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractModelDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.nosql.DeviceCredentialsEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/device/CassandraDeviceDao.java b/dao/src/main/java/org/thingsboard/server/dao/device/CassandraDeviceDao.java index 6b889c18f8..c465eeaee0 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/device/CassandraDeviceDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/device/CassandraDeviceDao.java @@ -27,9 +27,9 @@ import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.Device; import org.thingsboard.server.common.data.TenantDeviceType; import org.thingsboard.server.common.data.page.TextPageLink; -import org.thingsboard.server.dao.CassandraAbstractSearchTextDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.TenantDeviceTypeEntity; import org.thingsboard.server.dao.model.nosql.DeviceEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/event/BaseEventService.java b/dao/src/main/java/org/thingsboard/server/dao/event/BaseEventService.java index c5c4e478d8..4e47f3a152 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/event/BaseEventService.java +++ b/dao/src/main/java/org/thingsboard/server/dao/event/BaseEventService.java @@ -49,8 +49,7 @@ public class BaseEventService implements EventService { if (StringUtils.isEmpty(event.getUid())) { throw new DataValidationException("Event uid should be specified!."); } - Optional result = eventDao.saveIfNotExists(event); - return result.isPresent() ? Optional.of(result.get()) : Optional.empty(); + return eventDao.saveIfNotExists(event); } @Override diff --git a/dao/src/main/java/org/thingsboard/server/dao/event/CassandraBaseEventDao.java b/dao/src/main/java/org/thingsboard/server/dao/event/CassandraBaseEventDao.java index 741e251af2..26eb84757a 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/event/CassandraBaseEventDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/event/CassandraBaseEventDao.java @@ -28,9 +28,9 @@ import org.thingsboard.server.common.data.id.EntityId; import org.thingsboard.server.common.data.id.EventId; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.common.data.page.TimePageLink; -import org.thingsboard.server.dao.CassandraAbstractSearchTimeDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTimeDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.nosql.EventEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/nosql/EventEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/nosql/EventEntity.java index 8224fb83d0..55945731b1 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/nosql/EventEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/nosql/EventEntity.java @@ -22,15 +22,17 @@ import lombok.Data; import lombok.NoArgsConstructor; import org.thingsboard.server.common.data.EntityType; import org.thingsboard.server.common.data.Event; -import org.thingsboard.server.common.data.id.*; +import org.thingsboard.server.common.data.id.EntityIdFactory; +import org.thingsboard.server.common.data.id.EventId; +import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.dao.model.BaseEntity; import org.thingsboard.server.dao.model.type.EntityTypeCodec; import org.thingsboard.server.dao.model.type.JsonCodec; -import static org.thingsboard.server.dao.model.ModelConstants.*; - import java.util.UUID; +import static org.thingsboard.server.dao.model.ModelConstants.*; + /** * @author Andrew Shvayka */ diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/AdminSettingsEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/AdminSettingsEntity.java index 6c98466b83..82453ad1de 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/AdminSettingsEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/AdminSettingsEntity.java @@ -23,7 +23,7 @@ import org.hibernate.annotations.TypeDef; import org.thingsboard.server.common.data.AdminSettings; import org.thingsboard.server.common.data.id.AdminSettingsId; import org.thingsboard.server.dao.model.BaseEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/AlarmEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/AlarmEntity.java index 2107a5ff36..6159d9f6cb 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/AlarmEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/AlarmEntity.java @@ -29,7 +29,7 @@ import org.thingsboard.server.common.data.id.EntityIdFactory; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.dao.model.BaseEntity; import org.thingsboard.server.dao.model.ModelConstants; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/AssetEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/AssetEntity.java index 5d24aeb7bb..8f0792c9c3 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/AssetEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/AssetEntity.java @@ -26,7 +26,7 @@ import org.thingsboard.server.common.data.id.CustomerId; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/ComponentDescriptorEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/ComponentDescriptorEntity.java index eee91372eb..67c94dafee 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/ComponentDescriptorEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/ComponentDescriptorEntity.java @@ -25,7 +25,7 @@ import org.thingsboard.server.common.data.plugin.ComponentScope; import org.thingsboard.server.common.data.plugin.ComponentType; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/CustomerEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/CustomerEntity.java index 66466523ab..557a94cb3b 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/CustomerEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/CustomerEntity.java @@ -25,7 +25,7 @@ import org.thingsboard.server.common.data.id.CustomerId; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/DashboardEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/DashboardEntity.java index 5266b90048..6f7f8c649b 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/DashboardEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/DashboardEntity.java @@ -26,7 +26,7 @@ import org.thingsboard.server.common.data.id.DashboardId; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/DeviceEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/DeviceEntity.java index f4c8dd2989..3c8ca33f77 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/DeviceEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/DeviceEntity.java @@ -26,7 +26,7 @@ import org.thingsboard.server.common.data.id.DeviceId; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/EventEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/EventEntity.java index ff7968718a..1ed365dfa3 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/EventEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/EventEntity.java @@ -25,7 +25,7 @@ import org.thingsboard.server.common.data.EntityType; import org.thingsboard.server.common.data.Event; import org.thingsboard.server.common.data.id.*; import org.thingsboard.server.dao.model.BaseEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/PluginMetaDataEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/PluginMetaDataEntity.java index a53c1ab007..d8b42b9e68 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/PluginMetaDataEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/PluginMetaDataEntity.java @@ -26,7 +26,7 @@ import org.thingsboard.server.common.data.plugin.ComponentLifecycleState; import org.thingsboard.server.common.data.plugin.PluginMetaData; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/RelationEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/RelationEntity.java index d13a7ef4da..b31d45aebc 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/RelationEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/RelationEntity.java @@ -23,7 +23,7 @@ import org.thingsboard.server.common.data.id.EntityIdFactory; import org.thingsboard.server.common.data.relation.EntityRelation; import org.thingsboard.server.common.data.relation.RelationTypeGroup; import org.thingsboard.server.dao.model.ToData; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/RuleMetaDataEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/RuleMetaDataEntity.java index 33971c348d..6f768b1172 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/RuleMetaDataEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/RuleMetaDataEntity.java @@ -27,7 +27,7 @@ import org.thingsboard.server.common.data.rule.RuleMetaData; import org.thingsboard.server.dao.DaoUtil; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/TenantEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/TenantEntity.java index 19cfe4b450..633e5e5fa8 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/TenantEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/TenantEntity.java @@ -24,7 +24,7 @@ import org.thingsboard.server.common.data.Tenant; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/UserEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/UserEntity.java index ccfaba10d6..dbedffd573 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/UserEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/UserEntity.java @@ -27,7 +27,7 @@ import org.thingsboard.server.common.data.id.UserId; import org.thingsboard.server.common.data.security.Authority; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.SearchTextEntity; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/model/sql/WidgetTypeEntity.java b/dao/src/main/java/org/thingsboard/server/dao/model/sql/WidgetTypeEntity.java index 38f83cb128..0e09123915 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/model/sql/WidgetTypeEntity.java +++ b/dao/src/main/java/org/thingsboard/server/dao/model/sql/WidgetTypeEntity.java @@ -25,7 +25,7 @@ import org.thingsboard.server.common.data.id.WidgetTypeId; import org.thingsboard.server.common.data.widget.WidgetType; import org.thingsboard.server.dao.model.BaseEntity; import org.thingsboard.server.dao.model.ModelConstants; -import org.thingsboard.server.dao.util.JsonStringType; +import org.thingsboard.server.dao.util.mapping.JsonStringType; import javax.persistence.*; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractAsyncDao.java b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractAsyncDao.java similarity index 97% rename from dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractAsyncDao.java rename to dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractAsyncDao.java index d61218f012..0d64badcea 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractAsyncDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractAsyncDao.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao; +package org.thingsboard.server.dao.nosql; import com.datastax.driver.core.ResultSet; import com.datastax.driver.core.ResultSetFuture; diff --git a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractDao.java b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractDao.java similarity index 98% rename from dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractDao.java rename to dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractDao.java index 8bb44bf4af..4e4d9ca5f9 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractDao.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao; +package org.thingsboard.server.dao.nosql; import com.datastax.driver.core.*; import com.datastax.driver.core.exceptions.CodecNotFoundException; diff --git a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractModelDao.java b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractModelDao.java similarity index 98% rename from dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractModelDao.java rename to dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractModelDao.java index 5d372b1ecd..b7335d7942 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractModelDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractModelDao.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao; +package org.thingsboard.server.dao.nosql; import com.datastax.driver.core.ResultSet; import com.datastax.driver.core.ResultSetFuture; @@ -27,9 +27,10 @@ import com.google.common.base.Function; import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.ListenableFuture; import lombok.extern.slf4j.Slf4j; +import org.thingsboard.server.dao.Dao; +import org.thingsboard.server.dao.DaoUtil; import org.thingsboard.server.dao.model.BaseEntity; import org.thingsboard.server.dao.model.ModelConstants; -import org.thingsboard.server.dao.model.SearchTextEntity; import org.thingsboard.server.dao.model.wrapper.EntityResultSet; import javax.annotation.Nullable; diff --git a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractSearchTextDao.java b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractSearchTextDao.java similarity index 98% rename from dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractSearchTextDao.java rename to dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractSearchTextDao.java index 89c3583040..7b7f99dd4a 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractSearchTextDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractSearchTextDao.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao; +package org.thingsboard.server.dao.nosql; import com.datastax.driver.core.querybuilder.Clause; import com.datastax.driver.core.querybuilder.QueryBuilder; diff --git a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractSearchTimeDao.java b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractSearchTimeDao.java similarity index 99% rename from dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractSearchTimeDao.java rename to dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractSearchTimeDao.java index bc6b3e779b..86bbe9419b 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/CassandraAbstractSearchTimeDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/nosql/CassandraAbstractSearchTimeDao.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao; +package org.thingsboard.server.dao.nosql; import com.datastax.driver.core.querybuilder.Clause; import com.datastax.driver.core.querybuilder.Ordering; diff --git a/dao/src/main/java/org/thingsboard/server/dao/plugin/CassandraBasePluginDao.java b/dao/src/main/java/org/thingsboard/server/dao/plugin/CassandraBasePluginDao.java index 6126aef9a7..991751e69e 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/plugin/CassandraBasePluginDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/plugin/CassandraBasePluginDao.java @@ -22,9 +22,9 @@ import org.thingsboard.server.common.data.id.PluginId; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.common.data.plugin.PluginMetaData; -import org.thingsboard.server.dao.CassandraAbstractSearchTextDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.nosql.PluginMetaDataEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/relation/BaseRelationDao.java b/dao/src/main/java/org/thingsboard/server/dao/relation/BaseRelationDao.java index 14c1cf3faa..72f159ea2a 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/relation/BaseRelationDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/relation/BaseRelationDao.java @@ -28,9 +28,9 @@ import org.thingsboard.server.common.data.id.EntityIdFactory; import org.thingsboard.server.common.data.page.TimePageLink; import org.thingsboard.server.common.data.relation.EntityRelation; import org.thingsboard.server.common.data.relation.RelationTypeGroup; -import org.thingsboard.server.dao.CassandraAbstractAsyncDao; -import org.thingsboard.server.dao.CassandraAbstractSearchTimeDao; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractAsyncDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTimeDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.type.RelationTypeGroupCodec; diff --git a/dao/src/main/java/org/thingsboard/server/dao/rule/CassandraBaseRuleDao.java b/dao/src/main/java/org/thingsboard/server/dao/rule/CassandraBaseRuleDao.java index 33465cb2d8..c14bb4e632 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/rule/CassandraBaseRuleDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/rule/CassandraBaseRuleDao.java @@ -22,9 +22,9 @@ import org.thingsboard.server.common.data.id.RuleId; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.common.data.rule.RuleMetaData; -import org.thingsboard.server.dao.CassandraAbstractSearchTextDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.ModelConstants; import org.thingsboard.server.dao.model.nosql.RuleMetaDataEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/settings/CassandraAdminSettingsDao.java b/dao/src/main/java/org/thingsboard/server/dao/settings/CassandraAdminSettingsDao.java index 14017d89cb..c7ca062acd 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/settings/CassandraAdminSettingsDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/settings/CassandraAdminSettingsDao.java @@ -19,9 +19,9 @@ import com.datastax.driver.core.querybuilder.Select.Where; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.AdminSettings; -import org.thingsboard.server.dao.CassandraAbstractModelDao; +import org.thingsboard.server.dao.nosql.CassandraAbstractModelDao; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.NoSqlDao; +import org.thingsboard.server.dao.util.NoSqlDao; import org.thingsboard.server.dao.model.nosql.AdminSettingsEntity; import static com.datastax.driver.core.querybuilder.QueryBuilder.eq; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/alarm/AlarmRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/alarm/AlarmRepository.java index c89fef6c63..1b129b5585 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/alarm/AlarmRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/alarm/AlarmRepository.java @@ -20,7 +20,7 @@ import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.query.Param; import org.thingsboard.server.common.data.EntityType; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.AlarmEntity; import java.util.List; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/alarm/JpaAlarmDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/alarm/JpaAlarmDao.java index 322afe7f67..5f902bfa6c 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/alarm/JpaAlarmDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/alarm/JpaAlarmDao.java @@ -37,7 +37,7 @@ import org.thingsboard.server.common.data.relation.RelationTypeGroup; import org.thingsboard.server.dao.DaoUtil; import org.thingsboard.server.dao.alarm.AlarmDao; import org.thingsboard.server.dao.alarm.BaseAlarmService; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.AlarmEntity; import org.thingsboard.server.dao.relation.RelationDao; import org.thingsboard.server.dao.sql.JpaAbstractDao; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/asset/AssetRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/asset/AssetRepository.java index 8f86437adb..bc6a4d74e1 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/asset/AssetRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/asset/AssetRepository.java @@ -15,13 +15,12 @@ */ package org.thingsboard.server.dao.sql.asset; -import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.query.Param; import org.thingsboard.server.common.data.asset.TenantAssetType; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.AssetEntity; import java.util.List; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/asset/JpaAssetDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/asset/JpaAssetDao.java index 500b612918..fe5a169e3b 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/asset/JpaAssetDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/asset/JpaAssetDao.java @@ -24,7 +24,7 @@ import org.thingsboard.server.common.data.asset.Asset; import org.thingsboard.server.common.data.asset.TenantAssetType; import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.asset.AssetDao; import org.thingsboard.server.dao.model.sql.AssetEntity; import org.thingsboard.server.dao.sql.JpaAbstractSearchTextDao; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/attributes/AttributeKvRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/attributes/AttributeKvRepository.java index 9b937f63b7..872c249f38 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/attributes/AttributeKvRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/attributes/AttributeKvRepository.java @@ -17,7 +17,7 @@ package org.thingsboard.server.dao.sql.attributes; import org.springframework.data.repository.CrudRepository; import org.thingsboard.server.common.data.EntityType; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.AttributeKvCompositeKey; import org.thingsboard.server.dao.model.sql.AttributeKvEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/attributes/JpaAttributeDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/attributes/JpaAttributeDao.java index 82662729bb..ac6568257f 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/attributes/JpaAttributeDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/attributes/JpaAttributeDao.java @@ -23,7 +23,7 @@ import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.id.EntityId; import org.thingsboard.server.common.data.kv.AttributeKvEntry; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.attributes.AttributesDao; import org.thingsboard.server.dao.model.sql.AttributeKvCompositeKey; import org.thingsboard.server.dao.model.sql.AttributeKvEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/component/ComponentDescriptorRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/component/ComponentDescriptorRepository.java index f15bbbf5ad..8be6b9551e 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/component/ComponentDescriptorRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/component/ComponentDescriptorRepository.java @@ -19,7 +19,9 @@ import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.query.Param; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.common.data.plugin.ComponentScope; +import org.thingsboard.server.common.data.plugin.ComponentType; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.ComponentDescriptorEntity; import java.util.List; @@ -36,7 +38,7 @@ public interface ComponentDescriptorRepository extends CrudRepository :idOffset ORDER BY cd.id") - List findByType(@Param("type") String type, + List findByType(@Param("type") ComponentType type, @Param("textSearch") String textSearch, @Param("idOffset") UUID idOffset, Pageable pageable); @@ -44,8 +46,8 @@ public interface ComponentDescriptorRepository extends CrudRepository :idOffset ORDER BY cd.id") - List findByScopeAndType(@Param("type") String type, - @Param("scope") String scope, + List findByScopeAndType(@Param("type") ComponentType type, + @Param("scope") ComponentScope scope, @Param("textSearch") String textSearch, @Param("idOffset") UUID idOffset, Pageable pageable); diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/component/JpaBaseComponentDescriptorDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/component/JpaBaseComponentDescriptorDao.java index e259bba06e..ae2a6ed6d7 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/component/JpaBaseComponentDescriptorDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/component/JpaBaseComponentDescriptorDao.java @@ -26,7 +26,7 @@ import org.thingsboard.server.common.data.plugin.ComponentDescriptor; import org.thingsboard.server.common.data.plugin.ComponentScope; import org.thingsboard.server.common.data.plugin.ComponentType; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.component.ComponentDescriptorDao; import org.thingsboard.server.dao.model.sql.ComponentDescriptorEntity; import org.thingsboard.server.dao.sql.JpaAbstractSearchTextDao; @@ -85,7 +85,7 @@ public class JpaBaseComponentDescriptorDao extends JpaAbstractSearchTextDao findByTypeAndPageLink(ComponentType type, TextPageLink pageLink) { return DaoUtil.convertDataList(componentDescriptorRepository .findByType( - type.toString(), + type, Objects.toString(pageLink.getTextSearch(), ""), pageLink.getIdOffset() == null ? NULL_UUID : pageLink.getIdOffset(), new PageRequest(0, pageLink.getLimit()))); @@ -95,8 +95,8 @@ public class JpaBaseComponentDescriptorDao extends JpaAbstractSearchTextDao findByScopeAndTypeAndPageLink(ComponentScope scope, ComponentType type, TextPageLink pageLink) { return DaoUtil.convertDataList(componentDescriptorRepository .findByScopeAndType( - type.toString(), - scope.toString(), + type, + scope, Objects.toString(pageLink.getTextSearch(), ""), pageLink.getIdOffset() == null ? NULL_UUID : pageLink.getIdOffset(), new PageRequest(0, pageLink.getLimit()))); diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/customer/CustomerRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/customer/CustomerRepository.java index 009f926b2e..7e6c85901f 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/customer/CustomerRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/customer/CustomerRepository.java @@ -19,7 +19,7 @@ import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.query.Param; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.CustomerEntity; import java.util.List; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/customer/JpaCustomerDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/customer/JpaCustomerDao.java index de54835c1a..27d5925992 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/customer/JpaCustomerDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/customer/JpaCustomerDao.java @@ -22,7 +22,7 @@ import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.Customer; import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.customer.CustomerDao; import org.thingsboard.server.dao.model.sql.CustomerEntity; import org.thingsboard.server.dao.sql.JpaAbstractSearchTextDao; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/DashboardInfoRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/DashboardInfoRepository.java index 2569867096..654915f74a 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/DashboardInfoRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/DashboardInfoRepository.java @@ -19,7 +19,7 @@ import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.query.Param; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.DashboardInfoEntity; import java.util.List; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/DashboardRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/DashboardRepository.java index 9b8c42d06b..509fd174ec 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/DashboardRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/DashboardRepository.java @@ -16,7 +16,7 @@ package org.thingsboard.server.dao.sql.dashboard; import org.springframework.data.repository.CrudRepository; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.DashboardEntity; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/JpaDashboardDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/JpaDashboardDao.java index d40400016e..b40c99a7ab 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/JpaDashboardDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/JpaDashboardDao.java @@ -19,7 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.Dashboard; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.dashboard.DashboardDao; import org.thingsboard.server.dao.model.sql.DashboardEntity; import org.thingsboard.server.dao.sql.JpaAbstractSearchTextDao; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/JpaDashboardInfoDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/JpaDashboardInfoDao.java index c604c7e4ef..9fe613a7e8 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/JpaDashboardInfoDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/dashboard/JpaDashboardInfoDao.java @@ -22,7 +22,7 @@ import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.DashboardInfo; import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.dashboard.DashboardInfoDao; import org.thingsboard.server.dao.model.sql.DashboardInfoEntity; import org.thingsboard.server.dao.sql.JpaAbstractSearchTextDao; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/device/DeviceCredentialsRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/device/DeviceCredentialsRepository.java index b3dfcf4e5d..3e117c0a26 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/device/DeviceCredentialsRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/device/DeviceCredentialsRepository.java @@ -16,7 +16,7 @@ package org.thingsboard.server.dao.sql.device; import org.springframework.data.repository.CrudRepository; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.DeviceCredentialsEntity; import java.util.UUID; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/device/DeviceRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/device/DeviceRepository.java index 771ab6982d..56eb5e8b8b 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/device/DeviceRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/device/DeviceRepository.java @@ -19,7 +19,7 @@ import org.springframework.data.domain.Pageable; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.query.Param; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.model.sql.DeviceEntity; import org.thingsboard.server.dao.model.sql.TenantDeviceTypeEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/device/JpaDeviceCredentialsDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/device/JpaDeviceCredentialsDao.java index 97e3363940..6ffa5349d6 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/device/JpaDeviceCredentialsDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/device/JpaDeviceCredentialsDao.java @@ -20,7 +20,7 @@ import org.springframework.data.repository.CrudRepository; import org.springframework.stereotype.Component; import org.thingsboard.server.common.data.security.DeviceCredentials; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.device.DeviceCredentialsDao; import org.thingsboard.server.dao.model.sql.DeviceCredentialsEntity; import org.thingsboard.server.dao.sql.JpaAbstractDao; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/device/JpaDeviceDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/device/JpaDeviceDao.java index d7130401f0..ff7be31028 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/device/JpaDeviceDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/device/JpaDeviceDao.java @@ -25,7 +25,7 @@ import org.thingsboard.server.common.data.TenantDeviceType; import org.thingsboard.server.common.data.id.TenantId; import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.device.DeviceDao; import org.thingsboard.server.dao.model.sql.DeviceEntity; import org.thingsboard.server.dao.model.sql.TenantDeviceTypeEntity; diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/event/EventRepository.java b/dao/src/main/java/org/thingsboard/server/dao/sql/event/EventRepository.java index 9719e836f6..3fbfae2e92 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/event/EventRepository.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/event/EventRepository.java @@ -18,8 +18,8 @@ package org.thingsboard.server.dao.sql.event; import org.springframework.data.jpa.repository.JpaSpecificationExecutor; import org.springframework.data.repository.CrudRepository; import org.thingsboard.server.common.data.EntityType; -import org.thingsboard.server.dao.annotation.SqlDao; import org.thingsboard.server.dao.model.sql.EventEntity; +import org.thingsboard.server.dao.util.SqlDao; import java.util.UUID; @@ -29,6 +29,13 @@ import java.util.UUID; @SqlDao public interface EventRepository extends CrudRepository, JpaSpecificationExecutor { - EventEntity findByTenantIdAndEntityTypeAndEntityIdAndEventTypeAndEventUid( - UUID tenantId, EntityType entityType, UUID id, String eventType, String eventUid); + EventEntity findByTenantIdAndEntityTypeAndEntityIdAndEventTypeAndEventUid(UUID tenantId, + EntityType entityType, + UUID entityId, + String eventType, + String eventUid); + + EventEntity findByTenantIdAndEntityTypeAndEntityId(UUID tenantId, + EntityType entityType, + UUID entityId); } diff --git a/dao/src/main/java/org/thingsboard/server/dao/sql/event/JpaBaseEventDao.java b/dao/src/main/java/org/thingsboard/server/dao/sql/event/JpaBaseEventDao.java index 20fba3aea0..b68585f8bc 100644 --- a/dao/src/main/java/org/thingsboard/server/dao/sql/event/JpaBaseEventDao.java +++ b/dao/src/main/java/org/thingsboard/server/dao/sql/event/JpaBaseEventDao.java @@ -30,7 +30,7 @@ import org.thingsboard.server.common.data.id.EntityId; import org.thingsboard.server.common.data.id.EventId; import org.thingsboard.server.common.data.page.TimePageLink; import org.thingsboard.server.dao.DaoUtil; -import org.thingsboard.server.dao.annotation.SqlDao; +import org.thingsboard.server.dao.util.SqlDao; import org.thingsboard.server.dao.event.EventDao; import org.thingsboard.server.dao.model.sql.EventEntity; import org.thingsboard.server.dao.sql.JpaAbstractSearchTimeDao; @@ -98,6 +98,7 @@ public class JpaBaseEventDao extends JpaAbstractSearchTimeDao findEvents(UUID tenantId, EntityId entityId, TimePageLink pageLink) { return findEvents(tenantId, entityId, null, pageLink); } + @Override public List findEvents(UUID tenantId, EntityId entityId, String eventType, TimePageLink pageLink) { Specification timeSearchSpec = JpaAbstractSearchTimeDao.getTimeSearchPageSpec(pageLink, "id"); @@ -119,7 +120,8 @@ public class JpaBaseEventDao extends JpaAbstractSearchTimeDao idComparator = new IdComparator<>(); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/CustomerServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseCustomerServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/CustomerServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseCustomerServiceTest.java index 96fdc477ad..d3f2d8f1a4 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/CustomerServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseCustomerServiceTest.java @@ -32,7 +32,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; -public class CustomerServiceImplTest extends AbstractServiceTest { +public abstract class BaseCustomerServiceTest extends AbstractServiceTest { private IdComparator idComparator = new IdComparator<>(); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/DashboardServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseDashboardServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/DashboardServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseDashboardServiceTest.java index 949198c553..f0ed0b3474 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/DashboardServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseDashboardServiceTest.java @@ -37,7 +37,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; -public class DashboardServiceImplTest extends AbstractServiceTest { +public abstract class BaseDashboardServiceTest extends AbstractServiceTest { private IdComparator idComparator = new IdComparator<>(); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/DeviceCredentialsCacheTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceCredentialsCacheTest.java similarity index 97% rename from dao/src/test/java/org/thingsboard/server/dao/service/DeviceCredentialsCacheTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceCredentialsCacheTest.java index 66b4f2bfbc..31b599a154 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/DeviceCredentialsCacheTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceCredentialsCacheTest.java @@ -17,7 +17,10 @@ package org.thingsboard.server.dao.service; import com.hazelcast.core.HazelcastInstance; import org.apache.commons.lang3.RandomStringUtils; -import org.junit.*; +import org.junit.After; +import org.junit.Assert; +import org.junit.Before; +import org.junit.Test; import org.springframework.aop.framework.Advised; import org.springframework.aop.support.AopUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -38,7 +41,7 @@ import java.util.UUID; import static org.mockito.Mockito.*; @TestPropertySource(properties = {"cache.enabled = true"}) -public class DeviceCredentialsCacheTest extends AbstractServiceTest { +public abstract class BaseDeviceCredentialsCacheTest extends AbstractServiceTest { private static final String CREDENTIALS_ID_1 = RandomStringUtils.randomAlphanumeric(20); private static final String CREDENTIALS_ID_2 = RandomStringUtils.randomAlphanumeric(20); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/DeviceCredentialsServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceCredentialsServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/DeviceCredentialsServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceCredentialsServiceTest.java index 4d9ef9f43d..88ed553b61 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/DeviceCredentialsServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceCredentialsServiceTest.java @@ -30,7 +30,7 @@ import org.thingsboard.server.common.data.security.DeviceCredentials; import org.thingsboard.server.common.data.security.DeviceCredentialsType; import org.thingsboard.server.dao.exception.DataValidationException; -public class DeviceCredentialsServiceImplTest extends AbstractServiceTest { +public abstract class BaseDeviceCredentialsServiceTest extends AbstractServiceTest { private TenantId tenantId; diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/DeviceServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/DeviceServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceServiceTest.java index 420ba6a252..addaf8fa53 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/DeviceServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseDeviceServiceTest.java @@ -36,11 +36,10 @@ import org.thingsboard.server.dao.exception.DataValidationException; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.concurrent.Executors; import static org.thingsboard.server.dao.model.ModelConstants.NULL_UUID; -public class DeviceServiceImplTest extends AbstractServiceTest { +public abstract class BaseDeviceServiceTest extends AbstractServiceTest { private IdComparator idComparator = new IdComparator<>(); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/RelationServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseRelationServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/RelationServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseRelationServiceTest.java index cb1fbc5d36..515888b21c 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/RelationServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseRelationServiceTest.java @@ -35,7 +35,7 @@ import java.util.Collections; import java.util.List; import java.util.concurrent.ExecutionException; -public class RelationServiceImplTest extends AbstractServiceTest { +public abstract class BaseRelationServiceTest extends AbstractServiceTest { @Before public void before() { diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/TenantServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseTenantServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/TenantServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseTenantServiceTest.java index 5c35a71cbe..b8220d3fff 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/TenantServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseTenantServiceTest.java @@ -15,19 +15,19 @@ */ package org.thingsboard.server.dao.service; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - import org.apache.commons.lang3.RandomStringUtils; +import org.junit.Assert; +import org.junit.Test; import org.thingsboard.server.common.data.Tenant; import org.thingsboard.server.common.data.page.TextPageData; import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.dao.exception.DataValidationException; -import org.junit.Assert; -import org.junit.Test; -public class TenantServiceImplTest extends AbstractServiceTest { +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +public abstract class BaseTenantServiceTest extends AbstractServiceTest { private IdComparator idComparator = new IdComparator<>(); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/UserServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseUserServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/UserServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseUserServiceTest.java index d52813f4b9..9e4f7f3dd7 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/UserServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseUserServiceTest.java @@ -35,7 +35,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; -public class UserServiceImplTest extends AbstractServiceTest { +public abstract class BaseUserServiceTest extends AbstractServiceTest { private IdComparator idComparator = new IdComparator<>(); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/WidgetTypeServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseWidgetTypeServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/WidgetTypeServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseWidgetTypeServiceTest.java index 8f0a9f710f..4066f77054 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/WidgetTypeServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseWidgetTypeServiceTest.java @@ -34,7 +34,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; -public class WidgetTypeServiceImplTest extends AbstractServiceTest { +public abstract class BaseWidgetTypeServiceTest extends AbstractServiceTest { private IdComparator idComparator = new IdComparator<>(); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/WidgetsBundleServiceImplTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/BaseWidgetsBundleServiceTest.java similarity index 99% rename from dao/src/test/java/org/thingsboard/server/dao/service/WidgetsBundleServiceImplTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/BaseWidgetsBundleServiceTest.java index 6345567832..8f3e87df6c 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/service/WidgetsBundleServiceImplTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/BaseWidgetsBundleServiceTest.java @@ -33,7 +33,7 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; -public class WidgetsBundleServiceImplTest extends AbstractServiceTest { +public abstract class BaseWidgetsBundleServiceTest extends AbstractServiceTest { private IdComparator idComparator = new IdComparator<>(); diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/DaoServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/DaoServiceNoSqlTest.java new file mode 100644 index 0000000000..6d16d1b6af --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/DaoServiceNoSqlTest.java @@ -0,0 +1,28 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service; + +import org.springframework.test.context.TestPropertySource; + +import java.lang.annotation.*; + +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) +@Inherited +@Documented +@TestPropertySource(locations = {"classpath:cassandra-test.properties", "classpath:application-test.properties", "classpath:nosql-test.properties"}) +public @interface DaoServiceNoSqlTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/DaoServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/DaoServiceSqlTest.java new file mode 100644 index 0000000000..4ad7bdabce --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/DaoServiceSqlTest.java @@ -0,0 +1,28 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service; + +import org.springframework.test.context.TestPropertySource; + +import java.lang.annotation.*; + +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) +@Inherited +@Documented +@TestPropertySource(locations = {"classpath:application-test.properties", "classpath:sql-test.properties"}) +public @interface DaoServiceSqlTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/attributes/BaseAttributesServiceTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/attributes/BaseAttributesServiceTest.java similarity index 95% rename from dao/src/test/java/org/thingsboard/server/dao/attributes/BaseAttributesServiceTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/attributes/BaseAttributesServiceTest.java index 61b5329ffc..3a67574439 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/attributes/BaseAttributesServiceTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/attributes/BaseAttributesServiceTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao.attributes; +package org.thingsboard.server.dao.service.attributes; import com.datastax.driver.core.utils.UUIDs; import org.junit.Assert; @@ -26,6 +26,7 @@ import org.thingsboard.server.common.data.kv.AttributeKvEntry; import org.thingsboard.server.common.data.kv.BaseAttributeKvEntry; import org.thingsboard.server.common.data.kv.KvEntry; import org.thingsboard.server.common.data.kv.StringDataEntry; +import org.thingsboard.server.dao.attributes.AttributesService; import org.thingsboard.server.dao.service.AbstractServiceTest; import java.util.Collections; @@ -35,7 +36,7 @@ import java.util.Optional; /** * @author Andrew Shvayka */ -public class BaseAttributesServiceTest extends AbstractServiceTest { +public abstract class BaseAttributesServiceTest extends AbstractServiceTest { @Autowired private AttributesService attributesService; diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/attributes/nosql/AttributesServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/attributes/nosql/AttributesServiceNoSqlTest.java new file mode 100644 index 0000000000..2a2d57a444 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/attributes/nosql/AttributesServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.attributes.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.attributes.BaseAttributesServiceTest; + +@DaoServiceNoSqlTest +public class AttributesServiceNoSqlTest extends BaseAttributesServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/attributes/sql/AttributesServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/attributes/sql/AttributesServiceSqlTest.java new file mode 100644 index 0000000000..9cedb3a431 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/attributes/sql/AttributesServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.attributes.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.attributes.BaseAttributesServiceTest; + +@DaoServiceSqlTest +public class AttributesServiceSqlTest extends BaseAttributesServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/event/BaseEventServiceTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/event/BaseEventServiceTest.java similarity index 98% rename from dao/src/test/java/org/thingsboard/server/dao/event/BaseEventServiceTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/event/BaseEventServiceTest.java index e2c473f82c..7c99bf3005 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/event/BaseEventServiceTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/event/BaseEventServiceTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao.event; +package org.thingsboard.server.dao.service.event; import com.datastax.driver.core.utils.UUIDs; import org.junit.Assert; @@ -35,7 +35,7 @@ import java.time.Month; import java.time.ZoneOffset; import java.util.Optional; -public class BaseEventServiceTest extends AbstractServiceTest { +public abstract class BaseEventServiceTest extends AbstractServiceTest { @Test public void saveEvent() throws Exception { diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/event/nosql/EventServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/event/nosql/EventServiceNoSqlTest.java new file mode 100644 index 0000000000..36a87096e9 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/event/nosql/EventServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.event.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.event.BaseEventServiceTest; + +@DaoServiceNoSqlTest +public class EventServiceNoSqlTest extends BaseEventServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/event/sql/EventServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/event/sql/EventServiceSqlTest.java new file mode 100644 index 0000000000..a0d63699d9 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/event/sql/EventServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.event.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.event.BaseEventServiceTest; + +@DaoServiceSqlTest +public class EventServiceSqlTest extends BaseEventServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AdminSettingsServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AdminSettingsServiceNoSqlTest.java new file mode 100644 index 0000000000..8f1dc1f600 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AdminSettingsServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseAdminSettingsServiceTest; + +@DaoServiceNoSqlTest +public class AdminSettingsServiceNoSqlTest extends BaseAdminSettingsServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AlarmServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AlarmServiceNoSqlTest.java new file mode 100644 index 0000000000..5444dda2a9 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AlarmServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseAlarmServiceTest; + +@DaoServiceNoSqlTest +public class AlarmServiceNoSqlTest extends BaseAlarmServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AssetServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AssetServiceNoSqlTest.java new file mode 100644 index 0000000000..9a426d227a --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/AssetServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseAssetServiceTest; + +@DaoServiceNoSqlTest +public class AssetServiceNoSqlTest extends BaseAssetServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/CustomerServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/CustomerServiceNoSqlTest.java new file mode 100644 index 0000000000..0981463813 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/CustomerServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseCustomerServiceTest; + +@DaoServiceNoSqlTest +public class CustomerServiceNoSqlTest extends BaseCustomerServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DashboardServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DashboardServiceNoSqlTest.java new file mode 100644 index 0000000000..b5972194cc --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DashboardServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseDashboardServiceTest; + +@DaoServiceNoSqlTest +public class DashboardServiceNoSqlTest extends BaseDashboardServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialCacheNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialCacheNoSqlTest.java new file mode 100644 index 0000000000..8cebc1b549 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialCacheNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseDeviceCredentialsCacheTest; + +@DaoServiceNoSqlTest +public class DeviceCredentialCacheNoSqlTest extends BaseDeviceCredentialsCacheTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialServiceNoSqlTest.java new file mode 100644 index 0000000000..b0dcd10801 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceCredentialServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseDeviceCredentialsServiceTest; + +@DaoServiceNoSqlTest +public class DeviceCredentialServiceNoSqlTest extends BaseDeviceCredentialsServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceServiceNoSqlTest.java new file mode 100644 index 0000000000..bffbc67e0f --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/DeviceServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseDeviceServiceTest; + +@DaoServiceNoSqlTest +public class DeviceServiceNoSqlTest extends BaseDeviceServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/RelationServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/RelationServiceNoSqlTest.java new file mode 100644 index 0000000000..3f39797215 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/RelationServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseRelationServiceTest; + +@DaoServiceNoSqlTest +public class RelationServiceNoSqlTest extends BaseRelationServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/TenantServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/TenantServiceNoSqlTest.java new file mode 100644 index 0000000000..f977ee41b8 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/TenantServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseTenantServiceTest; + +@DaoServiceNoSqlTest +public class TenantServiceNoSqlTest extends BaseTenantServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/UserServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/UserServiceNoSqlTest.java new file mode 100644 index 0000000000..4fe536ccae --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/UserServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseUserServiceTest; + +@DaoServiceNoSqlTest +public class UserServiceNoSqlTest extends BaseUserServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/WidgetTypeServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/WidgetTypeServiceNoSqlTest.java new file mode 100644 index 0000000000..d959184eb1 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/WidgetTypeServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseWidgetTypeServiceTest; + +@DaoServiceNoSqlTest +public class WidgetTypeServiceNoSqlTest extends BaseWidgetTypeServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/nosql/WidgetsBundleServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/WidgetsBundleServiceNoSqlTest.java new file mode 100644 index 0000000000..498a96efd3 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/nosql/WidgetsBundleServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.BaseWidgetsBundleServiceTest; + +@DaoServiceNoSqlTest +public class WidgetsBundleServiceNoSqlTest extends BaseWidgetsBundleServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/plugin/BasePluginServiceTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/plugin/BasePluginServiceTest.java similarity index 97% rename from dao/src/test/java/org/thingsboard/server/dao/plugin/BasePluginServiceTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/plugin/BasePluginServiceTest.java index bd1eb756c5..64ef250660 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/plugin/BasePluginServiceTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/plugin/BasePluginServiceTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao.plugin; +package org.thingsboard.server.dao.service.plugin; import com.datastax.driver.core.utils.UUIDs; import lombok.extern.slf4j.Slf4j; @@ -29,7 +29,7 @@ import org.thingsboard.server.dao.service.AbstractServiceTest; import java.util.UUID; @Slf4j -public class BasePluginServiceTest extends AbstractServiceTest { +public abstract class BasePluginServiceTest extends AbstractServiceTest { @Test public void savePlugin() throws Exception { diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/plugin/nosql/PluginServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/plugin/nosql/PluginServiceNoSqlTest.java new file mode 100644 index 0000000000..15b6ddaed2 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/plugin/nosql/PluginServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.plugin.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.plugin.BasePluginServiceTest; + +@DaoServiceNoSqlTest +public class PluginServiceNoSqlTest extends BasePluginServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/plugin/sql/PluginServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/plugin/sql/PluginServiceSqlTest.java new file mode 100644 index 0000000000..addeffe64e --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/plugin/sql/PluginServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.plugin.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.plugin.BasePluginServiceTest; + +@DaoServiceSqlTest +public class PluginServiceSqlTest extends BasePluginServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/rule/BaseRuleServiceTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/rule/BaseRuleServiceTest.java similarity index 98% rename from dao/src/test/java/org/thingsboard/server/dao/rule/BaseRuleServiceTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/rule/BaseRuleServiceTest.java index f62f26c2fb..1650b710b6 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/rule/BaseRuleServiceTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/rule/BaseRuleServiceTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao.rule; +package org.thingsboard.server.dao.service.rule; import com.datastax.driver.core.utils.UUIDs; import org.junit.Assert; @@ -29,7 +29,7 @@ import org.thingsboard.server.dao.service.AbstractServiceTest; import java.util.List; import java.util.concurrent.ThreadLocalRandom; -public class BaseRuleServiceTest extends AbstractServiceTest { +public abstract class BaseRuleServiceTest extends AbstractServiceTest { @Test public void saveRule() throws Exception { diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/rule/nosql/RuleServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/rule/nosql/RuleServiceNoSqlTest.java new file mode 100644 index 0000000000..1fc6886cd9 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/rule/nosql/RuleServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.rule.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.rule.BaseRuleServiceTest; + +@DaoServiceNoSqlTest +public class RuleServiceNoSqlTest extends BaseRuleServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/rule/sql/RuleServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/rule/sql/RuleServiceSqlTest.java new file mode 100644 index 0000000000..b3a810f068 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/rule/sql/RuleServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.rule.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.rule.BaseRuleServiceTest; + +@DaoServiceSqlTest +public class RuleServiceSqlTest extends BaseRuleServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/AdminSettingsServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/AdminSettingsServiceSqlTest.java new file mode 100644 index 0000000000..901a9cf6e6 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/AdminSettingsServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseAdminSettingsServiceTest; + +@DaoServiceSqlTest +public class AdminSettingsServiceSqlTest extends BaseAdminSettingsServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/AlarmServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/AlarmServiceSqlTest.java new file mode 100644 index 0000000000..85bef2bbaa --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/AlarmServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseAlarmServiceTest; + +@DaoServiceSqlTest +public class AlarmServiceSqlTest extends BaseAlarmServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/AssetServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/AssetServiceSqlTest.java new file mode 100644 index 0000000000..30cc8feec1 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/AssetServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseAssetServiceTest; + +@DaoServiceSqlTest +public class AssetServiceSqlTest extends BaseAssetServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/CustomerServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/CustomerServiceSqlTest.java new file mode 100644 index 0000000000..559281b239 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/CustomerServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseCustomerServiceTest; + +@DaoServiceSqlTest +public class CustomerServiceSqlTest extends BaseCustomerServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/DashboardServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/DashboardServiceSqlTest.java new file mode 100644 index 0000000000..5af38f62c0 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/DashboardServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseDashboardServiceTest; + +@DaoServiceSqlTest +public class DashboardServiceSqlTest extends BaseDashboardServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsCacheSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsCacheSqlTest.java new file mode 100644 index 0000000000..b6fd8e802c --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsCacheSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseDeviceCredentialsCacheTest; + +@DaoServiceSqlTest +public class DeviceCredentialsCacheSqlTest extends BaseDeviceCredentialsCacheTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsServiceSqlTest.java new file mode 100644 index 0000000000..fbc0cd6b37 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceCredentialsServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseDeviceCredentialsServiceTest; + +@DaoServiceSqlTest +public class DeviceCredentialsServiceSqlTest extends BaseDeviceCredentialsServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceServiceSqlTest.java new file mode 100644 index 0000000000..4a030d508a --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/DeviceServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseDeviceServiceTest; + +@DaoServiceSqlTest +public class DeviceServiceSqlTest extends BaseDeviceServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/RelationServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/RelationServiceSqlTest.java new file mode 100644 index 0000000000..8c8e178c68 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/RelationServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseRelationServiceTest; + +@DaoServiceSqlTest +public class RelationServiceSqlTest extends BaseRelationServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/TenantServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/TenantServiceSqlTest.java new file mode 100644 index 0000000000..6f05d5379b --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/TenantServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseTenantServiceTest; + +@DaoServiceSqlTest +public class TenantServiceSqlTest extends BaseTenantServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/UserServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/UserServiceSqlTest.java new file mode 100644 index 0000000000..27c69998fd --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/UserServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseUserServiceTest; + +@DaoServiceSqlTest +public class UserServiceSqlTest extends BaseUserServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/WidgetTypeServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/WidgetTypeServiceSqlTest.java new file mode 100644 index 0000000000..5c9656fdd1 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/WidgetTypeServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseWidgetTypeServiceTest; + +@DaoServiceSqlTest +public class WidgetTypeServiceSqlTest extends BaseWidgetTypeServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/sql/WidgetsBundleServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/sql/WidgetsBundleServiceSqlTest.java new file mode 100644 index 0000000000..3e6dcdedad --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/sql/WidgetsBundleServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.BaseWidgetsBundleServiceTest; + +@DaoServiceSqlTest +public class WidgetsBundleServiceSqlTest extends BaseWidgetsBundleServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/timeseries/TimeseriesServiceTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/timeseries/BaseTimeseriesServiceTest.java similarity index 98% rename from dao/src/test/java/org/thingsboard/server/dao/timeseries/TimeseriesServiceTest.java rename to dao/src/test/java/org/thingsboard/server/dao/service/timeseries/BaseTimeseriesServiceTest.java index 793b5037b6..9782058bad 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/timeseries/TimeseriesServiceTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/service/timeseries/BaseTimeseriesServiceTest.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.thingsboard.server.dao.timeseries; +package org.thingsboard.server.dao.service.timeseries; import com.datastax.driver.core.utils.UUIDs; import lombok.extern.slf4j.Slf4j; @@ -37,7 +37,7 @@ import static org.junit.Assert.assertNotNull; */ @Slf4j -public class TimeseriesServiceTest extends AbstractServiceTest { +public abstract class BaseTimeseriesServiceTest extends AbstractServiceTest { private static final String STRING_KEY = "stringKey"; private static final String LONG_KEY = "longKey"; diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/timeseries/nosql/TimeseriesServiceNoSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/timeseries/nosql/TimeseriesServiceNoSqlTest.java new file mode 100644 index 0000000000..56b1b47781 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/timeseries/nosql/TimeseriesServiceNoSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.timeseries.nosql; + +import org.thingsboard.server.dao.service.DaoServiceNoSqlTest; +import org.thingsboard.server.dao.service.timeseries.BaseTimeseriesServiceTest; + +@DaoServiceNoSqlTest +public class TimeseriesServiceNoSqlTest extends BaseTimeseriesServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/service/timeseries/sql/TimeseriesServiceSqlTest.java b/dao/src/test/java/org/thingsboard/server/dao/service/timeseries/sql/TimeseriesServiceSqlTest.java new file mode 100644 index 0000000000..5e92e55217 --- /dev/null +++ b/dao/src/test/java/org/thingsboard/server/dao/service/timeseries/sql/TimeseriesServiceSqlTest.java @@ -0,0 +1,23 @@ +/** + * Copyright © 2016-2017 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.thingsboard.server.dao.service.timeseries.sql; + +import org.thingsboard.server.dao.service.DaoServiceSqlTest; +import org.thingsboard.server.dao.service.timeseries.BaseTimeseriesServiceTest; + +@DaoServiceSqlTest +public class TimeseriesServiceSqlTest extends BaseTimeseriesServiceTest { +} diff --git a/dao/src/test/java/org/thingsboard/server/dao/sql/component/JpaBaseComponentDescriptorDaoTest.java b/dao/src/test/java/org/thingsboard/server/dao/sql/component/JpaBaseComponentDescriptorDaoTest.java index ce115c59e3..38b088db26 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/sql/component/JpaBaseComponentDescriptorDaoTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/sql/component/JpaBaseComponentDescriptorDaoTest.java @@ -18,7 +18,6 @@ package org.thingsboard.server.dao.sql.component; import com.datastax.driver.core.utils.UUIDs; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; -import org.thingsboard.server.common.data.Customer; import org.thingsboard.server.common.data.id.ComponentDescriptorId; import org.thingsboard.server.common.data.page.TextPageLink; import org.thingsboard.server.common.data.plugin.ComponentDescriptor; diff --git a/dao/src/test/java/org/thingsboard/server/dao/sql/plugin/JpaBasePluginDaoTest.java b/dao/src/test/java/org/thingsboard/server/dao/sql/plugin/JpaBasePluginDaoTest.java index 542f26fa16..8833135302 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/sql/plugin/JpaBasePluginDaoTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/sql/plugin/JpaBasePluginDaoTest.java @@ -16,9 +16,7 @@ package org.thingsboard.server.dao.sql.plugin; import com.datastax.driver.core.utils.UUIDs; -import com.github.springtestdbunit.annotation.DatabaseOperation; import com.github.springtestdbunit.annotation.DatabaseSetup; -import com.github.springtestdbunit.annotation.DatabaseTearDown; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.thingsboard.server.common.data.id.PluginId; @@ -71,7 +69,7 @@ public class JpaBasePluginDaoTest extends AbstractJpaDaoTest { assertEquals(40, rules1.size()); List rules2 = pluginDao.findAllTenantPluginsByTenantId(tenantId1, - new TextPageLink(40, "name_", rules1.get(39).getId().getId(), null)); + new TextPageLink(40, "name_", rules1.get(19).getId().getId(), null)); assertEquals(20, rules2.size()); List rules3 = pluginDao.findAllTenantPluginsByTenantId(tenantId1, @@ -80,7 +78,7 @@ public class JpaBasePluginDaoTest extends AbstractJpaDaoTest { } private void createTenantsAndSystemPlugins(UUID tenantId1, UUID tenantId2, String namePrefix) { - for (int i = 0; i < 30; i++) { + for (int i = 0; i < 40; i++) { createPlugin(tenantId1, namePrefix, i); createPlugin(tenantId2, namePrefix, i); createPlugin(null, namePrefix, i); diff --git a/dao/src/test/java/org/thingsboard/server/dao/sql/rule/JpaBaseRuleDaoTest.java b/dao/src/test/java/org/thingsboard/server/dao/sql/rule/JpaBaseRuleDaoTest.java index d613faccf9..04bc4c7206 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/sql/rule/JpaBaseRuleDaoTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/sql/rule/JpaBaseRuleDaoTest.java @@ -113,7 +113,7 @@ public class JpaBaseRuleDaoTest extends AbstractJpaDaoTest { assertEquals(40, rules1.size()); List rules2 = ruleDao.findAllTenantRulesByTenantId(tenantId1, - new TextPageLink(40, "name_", rules1.get(39).getId().getId(), null)); + new TextPageLink(40, "name_", rules1.get(19).getId().getId(), null)); assertEquals(20, rules2.size()); List rules3 = ruleDao.findAllTenantRulesByTenantId(tenantId1, @@ -129,7 +129,7 @@ public class JpaBaseRuleDaoTest extends AbstractJpaDaoTest { } private void createTenantsAndSystemRules(UUID tenantId1, UUID tenantId2, String namePrefix, String pluginToken) { - for (int i = 0; i < 30; i++) { + for (int i = 0; i < 40; i++) { createRule(tenantId1, namePrefix, pluginToken, i); createRule(tenantId2, namePrefix, pluginToken, i); createRule(null, namePrefix, pluginToken, i); diff --git a/dao/src/test/java/org/thingsboard/server/dao/sql/user/JpaUserDaoTest.java b/dao/src/test/java/org/thingsboard/server/dao/sql/user/JpaUserDaoTest.java index 4b4691867d..745d672eb1 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/sql/user/JpaUserDaoTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/sql/user/JpaUserDaoTest.java @@ -35,6 +35,7 @@ import java.util.List; import java.util.UUID; import static org.junit.Assert.*; +import static org.thingsboard.server.dao.model.ModelConstants.NULL_UUID; /** * Created by Valerii Sosliuk on 4/18/2017. @@ -120,7 +121,7 @@ public class JpaUserDaoTest extends AbstractJpaDaoTest { private void create30Adminsand60Users(UUID tenantId, UUID customerId) { // Create 30 tenant admins and 60 customer users for (int i = 0; i < 30; i++) { - saveUser(tenantId, null); + saveUser(tenantId, NULL_UUID); saveUser(tenantId, customerId); saveUser(tenantId, customerId); } diff --git a/dao/src/test/java/org/thingsboard/server/dao/sql/widget/JpaWidgetsBundleDaoTest.java b/dao/src/test/java/org/thingsboard/server/dao/sql/widget/JpaWidgetsBundleDaoTest.java index 7a89644cd5..46fc7edf27 100644 --- a/dao/src/test/java/org/thingsboard/server/dao/sql/widget/JpaWidgetsBundleDaoTest.java +++ b/dao/src/test/java/org/thingsboard/server/dao/sql/widget/JpaWidgetsBundleDaoTest.java @@ -19,7 +19,6 @@ import com.datastax.driver.core.utils.UUIDs; import com.github.springtestdbunit.annotation.DatabaseOperation; import com.github.springtestdbunit.annotation.DatabaseSetup; import com.github.springtestdbunit.annotation.DatabaseTearDown; -import org.junit.Ignore; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.thingsboard.server.common.data.id.TenantId; diff --git a/dao/src/test/resources/application-test.properties b/dao/src/test/resources/application-test.properties index dee5557333..d87a181d0a 100644 --- a/dao/src/test/resources/application-test.properties +++ b/dao/src/test/resources/application-test.properties @@ -7,8 +7,4 @@ zk.enabled=false zk.url=localhost:2181 zk.zk_dir=/thingsboard -sql.enabled=false - -cassandra.enabled=true - updates.enabled=false \ No newline at end of file diff --git a/dao/src/test/resources/nosql-test.properties b/dao/src/test/resources/nosql-test.properties new file mode 100644 index 0000000000..3c02a6f31f --- /dev/null +++ b/dao/src/test/resources/nosql-test.properties @@ -0,0 +1,2 @@ +sql.enabled=false +cassandra.enabled=true \ No newline at end of file diff --git a/dao/src/test/resources/postgres-embedded-test.properties b/dao/src/test/resources/postgres-embedded-test.properties index 557aad5905..a7279b9996 100644 --- a/dao/src/test/resources/postgres-embedded-test.properties +++ b/dao/src/test/resources/postgres-embedded-test.properties @@ -1,5 +1,5 @@ host: localhost port: 5433 -database: thingsboard +database: thingsboard-test username: postgres password: postgres \ No newline at end of file diff --git a/dao/src/test/resources/jpa-test.properties b/dao/src/test/resources/sql-test.properties similarity index 93% rename from dao/src/test/resources/jpa-test.properties rename to dao/src/test/resources/sql-test.properties index f2ce4b2df9..3c66279d72 100644 --- a/dao/src/test/resources/jpa-test.properties +++ b/dao/src/test/resources/sql-test.properties @@ -1,11 +1,10 @@ cassandra.enabled=false - sql.enabled=true spring.jpa.show-sql=false spring.jpa.hibernate.ddl-auto=validate -spring.datasource.url=jdbc:postgresql://localhost:5433/thingsboard +spring.datasource.url=jdbc:postgresql://localhost:5433/thingsboard-test spring.datasource.username=postgres spring.datasource.password=postgres