use special enum for DateBucket units

Preparation step for having custom intervals.
This commit is contained in:
2020-09-27 17:06:27 +02:00
parent 78a0b7d70b
commit 10155f9cdb
9 changed files with 82 additions and 90 deletions

View File

@@ -1,6 +1,5 @@
package org.lucares.pdb.datastore.internal;
import java.time.temporal.ChronoUnit;
import java.util.ArrayList;
import java.util.Collection;
import java.util.LinkedHashSet;
@@ -8,11 +7,12 @@ import java.util.List;
import java.util.Set;
import org.lucares.pdb.api.DateTimeRange;
import org.lucares.utils.DateBucketUnit;
import org.lucares.utils.LongToDateBucket;
public class DateIndexExtension {
private static final LongToDateBucket longToDateBucket = new LongToDateBucket("yyyyMM", ChronoUnit.MONTHS);
private static final LongToDateBucket longToDateBucket = new LongToDateBucket("yyyyMM", DateBucketUnit.MONTH);
static Set<String> toDateIndexPrefix(final DateTimeRange dateRange) {
return longToDateBucket.toDateIndexPrefix(dateRange.getStart(), dateRange.getEnd());
@@ -31,7 +31,7 @@ public class DateIndexExtension {
*/
static List<ParititionId> toPartitionIds(final DateTimeRange dateRange) {
final List<String> partitionIds = longToDateBucket.toPartitionIds(dateRange.getStart(), dateRange.getEnd(),
ChronoUnit.MONTHS);
DateBucketUnit.MONTH);
final List<ParititionId> result = new ArrayList<>();
for (final String partitionId : partitionIds) {