Skip to content

Commit 38e8b7b

Browse files
author
Brian Melton
committed
Duplicate code reduction re overloads
1 parent 97c329d commit 38e8b7b

File tree

5 files changed

+14
-24
lines changed

5 files changed

+14
-24
lines changed

Templates/Android/extensions/MethodCollectionRequestBuilder.java.tt

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,9 @@
55
<#host.TemplateName = TypeCollectionRequestBuilder(c);#>
66
<#=writer.WriteHeader()#>
77
<#=CreatePackageDef(host)#>
8-
<#
9-
var methods = new List<OdcmMethod>();
10-
methods.Add(c.AsOdcmMethod());
11-
methods.AddRange(c.AsOdcmMethod().Overloads);
12-
#>
138

149
<#=CreateClassDef(TypeCollectionRequestBuilder(c), BaseTypeCollectionRequestBuilder(c), ITypeCollectionRequestBuilder(c))#>
15-
<# foreach (var method in methods) { #>
10+
<# foreach (var method in c.MethodsAndOverrides()) { #>
1611

1712
/**
1813
* The request builder for this collection of <#=ClassTypeName(c)#>

Templates/Android/extensions/MethodRequestBuilder.java.tt

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,9 @@
55
<#host.TemplateName = TypeRequestBuilder(c);#>
66
<#=writer.WriteHeader()#>
77
<#=CreatePackageDef(host)#>
8-
<#
9-
var methods = new List<OdcmMethod>();
10-
methods.Add(c.AsOdcmMethod());
11-
methods.AddRange(c.AsOdcmMethod().Overloads);
12-
#>
138

149
<#=CreateClassDef(TypeRequestBuilder(c), BaseTypeRequestBuilder(c), ITypeRequestBuilder(c))#>
15-
<# foreach (var method in methods) { #>
10+
<# foreach (var method in c.MethodsAndOverrides()) { #>
1611

1712
/**
1813
* The request builder for this <#=TypeName(c)#>

Templates/Android/generated/BaseMethodCollectionRequestBuilder.java.tt

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,10 @@
55
<#host.TemplateName = BaseTypeCollectionRequestBuilder(c);#>
66
<#=writer.WriteHeader()#>
77
<#=CreatePackageDef(host)#>
8-
<#
9-
var methods = new List<OdcmMethod>();
10-
methods.Add(c.AsOdcmMethod());
11-
methods.AddRange(c.AsOdcmMethod().Overloads);
12-
#>
138
<# bool isPost = IsPostRequestType(c.AsOdcmMethod()); #>
149
<#=CreateClassDef(BaseTypeCollectionRequestBuilder(c), RequestBuilderSuperClass(c), IBaseTypeCollectionRequestBuilder(c))#>
1510

16-
<# foreach (var method in methods) { #>
11+
<# foreach (var method in c.MethodsAndOverrides()) { #>
1712
/**
1813
* The request builder for this collection of <#=ClassTypeName(c)#>
1914
*

Templates/Android/generated/BaseMethodRequestBuilder.java.tt

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,10 @@
55
<#host.TemplateName = BaseTypeRequestBuilder(c);#>
66
<#=writer.WriteHeader()#>
77
<#=CreatePackageDef(host)#>
8-
<#
9-
var methods = new List<OdcmMethod>();
10-
methods.Add(c.AsOdcmMethod());
11-
methods.AddRange(c.AsOdcmMethod().Overloads);
12-
#>
138
<# bool isPost = IsPostRequestType(c.AsOdcmMethod()); #>
149
<#=CreateClassDef(BaseTypeRequestBuilder(c), RequestBuilderSuperClass(c))#>
1510

16-
<# foreach (var method in methods) { #>
11+
<# foreach (var method in c.MethodsAndOverrides()) { #>
1712
/**
1813
* The request builder for this <#=TypeName(c)#>
1914
*

src/GraphODataTemplateWriter/Extensions/OdcmModelExtensions.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -282,6 +282,7 @@ public static bool LongDescriptionStartsWith(this OdcmObject odcmObject, string
282282
var descriptionParts = odcmObject.GetLongDescriptionSegments();
283283
return descriptionParts != null && descriptionParts.Any(value => value.StartsWith(descriptionValue));
284284
}
285+
285286
public static string[] GetLongDescriptionSegments(this OdcmObject odcmObject)
286287
{
287288
if (odcmObject.LongDescription != null)
@@ -292,6 +293,15 @@ public static string[] GetLongDescriptionSegments(this OdcmObject odcmObject)
292293
return null;
293294
}
294295

296+
/// Returns the complete list of methods supported by this OdcmObject, including its overloads
297+
public static List<OdcmMethod> MethodsAndOverrides(this OdcmObject odcmObject)
298+
{
299+
var methods = new List<OdcmMethod>();
300+
methods.Add(odcmObject.AsOdcmMethod());
301+
methods.AddRange(odcmObject.AsOdcmMethod().Overloads);
302+
return methods;
303+
}
304+
295305
}
296306

297307
}

0 commit comments

Comments
 (0)