Class BufferedWritableResource
java.lang.Object
org.apache.maven.index.reader.resource.BufferedResource
org.apache.maven.index.reader.resource.BufferedWritableResource
- All Implemented Interfaces:
Closeable
,AutoCloseable
,ResourceHandler.Resource
,WritableResourceHandler.WritableResource
public class BufferedWritableResource
extends BufferedResource
implements WritableResourceHandler.WritableResource
Wraps
WritableResourceHandler.WritableResource
s so that they return BufferedInputStream
s and BufferedOutputStream
s.-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Default close method is no-op, override if implementation requires.write()
Returns theOutputStream
stream of the resource, if exists, it will replace the existing content, or if not exists, the resource will be created.Methods inherited from class org.apache.maven.index.reader.resource.BufferedResource
read
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.maven.index.reader.ResourceHandler.Resource
read
-
Constructor Details
-
BufferedWritableResource
-
-
Method Details
-
write
Description copied from interface:WritableResourceHandler.WritableResource
Returns theOutputStream
stream of the resource, if exists, it will replace the existing content, or if not exists, the resource will be created. The stream should be closed by caller, otherwise resource leaks might be introduced. How and when content is written is left to implementation, but it is guaranteed that this method is called only once, and will be followed byResourceHandler.Resource.close()
on the resource itself. Implementation does not have to be "read consistent", in a way to worry what subsequentResourceHandler.Resource.read()
method will return, as mixed calls will not happen on same instance of resource.- Specified by:
write
in interfaceWritableResourceHandler.WritableResource
- Throws:
IOException
-
close
Description copied from interface:ResourceHandler.Resource
Default close method is no-op, override if implementation requires.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in interfaceResourceHandler.Resource
- Overrides:
close
in classBufferedResource
- Throws:
IOException
-