Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions SysML2.NET.API/Modules/BaseModule.cs
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ protected async Task WriteResultsToResponse(IEnumerable<IData> dataItems, Serial
this.logger.LogDebug("start serializing {DtoTypeName} objects to result Stream", dtoTypeName);

var resultStream = new MemoryStream();
await this.serializer.SerializeAsync(dataItems, serializationModeKind, resultStream, jsonWriterOptions, cancellationToken);
await this.serializer.SerializeAsync(dataItems, serializationModeKind, false, resultStream, jsonWriterOptions, cancellationToken);

this.logger.LogDebug("{DtoTypeName} objects serialized to stream in {Elapsed} [ms]", dtoTypeName, sw.ElapsedMilliseconds);

Expand Down Expand Up @@ -143,7 +143,7 @@ protected async Task WriteResultToResponse(IData dataItem, SerializationModeKind
this.logger.LogDebug("start serializing {DtoTypeName} objects to result Stream", dtoTypeName);

var resultStream = new MemoryStream();
await this.serializer.SerializeAsync(dataItem, serializationModeKind, resultStream, jsonWriterOptions, cancellationToken);
await this.serializer.SerializeAsync(dataItem, serializationModeKind, false, resultStream, jsonWriterOptions, cancellationToken);

this.logger.LogDebug("{DtoTypeName} object serialized to stream in {Elapsed} [ms]", dtoTypeName, sw.ElapsedMilliseconds);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ internal static IAnnotatingElement DeSerialize(JsonElement jsonElement, Serializ
throw new InvalidOperationException($"The AnnotatingElementDeSerializer can only be used to deserialize objects of type IAnnotatingElement, a {@type.GetString()} was provided");
}

IAnnotatingElement dtoInstance = new SysML2.NET.Core.DTO.Root.Annotations.AnnotatingElement();
var dtoInstance = new SysML2.NET.Core.DTO.Root.Annotations.AnnotatingElement();

if (jsonElement.TryGetProperty("@id"u8, out var idProperty))
{
Expand Down Expand Up @@ -102,6 +102,46 @@ internal static IAnnotatingElement DeSerialize(JsonElement jsonElement, Serializ
logger.LogDebug("the aliasIds Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("annotatedElement"u8, out var annotatedElementProperty))
{
foreach (var arrayItem in annotatedElementProperty.EnumerateArray())
{
if (arrayItem.TryGetProperty("@id"u8, out var annotatedElementExternalIdProperty))
{
var propertyValue = annotatedElementExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.annotatedElement.Add(Guid.Parse(propertyValue));
}
}
}
}
else
{
logger.LogDebug("the annotatedElement Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("annotation"u8, out var annotationProperty))
{
foreach (var arrayItem in annotationProperty.EnumerateArray())
{
if (arrayItem.TryGetProperty("@id"u8, out var annotationExternalIdProperty))
{
var propertyValue = annotationExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.annotation.Add(Guid.Parse(propertyValue));
}
}
}
}
else
{
logger.LogDebug("the annotation Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("declaredName"u8, out var declaredNameProperty))
{
dtoInstance.DeclaredName = declaredNameProperty.GetString();
Expand All @@ -120,6 +160,26 @@ internal static IAnnotatingElement DeSerialize(JsonElement jsonElement, Serializ
logger.LogDebug("the declaredShortName Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("documentation"u8, out var documentationProperty))
{
foreach (var arrayItem in documentationProperty.EnumerateArray())
{
if (arrayItem.TryGetProperty("@id"u8, out var documentationExternalIdProperty))
{
var propertyValue = documentationExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.documentation.Add(Guid.Parse(propertyValue));
}
}
}
}
else
{
logger.LogDebug("the documentation Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("elementId"u8, out var elementIdProperty))
{
var propertyValue = elementIdProperty.GetString();
Expand All @@ -146,13 +206,94 @@ internal static IAnnotatingElement DeSerialize(JsonElement jsonElement, Serializ
logger.LogDebug("the isImpliedIncluded Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("isLibraryElement"u8, out var isLibraryElementProperty))
{
if (isLibraryElementProperty.ValueKind != JsonValueKind.Null)
{
dtoInstance.isLibraryElement = isLibraryElementProperty.GetBoolean();
}
}
else
{
logger.LogDebug("the isLibraryElement Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("name"u8, out var nameProperty))
{
dtoInstance.name = nameProperty.GetString();
}
else
{
logger.LogDebug("the name Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("ownedAnnotatingRelationship"u8, out var ownedAnnotatingRelationshipProperty))
{
foreach (var arrayItem in ownedAnnotatingRelationshipProperty.EnumerateArray())
{
if (arrayItem.TryGetProperty("@id"u8, out var ownedAnnotatingRelationshipExternalIdProperty))
{
var propertyValue = ownedAnnotatingRelationshipExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.ownedAnnotatingRelationship.Add(Guid.Parse(propertyValue));
}
}
}
}
else
{
logger.LogDebug("the ownedAnnotatingRelationship Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("ownedAnnotation"u8, out var ownedAnnotationProperty))
{
foreach (var arrayItem in ownedAnnotationProperty.EnumerateArray())
{
if (arrayItem.TryGetProperty("@id"u8, out var ownedAnnotationExternalIdProperty))
{
var propertyValue = ownedAnnotationExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.ownedAnnotation.Add(Guid.Parse(propertyValue));
}
}
}
}
else
{
logger.LogDebug("the ownedAnnotation Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("ownedElement"u8, out var ownedElementProperty))
{
foreach (var arrayItem in ownedElementProperty.EnumerateArray())
{
if (arrayItem.TryGetProperty("@id"u8, out var ownedElementExternalIdProperty))
{
var propertyValue = ownedElementExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.ownedElement.Add(Guid.Parse(propertyValue));
}
}
}
}
else
{
logger.LogDebug("the ownedElement Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("ownedRelationship"u8, out var ownedRelationshipProperty))
{
foreach (var arrayItem in ownedRelationshipProperty.EnumerateArray())
{
if (arrayItem.TryGetProperty("@id"u8, out var ownedRelationshipIdProperty))
if (arrayItem.TryGetProperty("@id"u8, out var ownedRelationshipExternalIdProperty))
{
var propertyValue = ownedRelationshipIdProperty.GetString();
var propertyValue = ownedRelationshipExternalIdProperty.GetString();

if (propertyValue != null)
{
Expand All @@ -166,6 +307,102 @@ internal static IAnnotatingElement DeSerialize(JsonElement jsonElement, Serializ
logger.LogDebug("the ownedRelationship Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("owner"u8, out var ownerProperty))
{
if (ownerProperty.ValueKind == JsonValueKind.Null)
{
dtoInstance.owner = null;
}
else
{
if (ownerProperty.TryGetProperty("@id"u8, out var ownerExternalIdProperty))
{
var propertyValue = ownerExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.owner = Guid.Parse(propertyValue);
}
}
}
}
else
{
logger.LogDebug("the owner Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("owningAnnotatingRelationship"u8, out var owningAnnotatingRelationshipProperty))
{
if (owningAnnotatingRelationshipProperty.ValueKind == JsonValueKind.Null)
{
dtoInstance.owningAnnotatingRelationship = null;
}
else
{
if (owningAnnotatingRelationshipProperty.TryGetProperty("@id"u8, out var owningAnnotatingRelationshipExternalIdProperty))
{
var propertyValue = owningAnnotatingRelationshipExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.owningAnnotatingRelationship = Guid.Parse(propertyValue);
}
}
}
}
else
{
logger.LogDebug("the owningAnnotatingRelationship Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("owningMembership"u8, out var owningMembershipProperty))
{
if (owningMembershipProperty.ValueKind == JsonValueKind.Null)
{
dtoInstance.owningMembership = null;
}
else
{
if (owningMembershipProperty.TryGetProperty("@id"u8, out var owningMembershipExternalIdProperty))
{
var propertyValue = owningMembershipExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.owningMembership = Guid.Parse(propertyValue);
}
}
}
}
else
{
logger.LogDebug("the owningMembership Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("owningNamespace"u8, out var owningNamespaceProperty))
{
if (owningNamespaceProperty.ValueKind == JsonValueKind.Null)
{
dtoInstance.owningNamespace = null;
}
else
{
if (owningNamespaceProperty.TryGetProperty("@id"u8, out var owningNamespaceExternalIdProperty))
{
var propertyValue = owningNamespaceExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.owningNamespace = Guid.Parse(propertyValue);
}
}
}
}
else
{
logger.LogDebug("the owningNamespace Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("owningRelationship"u8, out var owningRelationshipProperty))
{
if (owningRelationshipProperty.ValueKind == JsonValueKind.Null)
Expand All @@ -174,9 +411,9 @@ internal static IAnnotatingElement DeSerialize(JsonElement jsonElement, Serializ
}
else
{
if (owningRelationshipProperty.TryGetProperty("@id"u8, out var owningRelationshipIdProperty))
if (owningRelationshipProperty.TryGetProperty("@id"u8, out var owningRelationshipExternalIdProperty))
{
var propertyValue = owningRelationshipIdProperty.GetString();
var propertyValue = owningRelationshipExternalIdProperty.GetString();

if (propertyValue != null)
{
Expand All @@ -190,6 +427,44 @@ internal static IAnnotatingElement DeSerialize(JsonElement jsonElement, Serializ
logger.LogDebug("the owningRelationship Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("qualifiedName"u8, out var qualifiedNameProperty))
{
dtoInstance.qualifiedName = qualifiedNameProperty.GetString();
}
else
{
logger.LogDebug("the qualifiedName Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("shortName"u8, out var shortNameProperty))
{
dtoInstance.shortName = shortNameProperty.GetString();
}
else
{
logger.LogDebug("the shortName Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}

if (jsonElement.TryGetProperty("textualRepresentation"u8, out var textualRepresentationProperty))
{
foreach (var arrayItem in textualRepresentationProperty.EnumerateArray())
{
if (arrayItem.TryGetProperty("@id"u8, out var textualRepresentationExternalIdProperty))
{
var propertyValue = textualRepresentationExternalIdProperty.GetString();

if (propertyValue != null)
{
dtoInstance.textualRepresentation.Add(Guid.Parse(propertyValue));
}
}
}
}
else
{
logger.LogDebug("the textualRepresentation Json property was not found in the AnnotatingElement: { Id }", dtoInstance.Id);
}


return dtoInstance;
}
Expand Down
Loading
Loading