* @author Kamal Rameshan
*/
public interface ConfigParams {
+ int MEGABYTE = 1048576;
+
/**
* Returns the minimum number of entries to be present in the in-memory Raft log for a snapshot to be taken.
*
*/
String getCustomRaftPolicyImplementationClass();
+ /**
+ * Returns the directory in which to create temp files.
+ *
+ * @return the directory in which to create temp files.
+ */
+ @Nonnull
+ String getTempFileDirectory();
+
+ /**
+ * Returns the threshold in terms of number of bytes when streaming data before it should switch from storing in
+ * memory to buffering to a file.
+ *
+ * @return the threshold in terms of number of bytes.
+ */
+ int getFileBackedStreamingThreshold();
+
+ /**
+ * Returns the threshold in terms of number journal entries that we can lag behind a leader until we raise a
+ * 'not synced' transition.
+ *
+ * @return the threshold in terms of number of journal entries.
+ */
+ long getSyncIndexThreshold();
}