@@ -70,7 +70,7 @@ function __sdkman_install_candidate_version() {
7070 mkdir -p " ${SDKMAN_CANDIDATES_DIR} /${candidate} "
7171
7272 rm -rf " ${SDKMAN_DIR} /tmp/out"
73- unzip -oq " ${SDKMAN_DIR} /archives /${candidate} -${version} .zip" -d " ${SDKMAN_DIR} /tmp/out"
73+ unzip -oq " ${SDKMAN_DIR} /tmp /${candidate} -${version} .zip" -d " ${SDKMAN_DIR} /tmp/out"
7474 mv -f " $SDKMAN_DIR " /tmp/out/* " ${SDKMAN_CANDIDATES_DIR} /${candidate} /${version} "
7575 __sdkman_echo_green " Done installing!"
7676 echo " "
@@ -114,65 +114,56 @@ function __sdkman_install_local_version() {
114114}
115115
116116function __sdkman_download() {
117- local candidate version archives_folder
117+ local candidate version
118118
119119 candidate=" $1 "
120120 version=" $2 "
121121
122- archives_folder=" ${SDKMAN_DIR} /archives"
123122 metadata_folder=" ${SDKMAN_DIR} /var/metadata"
124123 mkdir -p ${metadata_folder}
125124
126- if [ ! -f " ${archives_folder} /${candidate} -${version} .zip" ]; then
127- local platform_parameter=" $( echo $SDKMAN_PLATFORM | tr ' [:upper:]' ' [:lower:]' ) "
128- local download_url=" ${SDKMAN_CANDIDATES_API} /broker/download/${candidate} /${version} /${platform_parameter} "
129- local base_name=" ${candidate} -${version} "
130- local zip_archive_target=" ${SDKMAN_DIR} /archives/${base_name} .zip"
131- local tmp_headers_file=" ${SDKMAN_DIR} /tmp/${base_name} .headers.tmp"
132- local headers_file=" ${metadata_folder} /${base_name} .headers"
133-
134- # pre-installation hook: implements function __sdkman_pre_installation_hook
135- local pre_installation_hook=" ${SDKMAN_DIR} /tmp/hook_pre_${candidate} _${version} .sh"
136- __sdkman_echo_debug " Get pre-installation hook: ${SDKMAN_CANDIDATES_API} /hooks/pre/${candidate} /${version} /${platform_parameter} "
137- __sdkman_secure_curl " ${SDKMAN_CANDIDATES_API} /hooks/pre/${candidate} /${version} /${platform_parameter} " > | " $pre_installation_hook "
138- __sdkman_echo_debug " Copy remote pre-installation hook: $pre_installation_hook "
139- source " $pre_installation_hook "
140- __sdkman_pre_installation_hook || return 1
141- __sdkman_echo_debug " Completed pre-installation hook..."
142-
143- export local binary_input=" ${SDKMAN_DIR} /tmp/${base_name} .bin"
144- export local zip_output=" ${SDKMAN_DIR} /tmp/$base_name .zip"
125+ local platform_parameter=" $( echo $SDKMAN_PLATFORM | tr ' [:upper:]' ' [:lower:]' ) "
126+ local download_url=" ${SDKMAN_CANDIDATES_API} /broker/download/${candidate} /${version} /${platform_parameter} "
127+ local base_name=" ${candidate} -${version} "
128+ local tmp_headers_file=" ${SDKMAN_DIR} /tmp/${base_name} .headers.tmp"
129+ local headers_file=" ${metadata_folder} /${base_name} .headers"
130+
131+ # pre-installation hook: implements function __sdkman_pre_installation_hook
132+ local pre_installation_hook=" ${SDKMAN_DIR} /tmp/hook_pre_${candidate} _${version} .sh"
133+ __sdkman_echo_debug " Get pre-installation hook: ${SDKMAN_CANDIDATES_API} /hooks/pre/${candidate} /${version} /${platform_parameter} "
134+ __sdkman_secure_curl " ${SDKMAN_CANDIDATES_API} /hooks/pre/${candidate} /${version} /${platform_parameter} " > | " $pre_installation_hook "
135+ __sdkman_echo_debug " Copy remote pre-installation hook: $pre_installation_hook "
136+ source " $pre_installation_hook "
137+ __sdkman_pre_installation_hook || return 1
138+ __sdkman_echo_debug " Completed pre-installation hook..."
139+
140+ export local binary_input=" ${SDKMAN_DIR} /tmp/${base_name} .bin"
141+ export local zip_output=" ${SDKMAN_DIR} /tmp/${base_name} .zip"
145142
146- echo " "
147- __sdkman_echo_no_colour " Downloading: ${candidate} ${version} "
148- echo " "
149- __sdkman_echo_no_colour " In progress..."
150- echo " "
143+ echo " "
144+ __sdkman_echo_no_colour " Downloading: ${candidate} ${version} "
145+ echo " "
146+ __sdkman_echo_no_colour " In progress..."
147+ echo " "
151148
152- # download binary
153- __sdkman_secure_curl_download " ${download_url} " --output " ${binary_input} " --dump-header " ${tmp_headers_file} "
154- grep ' ^X-Sdkman' " ${tmp_headers_file} " > " ${headers_file} "
155- __sdkman_echo_debug " Downloaded binary to: ${binary_input} (HTTP headers written to: ${headers_file} )"
156-
157- # post-installation hook: implements function __sdkman_post_installation_hook
158- # responsible for taking `binary_input` and producing `zip_output`
159- local post_installation_hook=" ${SDKMAN_DIR} /tmp/hook_post_${candidate} _${version} .sh"
160- __sdkman_echo_debug " Get post-installation hook: ${SDKMAN_CANDIDATES_API} /hooks/post/${candidate} /${version} /${platform_parameter} "
161- __sdkman_secure_curl " ${SDKMAN_CANDIDATES_API} /hooks/post/${candidate} /${version} /${platform_parameter} " > | " $post_installation_hook "
162- __sdkman_echo_debug " Copy remote post-installation hook: ${post_installation_hook} "
163- source " $post_installation_hook "
164- __sdkman_post_installation_hook || return 1
165- __sdkman_echo_debug " Processed binary as: $zip_output "
166- __sdkman_echo_debug " Completed post-installation hook..."
167-
168- mv -f " $zip_output " " $zip_archive_target "
169- __sdkman_echo_debug " Moved to archive folder: $zip_archive_target "
170- else
171- echo " "
172- __sdkman_echo_no_colour " Found a previously downloaded ${candidate} ${version} archive. Not downloading it again..."
173- fi
174- __sdkman_validate_zip " ${archives_folder} /${candidate} -${version} .zip" || return 1
175- __sdkman_checksum_zip " ${archives_folder} /${candidate} -${version} .zip" " ${headers_file} " || return 1
149+ # download binary
150+ __sdkman_secure_curl_download " ${download_url} " --output " ${binary_input} " --dump-header " ${tmp_headers_file} "
151+ grep ' ^X-Sdkman' " ${tmp_headers_file} " > " ${headers_file} "
152+ __sdkman_echo_debug " Downloaded binary to: ${binary_input} (HTTP headers written to: ${headers_file} )"
153+
154+ # post-installation hook: implements function __sdkman_post_installation_hook
155+ # responsible for taking `binary_input` and producing `zip_output`
156+ local post_installation_hook=" ${SDKMAN_DIR} /tmp/hook_post_${candidate} _${version} .sh"
157+ __sdkman_echo_debug " Get post-installation hook: ${SDKMAN_CANDIDATES_API} /hooks/post/${candidate} /${version} /${platform_parameter} "
158+ __sdkman_secure_curl " ${SDKMAN_CANDIDATES_API} /hooks/post/${candidate} /${version} /${platform_parameter} " > | " $post_installation_hook "
159+ __sdkman_echo_debug " Copy remote post-installation hook: ${post_installation_hook} "
160+ source " $post_installation_hook "
161+ __sdkman_post_installation_hook || return 1
162+ __sdkman_echo_debug " Processed binary as: $zip_output "
163+ __sdkman_echo_debug " Completed post-installation hook..."
164+
165+ __sdkman_validate_zip " ${zip_output} " || return 1
166+ __sdkman_checksum_zip " ${zip_output} " " ${headers_file} " || return 1
176167 echo " "
177168}
178169
0 commit comments