protected InputStream createSynonymProviderConfigResource ( ) throws IOException { if ( synonymProviderConfigPath != null ) { InputStream fsr ; // simple sanity check String separator = PrivilegedSystemHelper . getProperty ( "file.separator" ) ; if ( synonymProviderConfigPath . endsWith ( PrivilegedSystemHelper . getProperty ( "file.separator" ) ) ) { throw new IOException ( "Invalid synonymProviderConfigPath: " + synonymProviderConfigPath ) ; } if ( cfm == null ) { int lastSeparator = synonymProviderConfigPath . lastIndexOf ( separator ) ; if ( lastSeparator != - 1 ) { File root = new File ( path , synonymProviderConfigPath . substring ( 0 , lastSeparator ) ) ; fsr = new BufferedInputStream ( PrivilegedFileHelper . fileInputStream ( new File ( root , synonymProviderConfigPath . substring ( lastSeparator + 1 ) ) ) ) ; } else { fsr = new BufferedInputStream ( PrivilegedFileHelper . fileInputStream ( new File ( synonymProviderConfigPath ) ) ) ; } synonymProviderConfigFs = fsr ; } else { try { fsr = cfm . getInputStream ( synonymProviderConfigPath ) ; } catch ( Exception e ) { throw new IOException ( e . getLocalizedMessage ( ) , e ) ; } } return fsr ; } else { // path not configured return null ; } }
Creates a file system resource to the synonym provider configuration .