Class NTv2GridShiftFactory
- Object
-
- AbstractFactory
-
- ReferencingFactory
-
- NTv2GridShiftFactory
-
- All Implemented Interfaces:
Factory
,BufferedFactory
,Factory
,RegistrableFactory
public class NTv2GridShiftFactory extends ReferencingFactory implements BufferedFactory
Loads and caches NTv2 grid files. Thisthat incorporates a soft cache mechanism to keep grids in memory when first loaded. It also checks NTv2 grid file format in#isNTv2Grid(String)
method.- Author:
- Oscar Fonts
-
-
Field Summary
Fields Modifier and Type Field Description protected static Logger
LOGGER
Logger.-
Fields inherited from class AbstractFactory
hints, MAXIMUM_PRIORITY, MINIMUM_PRIORITY, NORMAL_PRIORITY, priority
-
-
Constructor Summary
Constructors Constructor Description NTv2GridShiftFactory()
Constructs a factory with the default priority.NTv2GridShiftFactory(int priority)
Constructs an instance using the specified priority level.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GridShiftFile
createNTv2Grid(URL gridLocation)
Creates a NTv2 Grid.boolean
isNTv2Grid(URL location)
Performs a NTv2 grid file lookup given its name, and checks for file format correctness.protected boolean
isNTv2GridFileValid(URL url)
Checks if a given resource is a valid NTv2 file without fully loading it.-
Methods inherited from class ReferencingFactory
ensureNonNull, getVendor
-
Methods inherited from class AbstractFactory
addImplementationHints, equals, getImplementationHints, getPriority, hashCode, onDeregistration, onRegistration, toString
-
Methods inherited from interface Factory
getImplementationHints
-
-
-
-
Field Detail
-
LOGGER
protected static final Logger LOGGER
Logger.
-
-
Constructor Detail
-
NTv2GridShiftFactory
public NTv2GridShiftFactory()
Constructs a factory with the default priority.
-
NTv2GridShiftFactory
public NTv2GridShiftFactory(int priority)
Constructs an instance using the specified priority level.- Parameters:
priority
- The priority for this factory, as a number betweenMINIMUM_PRIORITY
andMAXIMUM_PRIORITY
inclusive.
-
-
Method Detail
-
isNTv2Grid
public boolean isNTv2Grid(URL location)
Performs a NTv2 grid file lookup given its name, and checks for file format correctness.- Parameters:
location
- The NTv2 grid file location- Returns:
true
if file exists and is valid,false
otherwise
-
createNTv2Grid
public GridShiftFile createNTv2Grid(URL gridLocation) throws FactoryException
Creates a NTv2 Grid.- Parameters:
gridLocation
- The NTv2 grid file location- Returns:
- the grid
- Throws:
FactoryException
- if grid cannot be created
-
isNTv2GridFileValid
protected boolean isNTv2GridFileValid(URL url)
Checks if a given resource is a valid NTv2 file without fully loading it.If file is not valid, the cause is logged at
warning level
.- Parameters:
url
- the NTv2 file absolute path- Returns:
- true if file has NTv2 format, false otherwise
-
-