Skip to content

Commit 7592163

Browse files
feat: integrate new oauth changes
1 parent 4371b76 commit 7592163

20 files changed

+207
-305
lines changed

.editorconfig

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
2+
# Configuration file for EditorConfig: http://editorconfig.org
3+
root = true
4+
5+
[*]
6+
charset = utf-8
7+
end_of_line = lf
8+
indent_style = space
9+
indent_size = 4
10+
insert_final_newline = true
11+
trim_trailing_whitespace = true
12+
13+
# space indentation for JSON and YML
14+
[*.{json,json5,yml,yaml}]
15+
indent_size = 2
16+
17+
[*.kt]
18+
ktlint_standard_enum-entry-name-case = disabled

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
.gradle
2+
.idea
3+
24
build/
35
!gradle/wrapper/gradle-wrapper.jar
46
!**/src/main/**/build/

build.gradle.kts

Lines changed: 45 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,74 @@
11
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
2+
import org.jetbrains.kotlin.gradle.plugin.KotlinBasePluginWrapper
3+
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
24
import java.time.Duration
35

46
plugins {
5-
kotlin("jvm") version "2.1.10"
6-
id("signing")
7-
id("maven-publish")
7+
id("java")
8+
id("org.jetbrains.kotlin.jvm") version "2.1.10"
89
id("org.jlleitschuh.gradle.ktlint") version "12.1.2"
910
id("io.github.gradle-nexus.publish-plugin") version "2.0.0"
1011
}
1112

12-
group = "com.expediagroup.sdk"
13-
version = "1.0.0-SNAPSHOT"
13+
group = project.property("GROUP_ID") as String
1414

15-
repositories {
16-
mavenCentral()
17-
gradlePluginPortal()
18-
maven {
19-
url = uri("https://oss.sonatype.org/content/repositories/snapshots/")
15+
apply("gradle-tasks/specs.gradle.kts")
16+
17+
allprojects {
18+
repositories {
19+
mavenCentral()
20+
maven {
21+
url = uri("https://oss.sonatype.org/content/repositories/snapshots/")
22+
}
2023
}
2124
}
2225

2326
subprojects {
24-
apply(plugin = "signing")
25-
apply(plugin = "maven-publish")
26-
apply(plugin = "org.jlleitschuh.gradle.ktlint")
27+
apply(plugin = "java")
2728
apply(plugin = "org.jetbrains.kotlin.jvm")
29+
apply(plugin = "org.jlleitschuh.gradle.ktlint")
2830

29-
repositories {
30-
mavenCentral()
31-
gradlePluginPortal()
32-
maven {
33-
url = uri("https://oss.sonatype.org/content/repositories/snapshots/")
31+
plugins.withId("org.jetbrains.kotlin.jvm") {
32+
kotlin {
33+
jvmToolchain(8)
3434
}
3535
}
3636

37-
kotlin {
38-
jvmToolchain(21)
39-
target {
37+
plugins.withType<KotlinBasePluginWrapper>().configureEach {
38+
tasks.withType<KotlinCompile>().configureEach {
4039
compilerOptions {
41-
jvmTarget = JvmTarget.JVM_1_8
40+
jvmTarget.set(JvmTarget.JVM_1_8)
4241
}
4342
}
4443
}
4544

4645
java {
46+
withSourcesJar()
47+
withJavadocJar()
48+
4749
sourceCompatibility = JavaVersion.VERSION_1_8
4850
targetCompatibility = JavaVersion.VERSION_1_8
51+
52+
// Gradle 7+ Java toolchain approach (also sets 1.8)
53+
toolchain {
54+
languageVersion.set(JavaLanguageVersion.of(8))
55+
}
56+
}
57+
58+
ktlint {
59+
debug.set(true)
60+
version.set("1.5.0")
61+
verbose.set(true)
62+
63+
additionalEditorconfig.set(
64+
mapOf(
65+
"max_line_length" to "200",
66+
"indent_style" to "space",
67+
"indent_size" to "4",
68+
"insert_final_newline" to "true",
69+
"end_of_line" to "lf",
70+
),
71+
)
4972
}
5073
}
5174

@@ -62,9 +85,3 @@ nexusPublishing {
6285
delayBetween.set(Duration.ofMillis(5000))
6386
}
6487
}
65-
66-
kotlin {
67-
jvmToolchain(21)
68-
}
69-
70-
apply("gradle-tasks/specs.gradle.kts")

buildSrc/build.gradle.kts

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
1-
repositories {
2-
mavenCentral()
3-
maven {
4-
url = uri("https://oss.sonatype.org/content/repositories/snapshots/")
5-
}
6-
}
7-
81
plugins {
92
`kotlin-dsl`
103
}
114

5+
repositories {
6+
mavenCentral()
7+
}
8+
129
dependencies {
1310
api("org.openapitools:openapi-generator:7.11.0")
1411
implementation("com.samskivert:jmustache:1.15")

generator/build.gradle.kts

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,26 +2,13 @@ import com.expediagroup.sdk.xap.generator.mustache.AllowedMediaTypesLambda
22
import org.openapitools.codegen.CodegenConstants
33

44
plugins {
5-
`kotlin-dsl`
6-
kotlin("jvm") version "2.1.10"
75
id("com.expediagroup.sdk.openapigenerator") version "0.0.3-beta-SNAPSHOT"
8-
id("org.jlleitschuh.gradle.ktlint") version "12.1.2"
96
}
107

11-
group = "com.expediagroup.sdk"
12-
version = "1.0-SNAPSHOT"
8+
group = project.property("GROUP_ID") as String
139

1410
dependencies {
1511
api("org.openapitools:openapi-generator:7.11.0")
16-
testImplementation(kotlin("test"))
17-
}
18-
19-
tasks.test {
20-
useJUnitPlatform()
21-
}
22-
23-
kotlin {
24-
jvmToolchain(8)
2512
}
2613

2714
openApiGenerate {
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import org.gradle.language.jvm.tasks.ProcessResources
2+
3+
// Retrieve properties from the Gradle project
4+
val artifactName = project.property("ARTIFACT_NAME") as String
5+
val version = project.property("VERSION") as String
6+
val groupId = project.property("GROUP_ID") as String
7+
8+
// Prepare the content for sdk.properties
9+
val sdkPropertiesContent = """
10+
artifactName=$artifactName
11+
version=$version
12+
groupId=$groupId
13+
""".trimIndent()
14+
15+
// Configure the processResources task to include sdk.properties
16+
tasks.named<ProcessResources>("processResources") {
17+
from(project.resources.text.fromString(sdkPropertiesContent)) {
18+
rename { "sdk.properties" }
19+
}
20+
}

xap-sdk/build.gradle.kts

Lines changed: 4 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,61 +1,19 @@
1-
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
2-
31
plugins {
4-
kotlin("jvm") version "2.1.10"
5-
id("java")
62
id("signing")
73
id("maven-publish")
8-
id("org.jlleitschuh.gradle.ktlint") version "12.1.2"
9-
}
10-
11-
repositories {
12-
mavenCentral()
13-
maven {
14-
url = uri("https://oss.sonatype.org/content/repositories/snapshots/")
15-
}
164
}
175

186
dependencies {
197
testImplementation(kotlin("test"))
20-
api("com.expediagroup:expediagroup-sdk-rest:0.0.1-beta-SNAPSHOT")
21-
implementation("com.expediagroup:expediagroup-sdk-transport-okhttp:0.0.1-beta-SNAPSHOT")
8+
api("com.expediagroup:expediagroup-sdk-rest:0.0.4-alpha-SNAPSHOT")
9+
implementation("com.expediagroup:expediagroup-sdk-transport-okhttp:0.0.4-alpha")
2210
implementation("com.fasterxml.jackson.core:jackson-databind:2.18.2")
2311
implementation("com.fasterxml.jackson.module:jackson-module-kotlin:2.18.2")
24-
implementation("org.slf4j:slf4j-simple:2.0.16")
2512
runtimeOnly("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.18.2")
26-
}
27-
28-
tasks.test {
29-
useJUnitPlatform()
30-
}
31-
32-
kotlin {
33-
jvmToolchain(21)
34-
compilerOptions.jvmTarget.set(JvmTarget.JVM_1_8)
35-
}
36-
37-
java {
38-
withSourcesJar()
39-
targetCompatibility = JavaVersion.VERSION_1_8
40-
sourceCompatibility = JavaVersion.VERSION_1_8
41-
}
42-
43-
ktlint {
44-
debug = true
45-
version = "1.5.0"
46-
verbose = true
47-
48-
additionalEditorconfig =
49-
mapOf(
50-
"max_line_length" to "200",
51-
"indent_style" to "space",
52-
"indent_size" to "4",
53-
"insert_final_newline" to "true",
54-
"end_of_line" to "lf",
55-
"ktlint_standard_enum-entry-name-case" to "disabled",
56-
)
13+
implementation("org.slf4j:slf4j-api:2.0.17")
5714
}
5815

5916
apply("$rootDir/gradle-tasks/publish.gradle.kts")
6017
apply("$rootDir/gradle-tasks/signing.gradle.kts")
6118
apply("$rootDir/gradle-tasks/snapshot.gradle.kts")
19+
apply("$rootDir/gradle-tasks/sdk-properties.gradle.kts")

xap-sdk/gradle.properties

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
ARTIFACT_NAME=xap-sdk
22
DESCRIPTION=The Expedia API Platform (XAP) SDK
33

4-
# x-release-please-start-version
54
VERSION=2.0.1-alpha-SNAPSHOT
6-
# x-release-please-end

xap-sdk/src/main/kotlin/com/expediagroup/sdk/xap/client/AsyncXapClient.kt

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,29 +5,25 @@ import com.expediagroup.sdk.rest.AsyncRestExecutor
55
import com.expediagroup.sdk.rest.model.Response
66
import com.expediagroup.sdk.rest.trait.operation.JacksonModelOperationResponseBodyTrait
77
import com.expediagroup.sdk.rest.trait.operation.OperationNoResponseBodyTrait
8-
import com.expediagroup.sdk.xap.configuration.ApiEndpoint
98
import com.expediagroup.sdk.xap.configuration.AsyncClientBuilder
109
import com.expediagroup.sdk.xap.configuration.AsyncXapClientConfiguration
11-
import com.expediagroup.sdk.xap.configuration.EndpointProvider
10+
import com.expediagroup.sdk.xap.configuration.Constant.ENDPOINT
1211
import com.expediagroup.sdk.xap.configuration.XAP_OBJECT_MAPPER
1312
import com.expediagroup.sdk.xap.core.AsyncRequestExecutor
1413
import java.util.concurrent.CompletableFuture
1514

1615
/**
1716
* Asynchronous client for XAP API.
1817
*
19-
* @property apiEndpoint The API endpoint for XAP.
2018
* @property restExecutor The executor for handling REST operations.
2119
*/
2220
class AsyncXapClient private constructor(
2321
config: AsyncXapClientConfiguration,
2422
) : AsyncRestClient() {
25-
private val apiEndpoint: ApiEndpoint = EndpointProvider.getXapApiEndpoint(config.environment)
26-
2723
override val restExecutor: AsyncRestExecutor =
2824
AsyncRestExecutor(
2925
mapper = XAP_OBJECT_MAPPER,
30-
serverUrl = apiEndpoint.endpoint,
26+
serverUrl = ENDPOINT,
3127
requestExecutor = AsyncRequestExecutor(configuration = config),
3228
)
3329

xap-sdk/src/main/kotlin/com/expediagroup/sdk/xap/client/XapClient.kt

Lines changed: 3 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,39 +5,25 @@ import com.expediagroup.sdk.rest.RestExecutor
55
import com.expediagroup.sdk.rest.model.Response
66
import com.expediagroup.sdk.rest.trait.operation.JacksonModelOperationResponseBodyTrait
77
import com.expediagroup.sdk.rest.trait.operation.OperationNoResponseBodyTrait
8-
import com.expediagroup.sdk.xap.configuration.ApiEndpoint
98
import com.expediagroup.sdk.xap.configuration.ClientBuilder
10-
import com.expediagroup.sdk.xap.configuration.ClientEnvironment
11-
import com.expediagroup.sdk.xap.configuration.EndpointProvider
9+
import com.expediagroup.sdk.xap.configuration.Constant.ENDPOINT
1210
import com.expediagroup.sdk.xap.configuration.XAP_OBJECT_MAPPER
1311
import com.expediagroup.sdk.xap.configuration.XapClientConfiguration
1412
import com.expediagroup.sdk.xap.core.RequestExecutor
1513

1614
/**
1715
* Synchronous client for XAP API.
1816
*
19-
* @property apiEndpoint The API endpoint for XAP.
2017
* @property restExecutor The executor for handling REST operations.
2118
*/
2219
class XapClient private constructor(
2320
config: XapClientConfiguration,
2421
) : RestClient() {
25-
private val apiEndpoint: ApiEndpoint = EndpointProvider.getXapApiEndpoint(config.environment)
26-
2722
override val restExecutor: RestExecutor =
2823
RestExecutor(
2924
mapper = XAP_OBJECT_MAPPER,
30-
serverUrl = apiEndpoint.endpoint,
31-
requestExecutor =
32-
RequestExecutor(
33-
configuration =
34-
XapClientConfiguration(
35-
key = config.key,
36-
secret = config.secret,
37-
environment = ClientEnvironment.PROD,
38-
transport = config.transport,
39-
),
40-
),
25+
serverUrl = ENDPOINT,
26+
requestExecutor = RequestExecutor(config),
4127
)
4228

4329
/**

0 commit comments

Comments
 (0)