File tree Expand file tree Collapse file tree 4 files changed +18
-13
lines changed
src/main/kotlin/org/ktypeparser/processors Expand file tree Collapse file tree 4 files changed +18
-13
lines changed Original file line number Diff line number Diff line change @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
33distributionPath =wrapper/dists
44zipStoreBase =GRADLE_USER_HOME
55zipStorePath =wrapper/dists
6- distributionUrl =https\://services.gradle.org/distributions/gradle-6.5-all.zip
6+ distributionUrl =https\://services.gradle.org/distributions/gradle-6.5.1 -all.zip
Original file line number Diff line number Diff line change @@ -11,19 +11,20 @@ import java.nio.file.Files
1111import java.nio.file.Paths
1212import java.util.*
1313
14- internal fun deleteTempFile (file : File ) = file.delete()
14+ internal fun deleteTempFile (file : File ? ) = file? .delete()
1515
1616internal suspend fun deleteTempFileAsync (file : File ) = GlobalScope .launch { file.delete() }
1717
18- internal suspend fun createTempFileAsync (bytes : ByteArray ): Deferred <File > =
18+ internal suspend fun createTempFileAsync (bytes : ByteArray ): Deferred <File ? > =
1919 GlobalScope .async { createTempFile(bytes) }
2020
21- internal suspend fun createTempFileAsync (inputStream : InputStream ): Deferred <File > =
21+ internal suspend fun createTempFileAsync (inputStream : InputStream ): Deferred <File ? > =
2222 GlobalScope .async { createTempFile(inputStream) }
2323
24- internal fun createTempFile (bytes : ByteArray ): File = createTempFile(ByteArrayInputStream (bytes))
24+ internal fun createTempFile (bytes : ByteArray ): File ? =
25+ bytes.takeIf { it.isNotEmpty() }?.let { createTempFile(ByteArrayInputStream (it)) }
2526
26- internal fun createTempFile (inputStream : InputStream ): File = inputStream.use {
27+ internal fun createTempFile (inputStream : InputStream ): File ? = inputStream. takeIf { it.available() > 0 }? .use {
2728 val outputTempFilePath = " $tempDirectory /$randomName "
2829 Files .copy(it, Paths .get(outputTempFilePath))
2930
Original file line number Diff line number Diff line change @@ -19,13 +19,17 @@ internal object MediaTypeAsyncDetector {
1919
2020 suspend fun detectAsync (bytes : ByteArray ): Deferred <MediaType ?> {
2121 val file = createTempFileAsync(bytes)
22- return file.await().toPath().detectAsync()
22+ return file.await()? .toPath().detectAsync()
2323 }
2424
2525 suspend fun detectAsync (inputStream : InputStream ): Deferred <MediaType ?> =
26- createTempFileAsync(inputStream).await().toPath().detectAsync()
27-
28- private suspend fun Path.detectAsync () =
29- GlobalScope .async { mimeTypeDetector.detectMimeTypeAsync(this @detectAsync).await().parseMediaType() }
26+ createTempFileAsync(inputStream).await()?.toPath().detectAsync()
27+
28+ private suspend fun Path?.detectAsync () =
29+ GlobalScope .async {
30+ this @detectAsync?.let {
31+ mimeTypeDetector.detectMimeTypeAsync(it).await().parseMediaType()
32+ }
33+ }
3034
3135}
Original file line number Diff line number Diff line change @@ -24,8 +24,8 @@ internal object MediaTypeSyncDetector {
2424 }
2525 }
2626
27- fun detect (file : File ): MediaType ? {
28- return parseMediaType(file)
27+ fun detect (file : File ? ): MediaType ? {
28+ return file?. let { parseMediaType(it) }
2929 }
3030
3131 private fun parseMediaType (file : File ): MediaType ? = mimeTypeDetector.detectMimeType(file)?.parseMediaType()
You can’t perform that action at this time.
0 commit comments