Skip to content

Commit 42b12d7

Browse files
authored
Regenerate C# classes using schema introspection (#22)
1 parent 3686b23 commit 42b12d7

File tree

2 files changed

+19
-7
lines changed

2 files changed

+19
-7
lines changed

README.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -151,12 +151,17 @@ Generating classes using schema introspection
151151
-------------
152152
```csharp
153153
// Install nuget https://github.com/Husqvik/GraphQlClientGenerator
154-
var schema = await GraphQlGenerator.RetrieveSchema(HttpMethod.Get, "https://app.tibber.com/v1-beta/gql");
155-
var configuration = new GraphQlGeneratorConfiguration();
154+
var schema = await GraphQlGenerator.RetrieveSchema(HttpMethod.Get, "https://api.tibber.com/v1-beta/gql");
155+
var configuration = new GraphQlGeneratorConfiguration { TargetNamespace = "Tibber.Sdk" };
156156
configuration.CustomClassNameMapping.Add("Consumption", "ConsumptionEntry");
157157
configuration.CustomClassNameMapping.Add("Production", "ProductionEntry");
158158
configuration.CustomClassNameMapping.Add("RootMutation", "TibberMutation");
159159
configuration.CustomClassNameMapping.Add("Query", "Tibber");
160+
configuration.CustomClassNameMapping.Add("RootSubscription", "TibberApiSubscription");
160161
var generator = new GraphQlGenerator(configuration);
161-
var generatedClasses = generator.Generate(schema);
162+
var builder = new StringBuilder();
163+
using var writer = new StringWriter(builder);
164+
var generationContext = new SingleFileGenerationContext(schema, writer) { LogMessage = Console.WriteLine };
165+
generator.Generate(generationContext);
166+
var csharpCode = builder.ToString();
162167
```

src/Tibber.Sdk/GeneratedEntities.cs

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1174,12 +1174,19 @@ public enum HomeType
11741174
public enum HeatingSource
11751175
{
11761176
[EnumMember(Value = "AIR2AIR_HEATPUMP")] Air2AirHeatpump,
1177-
[EnumMember(Value = "ELECTRICITY")] Electricity,
1178-
[EnumMember(Value = "GROUND")] Ground,
1177+
[EnumMember(Value = "AIR2WATER_HEATPUMP")] Air2WaterHeatpump,
1178+
[EnumMember(Value = "BOILER")] Boiler,
1179+
[EnumMember(Value = "CENTRAL_HEATING")] CentralHeating,
1180+
[EnumMember(Value = "DISTRICT")] District,
11791181
[EnumMember(Value = "DISTRICT_HEATING")] DistrictHeating,
11801182
[EnumMember(Value = "ELECTRIC_BOILER")] ElectricBoiler,
1181-
[EnumMember(Value = "AIR2WATER_HEATPUMP")] Air2WaterHeatpump,
1182-
[EnumMember(Value = "OTHER")] Other
1183+
[EnumMember(Value = "ELECTRICITY")] Electricity,
1184+
[EnumMember(Value = "FLOOR")] Floor,
1185+
[EnumMember(Value = "GAS")] Gas,
1186+
[EnumMember(Value = "GROUND")] Ground,
1187+
[EnumMember(Value = "OIL")] Oil,
1188+
[EnumMember(Value = "OTHER")] Other,
1189+
[EnumMember(Value = "WASTE")] Waste
11831190
}
11841191

11851192
public enum HomeAvatar

0 commit comments

Comments
 (0)