Skip to content

Commit

Permalink
Update event stream generator and refactor Ddb util class
Browse files Browse the repository at this point in the history
  • Loading branch information
peterrsongg committed Nov 26, 2024
1 parent 70f4cec commit 1ff0134
Show file tree
Hide file tree
Showing 6 changed files with 318 additions and 196 deletions.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -47,11 +47,30 @@
<#
foreach(var member in this.Structure.Members)
{
if(member.ModelShape.IsEvent)
if(member.ModelShape.IsEvent)
{
if (protocol == "Json")
{
#>
{"<#=member.PropertyName#>", payload => new <#=member.DetermineType()#>Unmarshaller().Unmarshall(EventStreamUtils.ConvertMessageTo<#=protocol#>Context(payload))},
{"<#=member.PropertyName#>", payload =>
{
var context = EventStreamUtils.ConvertMessageTo<#=protocol#>Context(payload);
var reader = new StreamingUtf8JsonReader(context.Stream);
return new <#=member.DetermineType()#>Unmarshaller().Unmarshall(context, ref reader);
}
},
<#
}
else if (protocol == "Xml")
{
#>
{"<#=member.PropertyName#>", payload => new <#=member.DetermineType()#>Unmarshaller().Unmarshall(context);},
<#
}
else
{
throw new NotImplementedException("The given protocol is not supported");
}
}
}
#>
Expand All @@ -67,9 +86,26 @@
{
if(member.ModelShape.IsException)
{
if (protocol == "Json")
{
#>
{"<#=member.PropertyName#>", payload =>
{
var context = EventStreamUtils.ConvertMessageTo<#=protocol#>Context(payload);
var reader = new StreamingUtf8JsonReader(context.Stream);
return new <#=this.Config.ClassName#>EventStreamException(Encoding.UTF8.GetString(payload.Payload), new <#=member.ModelShape#>Unmarshaller().Unmarshall(context, ref reader));
}
},
<#
}
else if (protocol == "Xml")
{
#>
{ "<#=member.PropertyName#>", payload => new <#=this.Config.ClassName#>EventStreamException(Encoding.UTF8.GetString(payload.Payload), new <#=member.ModelShape#>Unmarshaller().Unmarshall(EventStreamUtils.ConvertMessageTo<#=protocol#>Context(payload))) },
<#
}
else
throw new NotImplementedException("The given protocol is not supported");
}
}
#>
Expand Down
Loading

0 comments on commit 1ff0134

Please sign in to comment.