Skip to content

Commit 8bd19c4

Browse files
committed
refactor: simplify reader creation
1 parent e7589ea commit 8bd19c4

File tree

2 files changed

+10
-17
lines changed

2 files changed

+10
-17
lines changed

src/main/kotlin/com/github/lppedd/cc/configuration/CCDefaultTokensService.kt

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,13 @@ import com.intellij.openapi.project.Project
1010
import com.intellij.openapi.vfs.LocalFileSystem
1111
import org.codehaus.jettison.json.JSONArray
1212
import org.codehaus.jettison.json.JSONObject
13-
import java.io.BufferedReader
1413
import java.io.IOException
15-
import java.io.InputStreamReader
1614
import java.io.Reader
1715
import java.nio.charset.StandardCharsets.UTF_8
1816
import java.nio.file.FileSystems
1917
import java.nio.file.Files
2018
import java.nio.file.NoSuchFileException
19+
import kotlin.io.path.bufferedReader
2120

2221
/**
2322
* Manages default commit types and scopes.
@@ -36,9 +35,11 @@ internal class CCDefaultTokensService(private val project: Project) {
3635
* JSON Schema used to validate the default commit types and scopes JSON file.
3736
*/
3837
private val defaultsSchema: Schema by lazy {
39-
val schemaInputStream = getResourceAsStream("/defaults/${CC.Tokens.SchemaFile}")
40-
val schemaReader = BufferedReader(InputStreamReader(schemaInputStream, UTF_8))
41-
val schemaJson = JsonParser(schemaReader).parse()
38+
val bufferedReader = getResourceAsStream("/defaults/${CC.Tokens.SchemaFile}").bufferedReader()
39+
val schemaJson = bufferedReader.use {
40+
JsonParser(bufferedReader).parse()
41+
}
42+
4243
SchemaLoader(schemaJson).load()
4344
}
4445

@@ -48,9 +49,7 @@ internal class CCDefaultTokensService(private val project: Project) {
4849
* @throws SchemaValidationException When the JSON object does not respect the schema
4950
*/
5051
private val builtInDefaultTokens: JsonDefaults by lazy {
51-
val inputStream = getResourceAsStream("/defaults/${CC.Tokens.File}")
52-
val reader = BufferedReader(InputStreamReader(inputStream, UTF_8))
53-
val jsonStr = reader.use(Reader::readText)
52+
val jsonStr = getResourceAsStream("/defaults/${CC.Tokens.File}").bufferedReader().use(Reader::readText)
5453
parseJsonStr(jsonStr)
5554
}
5655

@@ -77,7 +76,7 @@ internal class CCDefaultTokensService(private val project: Project) {
7776
throw NoSuchFileException(filePath)
7877
}
7978

80-
val jsonStr = Files.newBufferedReader(path, UTF_8).use(Reader::readText)
79+
val jsonStr = path.bufferedReader().use(Reader::readText)
8180
defaultsSchema.validateJson(jsonStr)
8281
}
8382

@@ -150,7 +149,7 @@ internal class CCDefaultTokensService(private val project: Project) {
150149
*/
151150
private fun readDefaultsFromFile(filePath: String): JsonDefaults {
152151
val path = FileSystems.getDefault().getPath(filePath)
153-
val jsonStr = Files.newBufferedReader(path, UTF_8).use(Reader::readText)
152+
val jsonStr = path.bufferedReader().use(Reader::readText)
154153
return parseJsonStr(jsonStr)
155154
}
156155

src/main/kotlin/com/github/lppedd/cc/configuration/component/DefaultTokensFileExportPanel.kt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,7 @@ import com.intellij.uiDesigner.core.GridConstraints
1919
import com.intellij.uiDesigner.core.GridLayoutManager
2020
import com.intellij.util.ui.JBUI
2121
import com.intellij.util.ui.UIUtil
22-
import java.io.BufferedReader
23-
import java.io.InputStreamReader
2422
import java.io.Reader
25-
import java.nio.charset.StandardCharsets.UTF_8
2623
import javax.swing.JPanel
2724

2825
/**
@@ -74,10 +71,7 @@ internal class DefaultTokensFileExportPanel
7471
}
7572

7673
// When exporting to a file, we also need to add the JSON schema reference
77-
val inputStream = getResourceAsStream("/defaults/${CC.Tokens.File}")
78-
val reader = BufferedReader(InputStreamReader(inputStream, UTF_8))
79-
val jsonStr = reader.use(Reader::readText)
80-
74+
val jsonStr = getResourceAsStream("/defaults/${CC.Tokens.File}").bufferedReader().use(Reader::readText)
8175
val pluginVersion = getPluginVersion()
8276
val schemaPath = "src/main/resources/defaults/conventionalcommit.schema.json"
8377
val schemaUrl = "https://github.com/lppedd/idea-conventional-commit/raw/${pluginVersion}/$schemaPath\""

0 commit comments

Comments
 (0)