org.forstdb.LevelMetaData Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of forstjni Show documentation
Show all versions of forstjni Show documentation
ForSt fat jar with modifications specific for Apache Flink that contains .so files for linux32 and linux64 (glibc and musl-libc), jnilib files
for Mac OSX, and a .dll for Windows x64.
// Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
// This source code is licensed under both the GPLv2 (found in the
// COPYING file in the root directory) and Apache 2.0 License
// (found in the LICENSE.Apache file in the root directory).
package org.forstdb;
import java.util.Arrays;
import java.util.List;
/**
* The metadata that describes a level.
*/
@SuppressWarnings("PMD.MissingStaticMethodInNonInstantiatableClass")
public class LevelMetaData {
private final int level;
private final long size;
private final SstFileMetaData[] files;
/**
* Called from JNI C++
*/
private LevelMetaData(final int level, final long size,
final SstFileMetaData[] files) {
this.level = level;
this.size = size;
this.files = files;
}
/**
* The level which this meta data describes.
*
* @return the level
*/
public int level() {
return level;
}
/**
* The size of this level in bytes, which is equal to the sum of
* the file size of its {@link #files()}.
*
* @return the size
*/
public long size() {
return size;
}
/**
* The metadata of all sst files in this level.
*
* @return the metadata of the files
*/
public List files() {
return Arrays.asList(files);
}
}