Skip to content

Commit

Permalink
feat: wip
Browse files Browse the repository at this point in the history
  • Loading branch information
finalchild committed Aug 28, 2024
1 parent b1e87a8 commit d6258e4
Show file tree
Hide file tree
Showing 11 changed files with 5,065 additions and 5 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,6 @@

# Ignore Gradle build output directory
build

# schema file
/openapi/portone-v2-openapi.json
13 changes: 13 additions & 0 deletions buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
plugins {
kotlin("jvm") version "2.0.20"
kotlin("plugin.serialization") version "2.0.20"
}

dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.1")
implementation("com.squareup:kotlinpoet-jvm:1.18.1")
}

repositories {
mavenCentral()
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
package io.portone.openapi

import kotlinx.serialization.json.Json
import kotlinx.serialization.json.jsonObject
import org.gradle.api.DefaultTask
import org.gradle.api.file.DirectoryProperty
import org.gradle.api.file.RegularFileProperty
import org.gradle.api.tasks.InputFile
import org.gradle.api.tasks.OutputDirectory
import org.gradle.api.tasks.TaskAction
import java.nio.file.Files

abstract class GenerateSchemaCodeTask : DefaultTask() {
@get:InputFile
abstract val inputFile: RegularFileProperty

@get:OutputDirectory
abstract val outputDirectory: DirectoryProperty

@TaskAction
fun generateSchemaCode() {
val document = Json.parseToJsonElement(Files.readString(inputFile.get().asFile.toPath())).jsonObject
SchemaGenerator(document, listOf(
"/payments",
"/payment-schedules",
"/identity-verifications",
"/billing-keys",
"/cash-receipts",
"/kakaopay",
), outputDirectory.get().asFile.toPath()).generateFiles()
}
}
Loading

0 comments on commit d6258e4

Please sign in to comment.