add Closeable/Flushable interfaces

This commit is contained in:
zzz
2015-08-27 14:36:19 +00:00
parent 5a11a28a35
commit 601376561b
15 changed files with 34 additions and 15 deletions

View File

@ -22,6 +22,7 @@
package net.i2p.addressbook;
import java.io.BufferedReader;
import java.io.Closeable;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
@ -41,7 +42,7 @@ import java.util.NoSuchElementException;
*
* @since 0.8.7
*/
class ConfigIterator implements Iterator<Map.Entry<String, String>> {
class ConfigIterator implements Iterator<Map.Entry<String, String>>, Closeable {
private BufferedReader input;
private ConfigEntry next;

View File

@ -20,6 +20,7 @@
package org.klomp.snark;
import java.io.Closeable;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
@ -50,7 +51,7 @@ import net.i2p.util.SystemVersion;
/**
* Maintains pieces on disk. Can be used to store and retrieve pieces.
*/
public class Storage
public class Storage implements Closeable
{
private final MetaInfo metainfo;
private final List<TorrentFile> _torrentFiles;

View File

@ -9,6 +9,7 @@ package net.i2p.sam;
*/
import java.io.ByteArrayInputStream;
import java.io.Closeable;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
@ -31,7 +32,7 @@ import net.i2p.util.Log;
*
* @author human
*/
abstract class SAMMessageSession {
abstract class SAMMessageSession implements Closeable {
protected final Log _log;
private I2PSession session;

View File

@ -1,5 +1,6 @@
package net.i2p.client.streaming.impl;
import java.io.Closeable;
import java.io.IOException;
import java.util.Iterator;
import java.util.Map;
@ -25,7 +26,7 @@ import net.i2p.util.SimpleTimer2;
*<p>
* MessageOutputStream -> ConnectionDataReceiver -> Connection -> PacketQueue -> I2PSession
*/
class PacketQueue implements SendMessageStatusListener {
class PacketQueue implements SendMessageStatusListener, Closeable {
private final I2PAppContext _context;
private final Log _log;
private final ByteCache _cache = ByteCache.getInstance(64, 36*1024);

View File

@ -1,8 +1,10 @@
package net.i2p.client.streaming.impl;
import java.io.BufferedOutputStream;
import java.io.Closeable;
import java.io.File;
import java.io.FileOutputStream;
import java.io.Flushable;
import java.io.IOException;
import java.io.OutputStream;
@ -41,7 +43,7 @@ import net.i2p.data.DataHelper;
*
* @since 0.9.4
*/
public class PcapWriter {
public class PcapWriter implements Closeable, Flushable {
/** big-endian, see file format ref - 24 bytes */
private static final byte[] FILE_HEADER = { (byte) 0xa1, (byte) 0xb2, (byte) 0xc3, (byte) 0xd4,

View File

@ -1,5 +1,7 @@
package net.i2p.internal;
import java.io.Closeable;
import net.i2p.data.i2cp.I2CPMessage;
/**
@ -15,7 +17,7 @@ import net.i2p.data.i2cp.I2CPMessage;
* @author zzz
* @since 0.8.3
*/
public abstract class I2CPMessageQueue {
public abstract class I2CPMessageQueue implements Closeable {
/**
* Send a message, nonblocking.

View File

@ -10,6 +10,7 @@ package net.i2p.util;
*/
import java.io.File;
import java.io.Flushable;
import java.io.IOException;
import java.text.DateFormat;
import java.text.DecimalFormat;
@ -37,7 +38,7 @@ import net.i2p.data.DataHelper;
* writes them where appropriate.
*
*/
public class LogManager {
public class LogManager implements Flushable {
public final static String CONFIG_LOCATION_PROP = "loggerConfigLocation";
public final static String FILENAME_OVERRIDE_PROP = "loggerFilenameOverride";
public final static String CONFIG_LOCATION_DEFAULT = "logger.config";

View File

@ -28,9 +28,10 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.metanotion.io;
import java.io.Closeable;
import java.io.IOException;
public interface RandomAccessInterface {
public interface RandomAccessInterface extends Closeable {
public long getFilePointer() throws IOException;
public long length() throws IOException;
public int read() throws IOException;

View File

@ -28,6 +28,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.metanotion.io.block;
import java.io.Closeable;
import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
@ -64,7 +65,7 @@ import net.i2p.util.Log;
* Pages are 1 KB and are numbered starting from 1.
* e.g. the Metaindex skiplist is at offset 1024 bytes
*/
public class BlockFile {
public class BlockFile implements Closeable {
public static final int PAGESIZE = 1024;
public static final long OFFSET_MOUNTED = 20;
public final Log log = I2PAppContext.getGlobalContext().logManager().getLog(BlockFile.class);

View File

@ -28,6 +28,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.metanotion.io.block.index;
import java.io.Closeable;
import java.io.IOException;
import java.util.HashMap;
@ -50,7 +51,7 @@ import net.i2p.util.Log;
*
* Always fits on one page.
*/
public class BSkipList extends SkipList {
public class BSkipList extends SkipList implements Closeable {
private static final long MAGIC = 0x536b69704c697374l; // "SkipList"
public int firstSpanPage = 0;
public int firstLevelPage = 0;

View File

@ -28,12 +28,14 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.metanotion.util.skiplist;
import java.io.Flushable;
import net.metanotion.io.block.BlockFile;
import net.i2p.I2PAppContext;
import net.i2p.util.Log;
public class SkipLevels {
public class SkipLevels implements Flushable {
/** We can't have more than 2**32 pages */
public static final int MAX_SIZE = 32;

View File

@ -28,13 +28,14 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.metanotion.util.skiplist;
import java.io.Flushable;
import java.util.Random;
import net.i2p.util.RandomSource;
//import net.metanotion.io.block.BlockFile;
public class SkipList {
public class SkipList implements Flushable {
/** the probability of each next higher level */
protected static final int P = 2;
private static final int MIN_SLOTS = 4;

View File

@ -28,9 +28,11 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.metanotion.util.skiplist;
import java.io.Flushable;
//import net.metanotion.io.block.BlockFile;
public class SkipSpan {
public class SkipSpan implements Flushable {
/** This is actually limited by BlockFile.spanSize which is much smaller */
public static final int MAX_SIZE = 256;

View File

@ -13,6 +13,7 @@ import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FilenameFilter;
import java.io.Flushable;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@ -193,7 +194,7 @@ class PersistentDataStore extends TransientDataStore {
* we will soon have to implement a scheme for keeping only
* a subset of all DatabaseEntrys in memory and keeping the rest on disk.
*/
private class Writer implements Runnable {
private class Writer implements Runnable, Flushable {
private final Map<Hash, DatabaseEntry>_keys;
private final Object _waitLock;
private volatile boolean _quit;

View File

@ -1,5 +1,6 @@
package net.i2p.router.transport.ntcp;
import java.io.Closeable;
import java.io.IOException;
import java.net.Inet6Address;
import java.nio.ByteBuffer;
@ -64,7 +65,7 @@ import net.i2p.util.VersionComparator;
*</pre>
*
*/
class NTCPConnection {
class NTCPConnection implements Closeable {
private final RouterContext _context;
private final Log _log;
private SocketChannel _chan;