ESIMapManager
ESIMapManager maintains a collection of ESIMap objects. The map manager maintains the ESIMap objects in a cache so that they only have to be retrieved once from external storage.
Once retrieved, the map information is not re-read from the disk until the java virtual machine is restarted.
|
An exception to what is stated above occurs when the value of the responseMetaInfoPath attribute on a given distribution target is modified. This will result in the contents of the newly specified ESI response meta information file to be read in as soon as the distribution target is modified and saved. A new entry will be created as well in the map manager, for the modified version of the response meta information file. Retrieval of information from the file also occurs if a given distribution target is made inactive, saved and made active once again.
|
The class follows the Singleton design pattern to ensure that only one instance exists in a java virtual machine. All users of ESIMap objects are expected to obtain them from the map manager.
<<Static>> instance() : ESIMapManager
Gets the value of the _instance attribute. If it is null, create an instance and store it in the attribute before returning the result.
<<final>> getMap(id : String) : ESIMap
Returns the ESIMap identified by the id argument. If the input ID exists as a key in maps, the method simply returns the corresponding value. Otherwise, a null is returned after logging an error message.
|
This method works only for ESIMap objects that figure in the ESI response meta information file; for those objects that are represented by map files (e.g., ESITarget.map), use the overloaded version that takes in a File instance instead.
|
<<final>> getMap(file : File) : ESIMap
Returns the ESIMap object identified by the input argument. If the name of the input file exists as a key in maps, this method simply returns the corresponding value. Otherwise, it creates a new ESIMap instance, initializes it with the contents of the input map file, and returns the resulting object, besides creating an entry for the newly created object in maps.