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]

Reply via email to