Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ class SpotlessConventionPlugin : Plugin<Project> {
target("**/*.kt")
targetExclude(
"**/build/**/*.kt", // Build directory
"**/org/openapitools/client/**/*.kt" // OpenAPI generated code
"**/generated/**" // OpenAPI generated code
)
ktlint()
.editorConfigOverride(
Expand All @@ -28,7 +28,7 @@ class SpotlessConventionPlugin : Plugin<Project> {
}
format("openapiGenerated") {
target("**/*.kt")
targetExclude("**/build/**/*.kt")
targetExclude("**/build/**/*.kt", "**/generated/**")
trimTrailingWhitespace()
endWithNewline()
licenseHeaderFile(rootProject.file("$rootDir/spotless/copyright.kt"),
Expand Down
18 changes: 12 additions & 6 deletions generate_openapi_v2.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,17 @@ set -e
REPO_URL="[email protected]:GetStream/chat.git"
REFERENCE_TYPE="branch"
REFERENCE_VALUE="feature/rahullohra/kotlin_open_api_generator"
API_SERVICE_CLASS_NAME="ApiService"
MODEL_PACKAGE="org.openapitools.autogenerated.client.models"
API_SERVICE_PACKAGE="org.openapitools.autogenerated.client.apis"
API_SERVICE_CLASS_NAME="ProductvideoApi"
MODEL_PACKAGE="io.getstream.android.video.generated.models"
API_SERVICE_PACKAGE="io.getstream.android.video.generated.apis"
MODEL_DIR="models"
API_SERVICE_DIR="apis"
MOSHI_ADAPTER_DIR="infrastructure"
MOSHI_ADAPTER_PACKAGE="org.openapitools.autogenerated.client.infrastructure"
CLASSES_TO_SKIP="PrivacySettingsResponse,PrivacySettings"
MOSHI_ADAPTER_PACKAGE="io.getstream.android.video.generated.infrastructure"
CLASSES_TO_SKIP="PrivacySettingsResponse,PrivacySettings,StopRTMPBroadcastsRequest"
ANDROID_SDK="video"
KEEP_CLASSES="WSAuthMessageRequest.kt"
OUTPUT_CLIENT_PATH="./stream-video-android-core/src/main/kotlin/org/openapitools/client"
OUTPUT_CLIENT_PATH="./stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/"

# Parse key-value arguments
for arg in "$@"; do
Expand Down Expand Up @@ -76,6 +77,10 @@ for arg in "$@"; do
CLASSES_TO_SKIP="${arg#*=}"
shift
;;
--androidSdk=*)
ANDROID_SDK="${arg#*=}"
shift
;;
--keep-classes=*)
KEEP_CLASSES="${arg#*=}"
shift
Expand Down Expand Up @@ -194,6 +199,7 @@ go run ./cmd/chat-manager openapi generate-client \
--moshi-adapters-dir "$MOSHI_ADAPTER_DIR" \
--moshi-adapters-package "$MOSHI_ADAPTER_PACKAGE" \
--classes-to-skip "$CLASSES_TO_SKIP" \
--androidSdk "$ANDROID_SDK" \
--output "$OUTPUT_CLIENT_ABSOLUTE_PATH"

echo "👉 Your autogenerated files are available under $OUTPUT_CLIENT_ABSOLUTE_PATH"
Expand Down
12 changes: 7 additions & 5 deletions scripts/open-api-code-gen.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,23 @@ tasks.register<Exec>("generateOpenApiClient") {

val repoUrl = project.findProperty("repoUrl") as? String ?: "[email protected]:GetStream/chat.git"
val refType = project.findProperty("refType") as? String ?: "branch"
val refValue = project.findProperty("refValue") as? String ?: "feature/rahullohra/kotlin_open_api_generator"
val refValue = project.findProperty("refValue") as? String ?: "feature/rahullohra/master_feeds_kotlin_open_api_generator-v2"

val modelPackageName = project.findProperty("modelPackage") as? String ?: "org.openapitools.client.models"
val modelPackageName = project.findProperty("modelPackage") as? String ?: "io.getstream.android.video.generated.models"
val modelsDir = project.findProperty("modelsDir") as? String ?: "models"

val apiServicePackageName = project.findProperty("apiServicePackage") as? String ?: "org.openapitools.client.apis"
val apiServicePackageName = project.findProperty("apiServicePackage") as? String ?: "io.getstream.android.video.generated.apis"
val apiServiceClassName = project.findProperty("apiServiceClassName") as? String ?: "ProductvideoApi"
val apiServiceDir = project.findProperty("apiServiceDir") as? String ?: "apis"

val moshiAdaptersDir = project.findProperty("moshiAdaptersDir") as? String ?: "infrastructure"
val moshiAdapterPackage = project.findProperty("moshiAdapterPackageName") as? String ?: "org.openapitools.client.infrastructure"
val moshiAdapterPackage = project.findProperty("moshiAdapterPackageName") as? String ?: "io.getstream.android.video.generated.infrastructure"

val classesToSkip = project.findProperty("classesToSkip") as? String ?: "PrivacySettingsResponse,PrivacySettings,StopRTMPBroadcastsRequest"
val androidSdk = "video"

// val outputSpec = project.findProperty("outputSpec") as? String ?: "./releases/video-openapi-clientside"
val outputClient = project.findProperty("outputClient") as? String ?: "stream-video-android-core/src/main/kotlin/org/openapitools/client/v3"
val outputClient = project.findProperty("outputClient") as? String ?: "stream-video-android-core/src/main/kotlin/io/getstream/android/video/generated/"
val keepClasses = project.findProperty("keepClasses") as? String ?: "WSAuthMessageRequest.kt"
val buildDir = project.layout.buildDirectory.asFile.get()

Expand Down Expand Up @@ -56,6 +57,7 @@ tasks.register<Exec>("generateOpenApiClient") {
"--moshi-adapters-dir=$moshiAdaptersDir",
"--moshi-adapters-package-name=$moshiAdapterPackage",
"--classes-to-skip=$classesToSkip",
"--androidSdk=$androidSdk",
"--keep-classes=$keepClasses",
"--output-client=$outputClient",
)
Expand Down
Loading