public async Task <IdentityResult> DeleteRedirectUriAsync(Neo4jIdentityServer4Client client, Neo4jIdentityServer4ClientRedirectUri redirectUri, CancellationToken cancellationToken = default(CancellationToken)) { cancellationToken.ThrowIfCancellationRequested(); ThrowIfDisposed(); client.ThrowIfNull(nameof(client)); redirectUri.ThrowIfNull(nameof(redirectUri)); try { var cypher = $@" MATCH (client:{IdSrv4Client})-[:{Neo4jConstants.Relationships.HasRedirectUri}]->(redirectUri:{ IdSrv4ClientRedirectUri }) WHERE client.ClientId = $p0 AND redirectUri.RedirectUri = $p1 DETACH DELETE redirectUri"; await Session.RunAsync(cypher, Params.Create( client.ClientId, redirectUri.RedirectUri )); await RaiseClientChangeEventAsync(client); return(IdentityResult.Success); } catch (ClientException ex) { return(ex.ToIdentityResult()); } }
public async Task <IdentityResult> AddRedirectUriToClientAsync(Neo4jIdentityServer4Client client, Neo4jIdentityServer4ClientRedirectUri redirectUri, CancellationToken cancellationToken = default(CancellationToken)) { cancellationToken.ThrowIfCancellationRequested(); ThrowIfDisposed(); client.ThrowIfNull(nameof(client)); redirectUri.ThrowIfNull(nameof(redirectUri)); try { var cypher = $@" MATCH (client:{IdSrv4Client} {{ClientId: $p0}}) MERGE (redirectUri:{IdSrv4ClientRedirectUri} {"$p1".AsMapForNoNull<Neo4jIdentityServer4ClientRedirectUri>(redirectUri)}) MERGE (client)-[:{Neo4jConstants.Relationships.HasRedirectUri}]->(redirectUri)"; var result = await Session.RunAsync(cypher, Params.Create(client.ClientId, redirectUri)); await RaiseClientChangeEventAsync(client); return(IdentityResult.Success); } catch (ClientException ex) { return(ex.ToIdentityResult()); } }
public async Task <Neo4jIdentityServer4ClientRedirectUri> FindRedirectUriAsync(Neo4jIdentityServer4Client client, Neo4jIdentityServer4ClientRedirectUri redirectUri, CancellationToken cancellationToken = default(CancellationToken)) { cancellationToken.ThrowIfCancellationRequested(); ThrowIfDisposed(); client.ThrowIfNull(nameof(client)); redirectUri.ThrowIfNull(nameof(redirectUri)); var cypher = $@" MATCH (client:{IdSrv4Client})-[:{Neo4jConstants.Relationships.HasRedirectUri}]->(redirectUri:{ IdSrv4ClientRedirectUri }) WHERE client.ClientId = $p0 AND redirectUri.RedirectUri = $p1 RETURN redirectUri{{ .* }}"; var result = await Session.RunAsync(cypher, Params.Create( client.ClientId, redirectUri.RedirectUri )); var foundRecord = await result.SingleOrDefaultAsync(r => r.MapTo <Neo4jIdentityServer4ClientRedirectUri>("redirectUri")); return(foundRecord); }
/// <summary> /// Maps an entity to a model. /// </summary> /// <param name="entity">The entity.</param> /// <returns></returns> public static string ToModel( this Neo4jIdentityServer4ClientRedirectUri entity) { return(Mapper.Map <string>(entity)); }