Converts the given relative path to an absolute path. The default implementation logic is defined as follows:
if( path != null ) { if( enclosed() and path starts with ".." ) { return null } absolute = null for( Path root : roots() { absolute = canonicalize( root + path ) if( absolute path exists on the file system ) { break } } return absolute } return null
Can be overridden to customize conversion logic. The implementation must return null if path parameter is null or if absolute path could not be computed for whatever reason. Exceptions must not be used to signal failure to convert.
@param path the relative path that should be converted to absolute
@return the absolute path or null if an absolute path could not be computed