[ 
https://issues.apache.org/jira/browse/AVRO-3001?focusedWorklogId=804274&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-804274
 ]

ASF GitHub Bot logged work on AVRO-3001:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 29/Aug/22 07:28
            Start Date: 29/Aug/22 07:28
    Worklog Time Spent: 10m 
      Work Description: martin-g commented on PR #1833:
URL: https://github.com/apache/avro/pull/1833#issuecomment-1229887817

   > My biggest concern is that user are not able inject own custom logic 
without changing library. If you add more interfaces and use interface instead 
of concert classes as dependency, it allows users who want benefit from 
dependency injection use it.
   
   As far as I understand the code the encoder/decoder code does not use 
`static` methods/fields and it is easily extendable/overrideable.
   
   `Symbol` class has `static`s indeed! Although they could be explained as an 
implementation detail of the JsonDecoder I agree that it would be better if 
their usage is reduced as much as possible. For example adding unit tests for 
each new class (like JsonDecoderTests.cs, JsonEncoderTests.cs, Symbol.cs) would 
show us what is well designed and extendable, and what is problematic due to 
the usage of `static`s.
   At the moment we have only JsonCodecTests.cs which is rather higher level / 
functional test.
   
   To summarize my review: I think the PR needs more unit tests, especially 
ones testing invalid input: wrong JSON, wrong values for the expected schema, 
etc.




Issue Time Tracking
-------------------

    Worklog Id:     (was: 804274)
    Time Spent: 9h 50m  (was: 9h 40m)

> JsonEncode Decode support for C#
> --------------------------------
>
>                 Key: AVRO-3001
>                 URL: https://issues.apache.org/jira/browse/AVRO-3001
>             Project: Apache Avro
>          Issue Type: Improvement
>          Components: csharp
>    Affects Versions: 1.10.0, 1.11.0
>            Reporter: Krishnan Unni
>            Assignee: Robert Yokota
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.12.0
>
>          Time Spent: 9h 50m
>  Remaining Estimate: 0h
>
> The C# library for avro currently supports only the Binary encoding and also 
> with compile time types (Generic support only). As part of a project I am 
> doing I need to validate the avro schema against the incoming json data on 
> the fly without a predefined type (generated class). So basically comparing 
> an avro schema (string/json representation) against a raw json string. It is 
> possible with the Java library since it supports both non generic types and 
> streams as well as json encoding. With C# currently this is not possible. Is 
> there a plan to extend the C# library to provide these features? If yes, is 
> there a timeline? If not is there any alternative to achieve this? 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to