MCPcopy Index your code
hub / github.com/github/copilot-sdk / generateSessionEvents

Function generateSessionEvents

java/scripts/codegen/java.ts:731–756  ·  view source on GitHub ↗
(schemaPath: string)

Source from the content-addressed store, hash-verified

729}
730
731async function generateSessionEvents(schemaPath: string): Promise<void> {
732 console.log("\n📋 Generating session event classes...");
733 const schemaContent = await fs.readFile(schemaPath, "utf-8");
734 const schema = normalizeSchemaBrandCasing(JSON.parse(schemaContent) as JSONSchema7);
735
736 // Set module-level definitions for $ref resolution
737 currentDefinitions = (schema.definitions ?? {}) as Record<string, JSONSchema7>;
738 pendingStandaloneTypes.clear();
739
740 const variants = extractEventVariants(schema);
741 const packageName = "com.github.copilot.generated";
742 const packageDir = `src/generated/java/com/github/copilot/generated`;
743
744 // Generate base SessionEvent class
745 await generateSessionEventBaseClass(variants, packageName, packageDir);
746
747 // Generate one class file per event variant
748 for (const variant of variants) {
749 await generateEventVariantClass(variant, packageName, packageDir);
750 }
751
752 // Generate standalone types discovered via $ref resolution
753 await generatePendingStandaloneTypes(packageName, packageDir, GENERATED_FROM_SESSION_EVENTS);
754
755 console.log(`✅ Generated ${variants.length + 1} session event files`);
756}
757
758async function generateSessionEventBaseClass(
759 variants: EventVariant[],

Callers 1

mainFunction · 0.70

Calls 9

parseMethod · 0.80
extractEventVariantsFunction · 0.70
readFileMethod · 0.65
logMethod · 0.45
clearMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…