Commit 457b5d1250d2b71f49cb07ad49a3c2f13d369457
1 parent
66b33028
Created entity-view dao for nosql db
Showing
1 changed file
with
26 additions
and
8 deletions
@@ -16,22 +16,24 @@ | @@ -16,22 +16,24 @@ | ||
16 | package org.thingsboard.server.dao.entityview; | 16 | package org.thingsboard.server.dao.entityview; |
17 | 17 | ||
18 | import com.datastax.driver.core.Statement; | 18 | import com.datastax.driver.core.Statement; |
19 | +import com.datastax.driver.core.querybuilder.Select; | ||
19 | import lombok.extern.slf4j.Slf4j; | 20 | import lombok.extern.slf4j.Slf4j; |
20 | import org.springframework.stereotype.Component; | 21 | import org.springframework.stereotype.Component; |
21 | import org.thingsboard.server.common.data.EntitySubtype; | 22 | import org.thingsboard.server.common.data.EntitySubtype; |
22 | import org.thingsboard.server.common.data.EntityType; | 23 | import org.thingsboard.server.common.data.EntityType; |
23 | import org.thingsboard.server.common.data.EntityView; | 24 | import org.thingsboard.server.common.data.EntityView; |
24 | import org.thingsboard.server.common.data.page.TextPageLink; | 25 | import org.thingsboard.server.common.data.page.TextPageLink; |
26 | +import org.thingsboard.server.dao.DaoUtil; | ||
25 | import org.thingsboard.server.dao.model.EntitySubtypeEntity; | 27 | import org.thingsboard.server.dao.model.EntitySubtypeEntity; |
26 | import org.thingsboard.server.dao.model.nosql.EntityViewEntity; | 28 | import org.thingsboard.server.dao.model.nosql.EntityViewEntity; |
27 | import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; | 29 | import org.thingsboard.server.dao.nosql.CassandraAbstractSearchTextDao; |
28 | import org.thingsboard.server.dao.util.NoSqlDao; | 30 | import org.thingsboard.server.dao.util.NoSqlDao; |
29 | 31 | ||
30 | -import java.util.List; | ||
31 | -import java.util.Optional; | ||
32 | -import java.util.UUID; | 32 | +import java.util.*; |
33 | 33 | ||
34 | -import static org.thingsboard.server.dao.model.ModelConstants.ENTITY_VIEW_TABLE_FAMILY_NAME; | 34 | +import static com.datastax.driver.core.querybuilder.QueryBuilder.eq; |
35 | +import static com.datastax.driver.core.querybuilder.QueryBuilder.select; | ||
36 | +import static org.thingsboard.server.dao.model.ModelConstants.*; | ||
35 | 37 | ||
36 | /** | 38 | /** |
37 | * Created by Victor Basanets on 9/06/2017. | 39 | * Created by Victor Basanets on 9/06/2017. |
@@ -62,20 +64,36 @@ public class CassandraEntityViewDao extends CassandraAbstractSearchTextDao<Entit | @@ -62,20 +64,36 @@ public class CassandraEntityViewDao extends CassandraAbstractSearchTextDao<Entit | ||
62 | return savedEntityView; | 64 | return savedEntityView; |
63 | } | 65 | } |
64 | 66 | ||
65 | - /*Wasn't done!!!*/ | ||
66 | @Override | 67 | @Override |
67 | public List<EntityView> findEntityViewByTenantId(UUID tenantId, TextPageLink pageLink) { | 68 | public List<EntityView> findEntityViewByTenantId(UUID tenantId, TextPageLink pageLink) { |
69 | + log.debug("Try to find entity-views by tenantId [{}] and pageLink [{}]", tenantId, pageLink); | ||
70 | + List<EntityViewEntity> entityViewEntities = | ||
71 | + findPageWithTextSearch(ENTITY_VIEW_BY_TENANT_AND_SEARCH_TEXT_COLUMN_FAMILY_NAME, | ||
72 | + Collections.singletonList(eq(ENTITY_VIEW_TENANT_ID_PROPERTY, tenantId)), pageLink); | ||
68 | 73 | ||
74 | + log.trace("Found entity-views [{}] by tenantId [{}] and pageLink [{}]", entityViewEntities, tenantId, pageLink); | ||
75 | + return DaoUtil.convertDataList(entityViewEntities); | ||
69 | } | 76 | } |
70 | 77 | ||
71 | @Override | 78 | @Override |
72 | - public Optional<EntityView> findEntityViewByTenantIdAndName(UUID tenantId, String name) { | ||
73 | - return Optional.empty(); | 79 | + public Optional<EntityView> findEntityViewByTenantIdAndName(UUID tenantId, String entityViewName) { |
80 | + return Optional.ofNullable(DaoUtil.getData( | ||
81 | + findOneByStatement(select().from(ENTITY_VIEW_TENANT_AND_NAME_VIEW_NAME).where() | ||
82 | + .and(eq(ENTITY_VIEW_TENANT_ID_PROPERTY, tenantId)) | ||
83 | + .and(eq(ENTITY_VIEW_NAME_PROPERTY, entityViewName)))) | ||
84 | + ); | ||
74 | } | 85 | } |
75 | 86 | ||
76 | @Override | 87 | @Override |
77 | public List<EntityView> findEntityViewByTenantIdAndEntityId(UUID tenantId, UUID entityId, TextPageLink pageLink) { | 88 | public List<EntityView> findEntityViewByTenantIdAndEntityId(UUID tenantId, UUID entityId, TextPageLink pageLink) { |
78 | - return null; | 89 | + log.debug("Try to find entity-views by tenantId [{}], entityId[{}] and pageLink [{}]", tenantId, entityId, pageLink); |
90 | + List<EntityViewEntity> entityViewEntities = findPageWithTextSearch(DEVICE_BY_CUSTOMER_AND_SEARCH_TEXT_COLUMN_FAMILY_NAME, | ||
91 | + Arrays.asList(eq(DEVICE_CUSTOMER_ID_PROPERTY, entityId), | ||
92 | + eq(DEVICE_TENANT_ID_PROPERTY, tenantId)), | ||
93 | + pageLink); | ||
94 | + | ||
95 | + log.trace("Found entity-views [{}] by tenantId [{}], entityId [{}] and pageLink [{}]", entityViewEntities, tenantId, entityId, pageLink); | ||
96 | + return DaoUtil.convertDataList(entityViewEntities); | ||
79 | } | 97 | } |
80 | 98 | ||
81 | @Override | 99 | @Override |