1 // Copyright (c) 2011-present, Facebook, Inc. All rights reserved. 2 // This source code is licensed under both the GPLv2 (found in the 3 // COPYING file in the root directory) and Apache 2.0 License 4 // (found in the LICENSE.Apache file in the root directory). 5 6 package org.rocksdb; 7 8 /** 9 * The full set of metadata associated with each SST file. 10 */ 11 public class LiveFileMetaData extends SstFileMetaData { 12 private final byte[] columnFamilyName; 13 private final int level; 14 15 /** 16 * Called from JNI C++ 17 */ LiveFileMetaData( final byte[] columnFamilyName, final int level, final String fileName, final String path, final long size, final long smallestSeqno, final long largestSeqno, final byte[] smallestKey, final byte[] largestKey, final long numReadsSampled, final boolean beingCompacted, final long numEntries, final long numDeletions)18 private LiveFileMetaData( 19 final byte[] columnFamilyName, 20 final int level, 21 final String fileName, 22 final String path, 23 final long size, 24 final long smallestSeqno, 25 final long largestSeqno, 26 final byte[] smallestKey, 27 final byte[] largestKey, 28 final long numReadsSampled, 29 final boolean beingCompacted, 30 final long numEntries, 31 final long numDeletions) { 32 super(fileName, path, size, smallestSeqno, largestSeqno, smallestKey, 33 largestKey, numReadsSampled, beingCompacted, numEntries, numDeletions); 34 this.columnFamilyName = columnFamilyName; 35 this.level = level; 36 } 37 38 /** 39 * Get the name of the column family. 40 * 41 * @return the name of the column family 42 */ columnFamilyName()43 public byte[] columnFamilyName() { 44 return columnFamilyName; 45 } 46 47 /** 48 * Get the level at which this file resides. 49 * 50 * @return the level at which the file resides. 51 */ level()52 public int level() { 53 return level; 54 } 55 } 56