HashKeyIndexStrategy implements
    PartitionIndexStrategy<MultiDimensionalNumericData, MultiDimensionalNumericData> { public byte[][] getPartitionKeys() { return keys; } HashKeyIndexStrategy();  HashKeyIndexStrategy(final int size); @Override String getId(); @Override byte[] toBinary(); @Override void fromBinary(final byte[] bytes); byte[][] getPartitionKeys(); @Override int getPartitionKeyLength(); @Override List<IndexMetaData> createMetaData(); @Override byte[][] getInsertionPartitionKeys(final MultiDimensionalNumericData insertionData); @Override byte[][] getQueryPartitionKeys(
      final MultiDimensionalNumericData queryData,
      final IndexMetaData... hints); @Override byte[][] getPredefinedSplits();  }
@Test public void testGetCoordinatesPerDimension() { final NumericRange dimension1Range = new NumericRange(20.01, 20.02); final NumericRange dimension2Range = new NumericRange(30.51, 30.59); final MultiDimensionalNumericData sfcIndexedRange = new BasicNumericDataset(new NumericData[] {dimension1Range, dimension2Range}); final InsertionIds id = compoundIndexStrategy.getInsertionIds(sfcIndexedRange); for (final SinglePartitionInsertionIds partitionKey : id.getPartitionKeys()) { for (final byte[] sortKey : partitionKey.getSortKeys()) { final MultiDimensionalCoordinates coords = compoundIndexStrategy.getCoordinatesPerDimension( partitionKey.getPartitionKey(), sortKey); assertTrue(coords.getCoordinate(0).getCoordinate() > 0); assertTrue(coords.getCoordinate(1).getCoordinate() > 0); } } final Iterator<SinglePartitionInsertionIds> it = id.getPartitionKeys().iterator(); assertTrue(it.hasNext()); final SinglePartitionInsertionIds partitionId = it.next(); assertTrue(!it.hasNext()); for (final byte[] sortKey : partitionId.getSortKeys()) { final MultiDimensionalNumericData nd = compoundIndexStrategy.getRangeForId(partitionId.getPartitionKey(), sortKey); assertEquals(20.02, nd.getMaxValuesPerDimension()[0], 0.01); assertEquals(30.59, nd.getMaxValuesPerDimension()[1], 0.1); assertEquals(20.01, nd.getMinValuesPerDimension()[0], 0.01); assertEquals(30.51, nd.getMinValuesPerDimension()[1], 0.1); } }