Home/src/main/java/de/ph87/home/point/PointRequest.java

46 lines
1016 B
Java

package de.ph87.home.point;
import com.fasterxml.jackson.annotation.JsonIgnore;
import de.ph87.home.unit.Aligned;
import de.ph87.home.unit.Interval;
import lombok.Data;
import lombok.NonNull;
import java.time.ZonedDateTime;
@Data
public class PointRequest {
@NonNull
public final String seriesName;
public final long offset;
public final long count;
@NonNull
public final Interval outer;
@NonNull
public final Interval inner;
@NonNull
@JsonIgnore
public final Aligned beginIncluding;
@NonNull
@JsonIgnore
public final Aligned endIncluding;
public PointRequest(@NonNull final String seriesName, final long offset, final long count, @NonNull final Interval outer, @NonNull final Interval inner) {
this.seriesName = seriesName;
this.offset = offset;
this.count = count;
this.outer = outer;
this.inner = inner;
this.endIncluding = new Aligned(ZonedDateTime.now(), outer).minus(offset);
this.beginIncluding = endIncluding.minus(this.count - 1);
}
}