public LinksHeader CreateLinks(string id, PaginationMetadata pagination, string routeName) { var _operationLinks = new OperationLinks() { Single = new SingleOperationLinks() { Get = _urlHelper.Link(GetSingleRouteName, new { id }), Post = _urlHelper.Link(PostSingleRouteName, new { }) }, Multiple = new MultipleOperationLinks() { Get = _urlHelper.Link(GetMultipleRouteName, new { }) } }; RelationLinks _relationLinks = null; if (id != null) { _relationLinks = new RelationLinks() { Children = new RelatedChildLinks() { Events = _urlHelper.Link(EventsController.GetMultipleRouteName, new { incidentId = id }) } }; } return(new LinksHeader(null, pagination, _urlHelper, routeName, _operationLinks, _relationLinks)); }
public ILinksHeader CreatePaginatedLinks(string routeName, PaginationMetadata pagination) { ThrowIf.NullOrWhiteSpace(routeName, nameof(routeName)); var routeValues = new { }; var route = UrlHelper.Link(routeName, routeValues); var operationLinks = GetOperationLinks(routeValues); RelationLinks relationLinks = null; return(new PaginatedLinksHeader(route, operationLinks, relationLinks, pagination)); }
public ILinksHeader CreatePaginatedLinks(string routeName, PaginationMetadata pagination, EventFilters filter, long incidentId = default(long)) { ThrowIf.NullOrWhiteSpace(routeName, nameof(routeName)); var routeValues = (incidentId == default(long)) ? (object)new { } : new { incidentId = incidentId.ToPathTokenString() }; var route = UrlHelper.Link(routeName, routeValues); var operationLinks = GetOperationLinks(routeValues); RelationLinks relationLinks = null; return(new PaginatedLinksHeader(route, operationLinks, relationLinks, pagination, filter)); }
public ILinksHeader CreateLinks(long incidentId) { var routeValues = new { incidentId = incidentId.ToPathTokenString() }; var operationLinks = GetOperationLinks(routeValues); var relationLinks = new RelationLinks() { Children = new IncidentChildLinks() { Events = UrlHelper.Link(EventRoutesByIncident.GetMultiple, routeValues) } }; return(new CrudLinksHeader(operationLinks, relationLinks)); }
public ILinksHeader CreateLinks(long incidentId, long eventId) { var routeValues = new { incidentId = incidentId.ToPathTokenString(), eventId = eventId.ToPathTokenString() }; var operationLinks = GetOperationLinks(routeValues); var relationLinks = new RelationLinks() { Parent = new EventParentLinks() { Incident = UrlHelper.Link(IncidentRoutes.GetSingle, new { incidentId }) } }; return(new CrudLinksHeader(operationLinks, relationLinks)); }
public LinksHeader CreateLinks(string id, string incidentId, EventFilters filter, PaginationMetadata pagination, string routeName) { var _operationLinks = new OperationLinks() { Single = new SingleOperationLinks() { Get = _urlHelper.Link(GetSingleRouteName, new { id }), Post = _urlHelper.Link(PostSingleRouteName, new { }) }, Multiple = new MultipleOperationLinks() { Get = _urlHelper.Link(GetMultipleRouteName, new { }) } }; var _relationLinks = new RelationLinks() { Parent = new RelatedParentLinks() { Incident = _urlHelper.Link(IncidentsController.GetSingleRouteName, new { id = incidentId }) } }; return(new LinksHeader(filter, pagination, _urlHelper, routeName, _operationLinks, _relationLinks)); }