Most of the constants should be collected in this class, most of which are primarily for internal use.
ReaderFactory and Readers
- ArcReaderFactory.java: This factory can be used to create the various types of readers with optional buffering. You can either get compressed or uncompressed readers. There are also methods which can auto-detect whether or not a compressed reader is required.
- ArcReader.java: Abstract reader class which is the base for the all the readers. It also defines the options which can be set on a reader. Currently only digest options.
- ArcReaderCompressed.java: A reader implementation for reading compressed records.
- ArcReaderUncompressed.java: A reader implementation for reading uncompressed records.
Version Block and ARC Record
- ArcRecordBase.java: Abstract class which is the base for both the VersionBlock and ArcRecord classes. Contains most of the fields, validation and methods.
- ArcVersionBlock.java: VersionBlock parser including relevant fields, validation and methods.
- ArcRecord.java: Record parser including relevant fields, validation and methods.
- ArcVersion.java: Represents the identified version with relevant information encapsulated.
- ArcDateParser.java: Parses and validated an ARC date.
- ArcFieldValidator.java: A class to keep track of field definitions in header lines and index them by name.
- ArcErrorType.java: Defines the different possible error types.
- ArcValidationError.java: Defines an ARC validation error using a type, key and value.