1
- // Copyright (c) Microsoft Corporation. All rights reserved.
1
+ // Copyright (c) Microsoft Corporation. All rights reserved.
2
2
// Licensed under the MIT license.
3
3
4
4
using System ;
9
9
namespace Microsoft . OpenApi . Services
10
10
{
11
11
/// <summary>
12
- ///
12
+ /// A service that slices an OpenApiDocument into a subset document
13
13
/// </summary>
14
- public class OpenApiFilterService
14
+ public static class OpenApiFilterService
15
15
{
16
16
public static readonly string GraphAuthorizationUrl = "https://login.microsoftonline.com/common/oauth2/v2.0/authorize" ;
17
17
public static readonly string GraphTokenUrl = "https://login.microsoftonline.com/common/oauth2/v2.0/token" ;
18
18
public static readonly string GraphUrl = "https://graph.microsoft.com/{0}/" ;
19
19
public const string GraphVersion_V1 = "v1.0" ;
20
20
21
-
22
- public OpenApiDocument CreateSubsetOpenApiDocument ( string operationIds , OpenApiDocument source , string title )
23
- {
24
- var predicate = CreatePredicate ( operationIds ) ;
25
-
26
- var subsetOpenApiDocument = CreateFilteredDocument ( source , title , GraphVersion_V1 , predicate ) ;
27
-
28
- return subsetOpenApiDocument ;
29
- }
30
-
31
- public Func < OpenApiOperation , bool > CreatePredicate ( string operationIds )
21
+ /// <summary>
22
+ /// Create predicate function based on passed query parameters
23
+ /// </summary>
24
+ /// <param name="operationIds">Comma delimited list of operationIds or * for all operations.</param>
25
+ /// <returns>A predicate.</returns>
26
+ public static Func < OpenApiOperation , bool > CreatePredicate ( string operationIds )
32
27
{
33
28
string predicateSource = null ;
34
29
@@ -55,14 +50,15 @@ public Func<OpenApiOperation, bool> CreatePredicate(string operationIds)
55
50
56
51
return predicate ;
57
52
}
53
+
58
54
/// <summary>
59
- ///
55
+ /// Create partial OpenAPI document based on the provided predicate.
60
56
/// </summary>
61
- /// <param name="source"></param>
62
- /// <param name="title"></param>
63
- /// <param name="graphVersion"></param>
64
- /// <param name="predicate"></param>
65
- /// <returns></returns>
57
+ /// <param name="source">The target <see cref="OpenApiDocument"/>. </param>
58
+ /// <param name="title">The OpenAPI document title. </param>
59
+ /// <param name="graphVersion">Version of the target Microsoft Graph API. </param>
60
+ /// <param name="predicate">A predicate function. </param>
61
+ /// <returns>A partial OpenAPI document. </returns>
66
62
public static OpenApiDocument CreateFilteredDocument ( OpenApiDocument source , string title , string graphVersion , Func < OpenApiOperation , bool > predicate )
67
63
{
68
64
var subset = new OpenApiDocument
0 commit comments