Package com.maxmind.db
Class Reader
java.lang.Object
com.maxmind.db.Reader
- All Implemented Interfaces:
Closeable,AutoCloseable
Instances of this class provide a reader for the MaxMind DB format. IP
addresses can be looked up using the
get method.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumThe file mode to use when opening a MaxMind DB. -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a Reader for the MaxMind DB format, with no caching.Constructs a Reader for the MaxMind DB format, with the specified backing cache.Reader(File database, Reader.FileMode fileMode) Constructs a Reader for the MaxMind DB format, with no caching.Reader(File database, Reader.FileMode fileMode, NodeCache cache) Constructs a Reader for the MaxMind DB format, with the specified backing cache.Reader(InputStream source) Constructs a Reader with no caching, as if in modeReader.FileMode.MEMORY, without using aFileinstance.Reader(InputStream source, NodeCache cache) Constructs a Reader with the specified backing cache, as if in modeReader.FileMode.MEMORY, without using aFileinstance. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()/**voidcountryToIP(String country, Writer out) I2P - Write all IPv4 address ranges for the given country to out.get(InetAddress ipAddress) Looks up theaddressin the MaxMind DB.
-
Constructor Details
-
Reader
Constructs a Reader for the MaxMind DB format, with no caching. The file passed to it must be a valid MaxMind DB file such as a GeoIP2 database file.- Parameters:
database- the MaxMind DB file to use.- Throws:
IOException- if there is an error opening or reading from the file.
-
Reader
Constructs a Reader for the MaxMind DB format, with the specified backing cache. The file passed to it must be a valid MaxMind DB file such as a GeoIP2 database file.- Parameters:
database- the MaxMind DB file to use.cache- backing cache instance- Throws:
IOException- if there is an error opening or reading from the file.
-
Reader
Constructs a Reader with no caching, as if in modeReader.FileMode.MEMORY, without using aFileinstance.- Parameters:
source- the InputStream that contains the MaxMind DB file.- Throws:
IOException- if there is an error reading from the Stream.
-
Reader
Constructs a Reader with the specified backing cache, as if in modeReader.FileMode.MEMORY, without using aFileinstance.- Parameters:
source- the InputStream that contains the MaxMind DB file.cache- backing cache instance- Throws:
IOException- if there is an error reading from the Stream.
-
Reader
Constructs a Reader for the MaxMind DB format, with no caching. The file passed to it must be a valid MaxMind DB file such as a GeoIP2 database file.- Parameters:
database- the MaxMind DB file to use.fileMode- the mode to open the file with.- Throws:
IOException- if there is an error opening or reading from the file.
-
Reader
Constructs a Reader for the MaxMind DB format, with the specified backing cache. The file passed to it must be a valid MaxMind DB file such as a GeoIP2 database file.- Parameters:
database- the MaxMind DB file to use.fileMode- the mode to open the file with.cache- backing cache instance- Throws:
IOException- if there is an error opening or reading from the file.
-
-
Method Details
-
get
Looks up theaddressin the MaxMind DB.- Parameters:
ipAddress- the IP address to look up.- Returns:
- the record for the IP address.
- Throws:
IOException- if a file I/O error occurs.
-
countryToIP
I2P - Write all IPv4 address ranges for the given country to out.- Parameters:
country- two-letter uppper-caseout- caller must close- Throws:
IOException- Since:
- 0.9.48
-
getMetadata
- Returns:
- the metadata for the MaxMind DB file.
-
close
/**Closes the database.
If you are using
FileMode.MEMORY_MAPPED, this will not unmap the underlying file due to a limitation in Java'sMappedByteBuffer. It will however set the reference to the buffer tonull, allowing the garbage collector to collect it.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException- if an I/O error occurs.
-