1616import static updater .utils .Validation .isURL ;
1717
1818import java .io .IOException ;
19- import java .net .URL ;
19+ import java .net .URI ;
2020import java .nio .file .Files ;
2121import java .nio .file .Path ;
2222import java .util .Map ;
23- import java .util .function .Function ;
23+ import java .util .function .UnaryOperator ;
2424
2525import javax .xml .XMLConstants ;
2626import javax .xml .parsers .DocumentBuilderFactory ;
@@ -59,7 +59,7 @@ record DownloadContext(String targetNamePrefix, boolean updateExistingFiles, Pat
5959 void downloadExampleFile (final DownloadContext ctx , final String examplePathOrURL ) throws IOException {
6060 if (examplePathOrURL != null ) {
6161 if (isURL (examplePathOrURL )) {
62- final var sourceURL = new URL (examplePathOrURL );
62+ final var sourceURL = URI . create (examplePathOrURL ). toURL ( );
6363 final var targetFile = ctx .targetDir .resolve (ctx .targetNamePrefix + ".example." + getFileExtension (sourceURL .getPath ()));
6464 if (ctx .updateExistingFiles || !Files .exists (targetFile )) {
6565 downloadFile (sourceURL , targetFile );
@@ -79,7 +79,7 @@ void downloadLangConfigurationJSONFile(final DownloadContext ctx, final String l
7979 if (isURL (langCfgPathOrURL )) {
8080 final var targetFile = ctx .targetDir .resolve (ctx .targetNamePrefix + ".language-configuration.json" );
8181 if (ctx .updateExistingFiles || !Files .exists (targetFile )) {
82- downloadFile (new URL (langCfgPathOrURL ), targetFile );
82+ downloadFile (URI . create (langCfgPathOrURL ). toURL ( ), targetFile );
8383 }
8484 } else {
8585 final var targetFile = ctx .targetDir .resolve (ctx .targetNamePrefix + ".language-configuration.json" );
@@ -112,15 +112,15 @@ void downloadLicenseFile(final Path targetDir) throws IOException {
112112 * @return grammarFile
113113 */
114114 Path downloadTextMateGrammarFile (final DownloadContext ctx , final String grammarPathOrURL ) throws IOException {
115- final Function < String , String > mapFileExt = fileExt -> switch (fileExt ) {
115+ final UnaryOperator < String > mapFileExt = fileExt -> switch (fileExt ) {
116116 case "json" -> ".tmLanguage.json" ;
117117 case "yml" , "yaml" , "yaml-tmlanguage" -> ".tmLanguage.yaml" ;
118118 case "plist" , "xml" , "tmlanguage" -> ".tmLanguage.plist" ;
119119 default -> ".tmLanguage.plist" ;
120120 };
121121
122122 if (isURL (grammarPathOrURL )) {
123- final var sourceURL = new URL (grammarPathOrURL );
123+ final var sourceURL = URI . create (grammarPathOrURL ). toURL ( );
124124 final var targetFile = ctx .targetDir .resolve (ctx .targetNamePrefix + mapFileExt .apply (getFileExtension (sourceURL .getPath ())
125125 .toLowerCase ()));
126126 if (ctx .updateExistingFiles || !Files .exists (targetFile )) {
0 commit comments