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