io.deephaven.engine.table.impl.sources.regioned.GenericColumnRegionBase Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of deephaven-engine-table Show documentation
Show all versions of deephaven-engine-table Show documentation
Engine Table: Implementation and closely-coupled utilities
/**
* Copyright (c) 2016-2022 Deephaven Data Labs and Patent Pending
*/
package io.deephaven.engine.table.impl.sources.regioned;
import io.deephaven.chunk.attributes.Any;
import io.deephaven.engine.table.impl.locations.InvalidatedRegionException;
/**
* Base {@link ColumnRegion} implementation.
*/
public abstract class GenericColumnRegionBase implements ColumnRegion {
private final long pageMask;
private volatile boolean invalidated = false;
public GenericColumnRegionBase(final long pageMask) {
this.pageMask = pageMask;
}
@Override
public final long mask() {
return pageMask;
}
@Override
public void invalidate() {
this.invalidated = true;
}
protected final void throwIfInvalidated() {
if (invalidated) {
throw new InvalidatedRegionException("Column region has been invalidated due to data removal");
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy