using System.Collections.Generic; using Nancy; using Nancy.Metadata.Modules; using Nancy.Metadata.Swagger.Core; using Nancy.Metadata.Swagger.Fluent; using Nancy.Metadata.Swagger.Model; using Sony.Filtr.AdminAPI.ViewModels; using Sony.Filtr.Contracts.Entities; namespace Sony.Filtr.AdminAPI.Modules.EditorialPlaylist { public class PlaylistCategoryIconMetadataModule : MetadataModule { public PlaylistCategoryIconMetadataModule() { var tag = "Playlist Category icon"; Describe["GetPlaylistCategoryIcons"] = description => new SwaggerRouteMetadata(description).With(c => c.WithDescription("Get all playlist category icons", tag) .WithDefaultResponse>()); Describe["GetSinglePlaylistCategoryIcon"] = description => new SwaggerRouteMetadata(description).With(c => c.WithDescription("Get the specified playlist category icon", tag) .WithRequestParameter("id", description: "Playlist Category Id") .WithDefaultResponse() .WithResponse(HttpStatusCode.BadRequest, "Missing or invalid id") .WithResponse(HttpStatusCode.NotFound, "No icon with specified id") ); Describe["AddPlaylistCategoryIcon"] = description => new SwaggerRouteMetadata(description).With(c => c.WithDescription("Add a new Playlist Category Ico", tag) .WithRequestModel() .WithDefaultResponse() .WithResponse(HttpStatusCode.BadRequest, "Invalid request parameter")); Describe["UpdatePlaylistCategoryIcon"] = description => new SwaggerRouteMetadata(description).With(c => c.WithDescription("Update an existing playlist category icon", tag) .WithRequestParameter("id", description: "Playlist Category Id") .WithRequestModel() .WithDefaultResponse() .WithResponse(HttpStatusCode.BadRequest, "Missing or invalid id") .WithResponse(HttpStatusCode.NotFound, "No icon with specified id") ); Describe["DeletePlaylistCategoryIcon"] = description => new SwaggerRouteMetadata(description).With(c => c.WithDescription("Delete an existing playlist category icon", tag) .WithRequestParameter("id", description: "Playlist Category Id") .WithResponse(HttpStatusCode.Accepted, "Playlist category has been removed") .WithResponse(HttpStatusCode.BadRequest, "Missing or invalid id") .WithResponse(HttpStatusCode.NotFound, "No icon with specified id")); } } }