Skip to content

Commit ec2a025

Browse files
Merge pull request #2 from episerver/bugfix/fix-several-content-types-issue
Fix issue where it was not possible to have several content types con…
2 parents c3cb936 + 80bbf93 commit ec2a025

File tree

2 files changed

+22
-12
lines changed

2 files changed

+22
-12
lines changed

Optimizely.Graph.Source.Sdk/Optimizely.Graph.Source.Sdk/JsonConverters/SourceSdkContentConverter.cs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,14 @@ void WriteContent(Utf8JsonWriter writer, object value, JsonSerializerOptions opt
4545
writer.WriteString("Status$$String", "Published");
4646
writer.WriteString("__typename", contentType.Name);
4747
writer.WriteString("_rbac", "r:Everyone:Read");
48-
writer.WriteString("ContentType$$String", contentType.Name);
48+
49+
writer.WriteStartArray("ContentType$$String");
50+
writer.WriteStringValue(contentType.Name);
51+
foreach (var type in contentType.GetInterfaces())
52+
{
53+
writer.WriteStringValue(type.Name);
54+
}
55+
writer.WriteEndArray();
4956

5057
writer.WriteStartObject("Language");
5158
writer.WriteString("Name$$String", "en"); //TODO: Set Language

Optimizely.Graph.Source.Sdk/Optimizely.Graph.Source.Sdk/JsonConverters/SourceSdkContentTypeConverter.cs

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,22 @@ public override void Write(Utf8JsonWriter writer, IEnumerable<TypeFieldConfigura
1515
{
1616
writer.WriteStartObject();
1717

18-
foreach(var contentTypeFieldConfiguration in value.Where(x => x.ConfigurationType == ConfigurationType.ContentType))
18+
writer.WriteBoolean("useTypedFieldNames", true);
19+
writer.WriteString("label", "AlloyExternalData");
20+
21+
writer.WriteStartArray("languages");
22+
foreach (var language in SourceConfigurationModel.GetLanguages())
1923
{
20-
writer.WriteBoolean("useTypedFieldNames", true);
21-
writer.WriteString("label", contentTypeFieldConfiguration.TypeName);
24+
writer.WriteStringValue(language);
25+
}
26+
writer.WriteEndArray();
2227

23-
writer.WriteStartArray("languages");
24-
foreach (var language in SourceConfigurationModel.GetLanguages())
25-
{
26-
writer.WriteStringValue(language);
27-
}
28-
writer.WriteEndArray();
28+
writer.WriteStartObject("contentTypes");
29+
foreach (var contentTypeFieldConfiguration in value.Where(x => x.ConfigurationType == ConfigurationType.ContentType))
30+
{
31+
32+
2933

30-
writer.WriteStartObject("contentTypes");
3134
writer.WriteStartObject(contentTypeFieldConfiguration.TypeName);
3235

3336
writer.WriteStartArray("contentType");
@@ -52,8 +55,8 @@ public override void Write(Utf8JsonWriter writer, IEnumerable<TypeFieldConfigura
5255
writer.WriteEndObject();
5356

5457
writer.WriteEndObject();
55-
writer.WriteEndObject();
5658
}
59+
writer.WriteEndObject();
5760

5861
writer.WriteStartObject("propertyTypes");
5962
foreach (var contentTypeFieldConfiguration in value.Where(x => x.ConfigurationType == ConfigurationType.PropertyType))

0 commit comments

Comments
 (0)