Code Review: Formatting and ward clause. Method should be made more modular.

This commit is contained in:
Offray Vladimir Luna Cárdenas 2022-04-25 06:26:54 -05:00
parent bbfae14949
commit bd279b1fd3

View File

@ -3,38 +3,37 @@ exportProfileImageOn: fileReference
| file tempFile tempFileHash fileHash | | file tempFile tempFileHash fileHash |
file := fileReference asFileReference. file := fileReference asFileReference.
file exists file exists ifFalse: [
ifFalse: [ file ensureCreateFile. file ensureCreateFile.
file binaryWriteStreamDo: [ :stream | file binaryWriteStreamDo: [ :stream |
stream nextPutAll: profileImageUrl asUrl retrieveContents ]. stream nextPutAll: profileImageUrl asUrl retrieveContents ].
super class inform: 'Exported as: ', String cr, file fullName. super class inform: 'Exported as: ', String cr, file fullName.
^ file] ^ file
].
tempFile := FileLocator temp / fileReference basename.
tempFile ensureCreateFile.
tempFile binaryWriteStreamDo: [ :stream |
stream nextPutAll: profileImageUrl asUrl retrieveContents.
super class inform: 'Exported as: ', String cr, tempFile fullName.
].
ifTrue: [ OSSUnixSubprocess new
tempFile := FileLocator temp / fileReference basename. command: 'openssl';
tempFile ensureCreateFile. arguments: { 'dgst' . '-sha256' . file fullName};
tempFile binaryWriteStreamDo: [ :stream | workingDirectory: (self folder)fullName;
stream nextPutAll: profileImageUrl asUrl retrieveContents. redirectStdout;
super class redirectStderr;
inform: 'Exported as: ', String cr, tempFile fullName. ]. runAndWaitOnExitDo: [ :process :outString |
fileHash := (outString splitOn: ' ' ) second trimmed].
OSSUnixSubprocess new OSSUnixSubprocess new
command: 'openssl'; command: 'openssl';
arguments: { 'dgst' . '-sha256' . file fullName}; arguments: { 'dgst' . '-sha256' . tempFile fullName};
workingDirectory: (self folder)fullName; workingDirectory: (self folder)fullName;
redirectStdout; redirectStdout;
redirectStderr; redirectStderr;
runAndWaitOnExitDo: [ :process :outString | runAndWaitOnExitDo: [ :process :outString |
fileHash := (outString splitOn: ' ' ) second trimmed]. tempFileHash := (outString splitOn: ' ' ) second trimmed].
OSSUnixSubprocess new
command: 'openssl';
arguments: { 'dgst' . '-sha256' . tempFile fullName};
workingDirectory: (self folder)fullName;
redirectStdout;
redirectStderr;
runAndWaitOnExitDo: [ :process :outString |
tempFileHash := (outString splitOn: ' ' ) second trimmed].
fileHash = tempFileHash fileHash = tempFileHash
ifFalse: [ ifFalse: [
@ -44,5 +43,5 @@ exportProfileImageOn: fileReference
((file creationTime asLocalStringYMDHM) splitOn: ' ')), '.jpg'). ((file creationTime asLocalStringYMDHM) splitOn: ' ')), '.jpg').
file ensureDelete. file ensureDelete.
^ { 'Profile image changed' -> ^ { 'Profile image changed' ->
(tempFile moveTo: file)} asDictionary ]]. (tempFile moveTo: file)} asDictionary ].
^ { 'Same Profile Image' -> file } asDictionary ^ { 'Same Profile Image' -> file } asDictionary