yasithdev opened a new pull request, #165: URL: https://github.com/apache/airavata-portals/pull/165
## Summary Migrate `ApplicationInterfaceViewSet` reads from the Thrift client to the gRPC research facade — the first **nested** read family in Track D. Reuses the existing serializer via a recursive protobuf→Thrift-attribute adapter, so the portal's REST contract is unchanged. - `get_list`, `get_instance`, and the `compute_resources` action now call `request.airavata.research.get_all_application_interfaces` / `get_application_interface` / `get_available_app_interface_compute_resources`. - Write actions (register/update/delete) stay on Thrift pending D3. - New `application_interface` adapter **recursively** adapts the repeated `applicationInputs` (`InputDataObjectType`) and `applicationOutputs` (`OutputDataObjectType`) sub-messages. - **Enum-by-name bridge (reused helper):** `DataType` has the same proto/Thrift integer mismatch as `SummaryType` (proto `STRING=1` vs Thrift `STRING=0`), so the nested adapters convert it by NAME via `_thrift_enum` and the serializer's `EnumChoiceField(DataType)` labels it correctly. - `metaData` (a JSON string) maps empty → `None` so `StoredJSONField` renders `null` exactly as it did on Thrift. - `userHasWriteAccess` here is gateway-admin-based (not sharing) → unchanged. ## Test plan - `manage.py check` clean. - Empty list returns 200; a seeded interface round-trips (list + detail, 200) against the live backend. - Offline serializer render with real **nested** protobuf confirms inputs/outputs adapt with all fields, `DataType` labels by name (URI/STDOUT), `metaData` parses to an object (input) / `null` (empty output), and `url`/`queueSettingsCalculatorId` match the prior contract. - Note: the dev backend does not persist interface inputs/outputs/module links on registration, so nested live data was validated via the offline render against real protobuf rather than a live round-trip. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
