/** * {@inheritDoc} */ @Override public void aggregate(SqlStatementData data) { this.aggregateSqlStatementData(data); if (data instanceof AggregatedSqlStatementData) { AggregatedSqlStatementData aggregatedData = (AggregatedSqlStatementData) data; if (null != aggregatedData.getAggregatedIds()) { for (Long id : aggregatedData.getAggregatedIds()) { aggregatedIds.put(id, Boolean.TRUE); } } } else if (0 != data.getId()) { aggregatedIds.put(data.getId(), Boolean.TRUE); } }
/** * Returns template for {@link SqlStatementData}. * * @param sqlStatementData * Source object. * @param id * Should id be inserted into template. * @param sql * Should SQL query be inserted into template. * @param parameters * Should parameters be inserted into template. * @return Template object. */ protected SqlStatementData getTemplate(SqlStatementData sqlStatementData, boolean id, boolean sql, boolean parameters) { SqlStatementData template = OccurrenceFinderFactory.getEmptyTemplate(sqlStatementData); if (id && (0 != sqlStatementData.getId())) { template.setId(sqlStatementData.getId()); } if (sql && (null != sqlStatementData.getSql())) { template.setSql(sqlStatementData.getSql()); } if (parameters && (null != sqlStatementData.getParameterValues())) { template.setParameterValues(sqlStatementData.getParameterValues()); } return template; }
when(defaultData2.getId()).thenReturn(2L); when(defaultData2.isQueryComplied(indexQuery)).thenReturn(true); rootBranch.put(defaultData2);
/** * Test tree with empty query. All elements should be returned. * * @throws IndexingException * If {@link IndexingException} occurs. */ @Test public void emptyQueryTest() throws IndexingException { IBufferTreeComponent<DefaultData> rootBranch = new Branch<>(new BufferBranchIndexer<>(new ObjectTypeIndexer<>())); DefaultData defaultData = mock(DefaultData.class); when(defaultData.getId()).thenReturn(1L); when(defaultData.isQueryComplied(indexQuery)).thenReturn(true); rootBranch.put(defaultData); SqlStatementData defaultData2 = mock(SqlStatementData.class); when(defaultData2.getId()).thenReturn(2L); when(defaultData2.isQueryComplied(indexQuery)).thenReturn(true); rootBranch.put(defaultData2); List<DefaultData> results = rootBranch.query(indexQuery); assertThat(results.size(), is(equalTo(2))); // Test for forkJoinPool List<DefaultData> resultsForkJoin = rootBranch.query(indexQuery, forkJoinPool); assertThat(resultsForkJoin.size(), is(equalTo(2))); }
/** * Test tree with empty query. All elements should be returned. * * @throws IndexingException * If {@link IndexingException} occurs. */ @Test public void emptyQueryTest() throws IndexingException { IStorageTreeComponent<DefaultData> rootBranch = new StorageBranch<>(new StorageBranchIndexer<>(new ObjectTypeIndexer<>(), false)); DefaultData defaultData = mock(DefaultData.class); when(defaultData.getId()).thenReturn(1L); IStorageDescriptor storageDescriptor1 = rootBranch.put(defaultData); storageDescriptor1.setPositionAndSize(0, 1); SqlStatementData defaultData2 = mock(SqlStatementData.class); when(defaultData2.getId()).thenReturn(2L); IStorageDescriptor storageDescriptor2 = rootBranch.put(defaultData2); storageDescriptor2.setPositionAndSize(2, 1); List<IStorageDescriptor> results = rootBranch.query(storageIndexQuery); assertThat(results.size(), is(equalTo(2))); // Test for forkJoinPool List<IStorageDescriptor> resultsForkJoin = rootBranch.query(storageIndexQuery, forkJoinPool); assertThat(resultsForkJoin.size(), is(equalTo(2))); }
when(defaultData2.getId()).thenReturn(2L); IStorageDescriptor storageDescriptor2 = rootBranch.put(defaultData2); storageDescriptor2.setPositionAndSize(0L, 200L);
when(defaultData2.getId()).thenReturn(2L); when(defaultData2.getPlatformIdent()).thenReturn(10L); when(defaultData2.getSensorTypeIdent()).thenReturn(20L);
when(defaultData2.getId()).thenReturn(2L); when(defaultData2.getPlatformIdent()).thenReturn(10L); when(defaultData2.getSensorTypeIdent()).thenReturn(20L);
when(defaultData2.getId()).thenReturn(2L); when(defaultData2.getPlatformIdent()).thenReturn(10L); when(defaultData2.getSensorTypeIdent()).thenReturn(20L);
when(defaultData2.getId()).thenReturn(2L); when(defaultData2.getPlatformIdent()).thenReturn(10L); when(defaultData2.getSensorTypeIdent()).thenReturn(20L);
if (object instanceof SqlStatementData) { SqlStatementData sqlData = (SqlStatementData) object; if (0 == sqlData.getId()) { return "SQL: " + sqlData.getSql() + " [All]"; } else {