yasithdev opened a new pull request, #197:
URL: https://github.com/apache/airavata-portals/pull/197

   Part of the Track D proto-native serializer rewrite (retire the interim 
Thrift-type adapter layer, family by family, REST contract byte-for-byte 
preserved).
   
   ## What
   `NotificationSerializer` and `ParserSerializer` (+ nested 
`ParserInput`/`ParserOutput`) now read the gRPC `Notification` / `Parser` 
protobuf directly.
   
   - **Notification**: `priority` renders as the member name; `showInDashboard` 
moves from a proto `setattr` (impossible on a protobuf message) to a 
`SerializerMethodField` reading `NotificationExtension`; create/update build 
the proto directly. `context_processors.get_notifications` (which consumed the 
*adapter* output, not the serializer) is rewritten to read proto fields 
directly — `priority` bridged to the Thrift int the dashboard expects, 
byte-for-byte.
   - **Parser**: `type` (IOType) renders as the Thrift int via the new 
`ProtoEnumIntField` (+ `proto_enum_int_field` factory); nested inputs/outputs 
round-trip on read and write.
   - Repoint `ManageNotificationViewSet` + `ParserViewSet` to pass protobuf 
through — drops `grpc_adapters`/`grpc_requests` notification/parser funcs + the 
Thrift `Notification`/`NotificationPriority`/`IOType` imports.
   
   ## Validation
   - Byte-for-byte (notification full/low, parser w/ nested I/O, the 
notifications context processor) vs the old adapter+serializer `.data`.
   - Write paths (create/update incl. nested + enum bridges) produce equivalent 
protos.
   - `manage.py check` green; api test failures unchanged vs `origin/main`.


-- 
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