@InterfaceAudience.Private @InterfaceStability.Stable public class FileChannel extends BasicChannelSemantics implements TransactionCapacitySupported
A durable Channel implementation that uses the local file system for
its storage.
FileChannel works by writing all transactions to a set of directories specified in the configuration. Additionally, when a commit occurs the transaction is synced to disk.
FileChannel is marked
InterfaceAudience.Private because it
should only be instantiated via a configuration. For example, users should
certainly use FileChannel but not by instantiating FileChannel objects.
Meaning the label Private applies to user-developers not user-operators.
In cases where a Channel is required by instantiated by user-developers
MemoryChannel should be used.
| Modifier and Type | Field and Description |
|---|---|
protected Integer |
transactionCapacity |
| Constructor and Description |
|---|
FileChannel() |
| Modifier and Type | Method and Description |
|---|---|
void |
configure(Context context)
Request the implementing class to (re)configure itself.
|
protected BasicTransactionSemantics |
createTransaction()
Called to create new
Transaction objects, which must
extend BasicTransactionSemantics. |
protected int |
getDepth() |
long |
getTransactionCapacity()
Returns the transaction capacity
|
boolean |
isOpen() |
void |
setName(String name) |
void |
start()
Starts a service or component.
|
void |
stop()
Stops a service or component.
|
String |
toString() |
getTransaction, initialize, put, takegetLifecycleState, getNameprotected Integer transactionCapacity
public void setName(String name)
setName in interface NamedComponentsetName in class AbstractChannelpublic void configure(Context context)
ConfigurableRequest the implementing class to (re)configure itself.
When configuration parameters are changed, they must be reflected by the component asap.
There are no thread safety guarantees on when configure might be called.
configure in interface Configurableconfigure in class AbstractChannelpublic void start()
LifecycleAwareStarts a service or component.
Implementations should determine the result of any start logic and effect
the return value of LifecycleAware.getLifecycleState() accordingly.
start in interface LifecycleAwarestart in class AbstractChannelpublic void stop()
LifecycleAwareStops a service or component.
Implementations should determine the result of any stop logic and effect
the return value of LifecycleAware.getLifecycleState() accordingly.
stop in interface LifecycleAwarestop in class AbstractChannelpublic String toString()
toString in class AbstractChannelprotected BasicTransactionSemantics createTransaction()
BasicChannelSemantics
Called to create new Transaction objects, which must
extend BasicTransactionSemantics. Each object is used
for only one transaction, but is stored in a thread-local and
retrieved by getTransaction for the duration of that
transaction.
createTransaction in class BasicChannelSemanticsprotected int getDepth()
public boolean isOpen()
public long getTransactionCapacity()
TransactionCapacitySupportedgetTransactionCapacity in interface TransactionCapacitySupportedCopyright © 2009-2022 Apache Software Foundation. All Rights Reserved.