feat: Add APIMethod asset type with request/response schemas#2337
Open
Tony-Atlan wants to merge 7 commits intomainfrom
Open
feat: Add APIMethod asset type with request/response schemas#2337Tony-Atlan wants to merge 7 commits intomainfrom
Tony-Atlan wants to merge 7 commits intomainfrom
Conversation
Extend the loader to create structured assets from OpenAPI specs: - APIObject per component schema, with APIField children per property - APIMethod per HTTP operation (GET/POST/PUT/PATCH/DELETE) per path - Request/response blobs on APIMethod for display - Structured relationships to APIObject for field-level search - apiMethodResponseCodes map for status code → schema mapping - Nested $ref schemas handled via apiIsObjectReference on APIField All existing APISpec and APIPath behavior is preserved unchanged for backward compatibility. Depends on: APIMethod type in Java SDK (EPD-268, PRDLNCH-5559) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…PIObject Adds the APIMethod asset type to the Java SDK to support per-HTTP-method assets as children of APIPath. Includes request/response blob attributes, structured relationships to APIObject for field-level search, and back-references on APIPath and APIObject. New files: - IAPIMethod.java: interface with field constants and getters - APIMethod.java: full asset class with all attributes and boilerplate - _overlays/APIMethod.java: creator convenience methods Updated files: - IAPIPath.java / APIPath.java: added apiMethods relationship - IAPIObject.java / APIObject.java: added apiMethodsRequestingThis and apiMethodsRespondingWithThis back-references Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The KeywordField constant was missing from the interface, which would cause compilation errors when tests reference APIMethod.API_METHOD_RESPONSE_CODES. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Fix Lombok @Singular annotations for apiMethodsRequestingThis and apiMethodsRespondingWithThis in APIObject.java. Add overrides for conflicting default methods inherited from IAPI and ICatalog interfaces in APIMethod.java. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Phase 3: Create synthetic APIObject + APIField assets for inline request/response schemas that have properties (not just $ref). Primitive/array inline schemas continue as blob-only. Phase 5: Add test assertions for response schema relationships (apiMethodResponseSchemas, apiMethodResponseCodes) and object reference field linking (apiIsObjectReference, apiObjectQualifiedName). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Expand one-liner method overrides to multi-line format per project Spotless/Google Java Format rules. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
IAPIMethod.java,APIMethod.java,_overlays/APIMethod.java) as a child of APIPath with request/response schema relationshipsapiMethods,apiMethodsRequestingThis,apiMethodsRespondingWithThis)components/schemasentry, APIField per schema property, with$refhandling for nested object referencesTickets
Test plan
🤖 Generated with Claude Code