()
| 2257 | // ── Main entry point ────────────────────────────────────────────────────────── |
| 2258 | |
| 2259 | async function main(): Promise<void> { |
| 2260 | console.log("🚀 Java SDK code generator"); |
| 2261 | console.log("============================"); |
| 2262 | |
| 2263 | // Clean the generated output directory to remove orphaned files from previous runs |
| 2264 | const generatedOutputDir = path.join(REPO_ROOT, "src/generated/java/com/github/copilot/generated"); |
| 2265 | console.log(`🧹 Cleaning output directory: ${generatedOutputDir}`); |
| 2266 | await fs.rm(generatedOutputDir, { recursive: true, force: true }); |
| 2267 | await fs.mkdir(generatedOutputDir, { recursive: true }); |
| 2268 | |
| 2269 | const sessionEventsSchemaPath = await getSessionEventsSchemaPath(); |
| 2270 | console.log(`📄 Session events schema: ${sessionEventsSchemaPath}`); |
| 2271 | const apiSchemaPath = await getApiSchemaPath(); |
| 2272 | console.log(`📄 API schema: ${apiSchemaPath}`); |
| 2273 | |
| 2274 | await generateSessionEvents(sessionEventsSchemaPath); |
| 2275 | await generateRpcTypes(apiSchemaPath); |
| 2276 | await generateRpcWrappers(apiSchemaPath); |
| 2277 | |
| 2278 | // Generate package-info.java for each generated package |
| 2279 | const generatedPkgDir = `src/generated/java/com/github/copilot/generated`; |
| 2280 | const rpcPkgDir = `src/generated/java/com/github/copilot/generated/rpc`; |
| 2281 | await generateGeneratedPackageInfo(generatedPkgDir); |
| 2282 | await generateRpcPackageInfo(rpcPkgDir); |
| 2283 | |
| 2284 | console.log("\n✅ Java code generation complete!"); |
| 2285 | } |
| 2286 | |
| 2287 | main().catch((err) => { |
| 2288 | console.error("❌ Code generation failed:", err); |
no test coverage detected
searching dependent graphs…