public void Build(IHateoasSource <PagedResponse <InviteResponse> > source) { source.AddLink("invite-member").PresentedAs("new"); source.AddLink("get-invites") .HasRouteData(x => { var queryBy = x.GetCommandAs <ListInviteCommand>() ?? new ListInviteCommand { PageSize = x.PageSize }; queryBy.Page = 1; return(queryBy); }) .When(x => x.Pages > 1 && x.Page > 1) .PresentedAs("first"); source.AddLink("get-invites") .HasRouteData(x => { var queryBy = x.GetCommandAs <ListInviteCommand>() ?? new ListInviteCommand { PageSize = x.PageSize, Page = x.Page }; queryBy.Page++; return(queryBy); }) .When(x => x.Page < x.Pages) .PresentedAs("next"); source.AddLink("get-invites") .HasRouteData(x => { var queryBy = x.GetCommandAs <ListInviteCommand>() ?? new ListInviteCommand { PageSize = x.PageSize, Page = x.Page }; queryBy.Page--; return(queryBy); }) .When(x => x.Page > 1) .PresentedAs("previous"); source.AddLink("get-invites") .HasRouteData(x => { var queryBy = x.GetCommandAs <ListInviteCommand>() ?? new ListInviteCommand { PageSize = x.PageSize }; queryBy.Page = x.Pages; return(queryBy); }) .When(x => x.Page < x.Pages && x.Pages > 1) .PresentedAs("last"); }
public void Build(IHateoasSource <GuildResponse> source) { source.AddLink("get-guild") .HasRouteData(x => new GetGuildCommand { Id = x.Id }) .PresentedAs("details"); source.AddLink("update-guild") .HasRouteData(x => new UpdateGuildCommand { Id = x.Id }) .PresentedAs("update"); source.AddLink("get-member") .HasRouteData(x => new GetMemberCommand { Id = x.Leader?.Id ?? default })
public void Build(IHateoasSource<InviteResponse> source) { source.AddLink("get-invite") .HasRouteData(x => new GetInviteCommand { Id = x.Id }) .PresentedAs("details"); source.AddLink("accept-invite") .HasRouteData(x => new AcceptInviteCommand { Id = x.Id }) .When(x => x.Status == InviteStatuses.Pending && x.Guild != null && x.Member != null) .PresentedAs("accept"); source.AddLink("deny-invite") .HasRouteData(x => new DenyInviteCommand { Id = x.Id }) .When(x => x.Status == InviteStatuses.Pending) .PresentedAs("deny"); source.AddLink("cancel-invite") .HasRouteData(x => new CancelInviteCommand { Id = x.Id }) .When(x => x.Status == InviteStatuses.Pending) .PresentedAs("cancelInvite"); source.AddLink("get-guild") .HasRouteData(x => new GetGuildCommand { Id = x.Guild?.Id ?? default })
public void Build(IHateoasSource <Invite> source) { source.AddLink("accept-invite") .HasRouteData(e => new { id = e.Id }) .When(e => e.Status == InviteStatuses.Pending); source.AddLink("decline-invite") .HasRouteData(e => new { id = e.Id }) .When(e => e.Status == InviteStatuses.Pending); source.AddLink("cancel-invite") .HasRouteData(e => new { id = e.Id }) .When(e => e.Status == InviteStatuses.Pending); source.AddLink("get-invite").HasRouteData(i => new { id = i.Id }); source.AddLink("get-guild").HasRouteData(i => new { id = i.GuildId }); source.AddLink("get-member").HasRouteData(i => new { id = i.MemberId }); }
public void Build(IHateoasSource <MemberResponse> source) { source.AddLink("get-member") .HasRouteData(x => new GetMemberCommand { Id = x.Id }) .PresentedAs("details"); source.AddLink("change-member-name") .HasRouteData(x => new ChangeMemberNameCommand { Id = x.Id }) .PresentedAs("changeName"); source.AddLink("promote-member") .HasRouteData(x => new PromoteMemberCommand { Id = x.Id }) .When(x => x.Guild != null && !x.IsGuildLeader) .PresentedAs("promote"); source.AddLink("demote-member") .HasRouteData(x => new DemoteMemberCommand { Id = x.Id }) .When(x => x.Guild != null && x.IsGuildLeader) .PresentedAs("demote"); source.AddLink("leave-guild") .HasRouteData(x => new LeaveGuildCommand { Id = x.Id }) .When(x => x.Guild != null) .PresentedAs("leaveGuild"); source.AddLink("get-guild") .HasRouteData(x => new GetGuildCommand { Id = x.Guild?.Id ?? default })
public void Build(IHateoasSource <Member> source) { source.AddLink("get-member").HasRouteData(e => new { id = e.Id }); source.AddLink("update-member").HasRouteData(e => new { id = e.Id }); source .AddLink("get-guild") .HasRouteData(e => new { id = e.GuildId }) .When(e => e.GuildId != null); source .AddLink("promote-member") .HasRouteData(e => new { id = e.Id }) .When(e => e.GuildId != null && !e.IsGuildMaster); source .AddLink("demote-member") .HasRouteData(e => new { id = e.Id }) .When(e => e.GuildId != null && e.IsGuildMaster); source.AddLink("leave-guild") .HasRouteData(e => new { id = e.Id }) .When(e => e.GuildId != null); }
public void Build(IHateoasSource <Guild> source) { source.AddLink("get-guild").HasRouteData(g => new { id = g.Id }); source.AddLink("get-members").HasRouteData(g => new { guildId = g.Id }); source.AddLink("update-guild").HasRouteData(e => new { id = e.Id }); }
public void Build(IHateoasSource <HateoasSample> source) { source.AddLink("test1").When(x => x.Id != Guid.Empty).HasRouteData(x => new { id = x.Id }); source.AddLink("test2").When(x => !string.IsNullOrWhiteSpace(x.ZipCode)).HasRouteData(x => new { zipcode = x.ZipCode }); }
public void Build(IHateoasSource <List <Member> > source) { source.AddLink("get-members"); source.AddLink("invite-member"); source.AddLink("create-member"); }
public void Build(IHateoasSource <List <Guild> > source) { source.AddLink("get-guilds"); source.AddLink("create-guild"); }
public void Build(IHateoasSource <List <Invite> > source) { source.AddLink("get-invites"); source.AddLink("invite-member"); }