Skip to content

Commit 1c1ea1b

Browse files
committed
add "package" option (#115)
1 parent a126aa9 commit 1c1ea1b

File tree

4 files changed

+10
-0
lines changed

4 files changed

+10
-0
lines changed

openapi-processor-core/src/main/kotlin/io/openapiprocessor/core/converter/ApiOptions.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ class ApiOptions: MappingSettings {
3434
* - models => "${packageName}.model"
3535
*/
3636
var packageName = "io.openapiprocessor.generated"
37+
var packageNameFromPath = false
3738

3839
var packageNameApi : String = "api"
3940
var packageNameModel: String = "model"

openapi-processor-core/src/main/kotlin/io/openapiprocessor/core/converter/OptionsConverter.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class OptionsConverter(private val checkObsoleteProcessorOptions: Boolean = fals
6565
}
6666

6767
options.packageName = mapping.options.packageName
68+
options.packageNameFromPath = mapping.options.packageNameFromPath
6869
options.modelType = mapping.options.modelType
6970
options.modelAccessors = mapping.options.modelAccessors
7071
options.enumType = mapping.options.enumType

openapi-processor-core/src/main/kotlin/io/openapiprocessor/core/processor/mapping/v2/Options.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,11 @@ data class Options(
2222
*/
2323
val packageName: String = "io.openapiprocessor.generated",
2424

25+
/**
26+
* enable/disable location based package names (optional)
27+
*/
28+
val packageNameFromPath: Boolean = false,
29+
2530
/**
2631
* enable/disable clearing of targetDir (optional).
2732
*/

openapi-processor-core/src/test/kotlin/io/openapiprocessor/core/converter/OptionsConverterSpec.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ class OptionsConverterSpec: StringSpec({
2828
options.targetDirOptions.layout shouldBe TargetDirLayout.CLASSIC
2929

3030
options.packageName shouldBe "io.openapiprocessor.generated"
31+
options.packageNameFromPath shouldBe false
3132
options.beanValidation shouldBe false
3233
options.javadoc shouldBe false
3334
options.modelType shouldBe "default"
@@ -109,6 +110,7 @@ class OptionsConverterSpec: StringSpec({
109110
target-dir:
110111
layout: standard
111112
package-name: generated
113+
package-name-from-path: true
112114
model-name-suffix: Suffix
113115
model-type: record
114116
model-accessors: false
@@ -130,6 +132,7 @@ class OptionsConverterSpec: StringSpec({
130132
options.targetDirOptions.clear.shouldBeFalse()
131133
options.targetDirOptions.layout.isStandard().shouldBeTrue()
132134
options.packageName shouldBe "generated"
135+
options.packageNameFromPath shouldBe true
133136
options.modelNameSuffix shouldBe "Suffix"
134137
options.modelType shouldBe "record"
135138
options.modelAccessors shouldBe false

0 commit comments

Comments
 (0)