-
- All Superinterfaces:
Flushable
- All Known Subinterfaces:
CompositeComponent
,CompositeComponent.ExtendedCompositeComponent<CTX,CON>
,Flushable.FlushBuilder<B>
- All Known Implementing Classes:
CompositeComponentImpl
,CompositeComponentImpl.ExtendedCompositeComponentImpl
public interface Flushable extends Flushable
This mixin might be implemented by a component in order to provide flush facilities. A dedicated interface has been created just extending Java'sFlushable
interface to lift it onto the component's layer.ATTENTION: When implementing flush functionality, use this
Flushable
, though when testing for reset functionality, useFlushable
(instanceof
)!
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
Flushable.FlushBuilder<B extends Flushable.FlushBuilder<B>>
The Interface FlushBuilder.
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description void
flush()
default void
flushUnchecked()
Flushes the component by callingflush()
without you to require catching aIOException
.default boolean
isFlushable()
Determines whether the implementing instance can safely be flushed.
-
-
-
Method Detail
-
flush
void flush() throws IOException
- Specified by:
flush
in interfaceFlushable
- Throws:
IOException
-
flushUnchecked
default void flushUnchecked()
Flushes the component by callingflush()
without you to require catching aIOException
.- Throws:
org.refcodes.exception.IORuntimeException
- encapsulates the cause and is thrown upon encountering aIOException
exception
-
isFlushable
default boolean isFlushable()
Determines whether the implementing instance can safely be flushed. When false is returned, then callingflush()
would result in anIOException
exception to be thrown.- Returns:
- True in case
flush()
can be called without throwing anIOException
.
-
-