@@ -76,7 +76,26 @@ public async Task<SearchResult<ResourceTypeResult>> GetResourceTypes(Cancellatio
7676 Method = HttpMethod . Get ,
7777 RequestUri = new Uri ( $ "{ GetPath ( userEdp ) } ?{ queryString } ")
7878 } ;
79- if ( ! string . IsNullOrWhiteSpace ( accessToken ) ) request . Headers . Add ( "Authorization" , $ "Bearer { accessToken } ") ;
79+ if ( ! string . IsNullOrWhiteSpace ( accessToken ) ) request . Headers . Add ( "Authorization" , accessToken ) ;
80+ var httpClient = GetHttpClient ( ) ;
81+ var httpResult = await httpClient . SendAsync ( request , cancellationToken ) ;
82+ httpResult . EnsureSuccessStatusCode ( ) ;
83+ var json = await httpResult . Content . ReadAsStringAsync ( cancellationToken ) ;
84+ var jsonObj = JsonObject . Parse ( json ) . AsObject ( ) ;
85+ return ( RepresentationSerializer . DeserializeSearchRepresentations ( jsonObj ) , json ) ;
86+ }
87+
88+ public async Task < ( SearchResult < RepresentationResult > , string ) > SearchGroups ( SearchRequest searchRequest , string accessToken , CancellationToken cancellationToken )
89+ {
90+ if ( _resourceTypes == null ) await GetResourceTypes ( cancellationToken ) ;
91+ var groupEdp = _resourceTypes . Resources . Single ( r => r . Name == "Group" ) . Endpoint ;
92+ var queryString = SerializeQueryString ( searchRequest ) ;
93+ var request = new HttpRequestMessage
94+ {
95+ Method = HttpMethod . Get ,
96+ RequestUri = new Uri ( $ "{ GetPath ( groupEdp ) } ?{ queryString } ")
97+ } ;
98+ if ( ! string . IsNullOrWhiteSpace ( accessToken ) ) request . Headers . Add ( "Authorization" , accessToken ) ;
8099 var httpClient = GetHttpClient ( ) ;
81100 var httpResult = await httpClient . SendAsync ( request , cancellationToken ) ;
82101 httpResult . EnsureSuccessStatusCode ( ) ;
@@ -94,7 +113,7 @@ public async Task<RepresentationResult> GetGroup(string id, string accessToken,
94113 Method = HttpMethod . Get ,
95114 RequestUri = new Uri ( $ "{ GetPath ( groupEdp ) } /{ id } ")
96115 } ;
97- if ( ! string . IsNullOrWhiteSpace ( accessToken ) ) request . Headers . Add ( "Authorization" , $ "Bearer { accessToken } " ) ;
116+ if ( ! string . IsNullOrWhiteSpace ( accessToken ) ) request . Headers . Add ( "Authorization" , accessToken ) ;
98117 var httpClient = GetHttpClient ( ) ;
99118 var httpResult = await httpClient . SendAsync ( request , cancellationToken ) ;
100119 httpResult . EnsureSuccessStatusCode ( ) ;
0 commit comments