package org.gbif.checklistbank.ws.resources;
import org.gbif.api.model.checklistbank.Description;
import org.gbif.api.service.checklistbank.DescriptionService;
import org.gbif.ws.server.interceptor.NullToNotFound;
import org.gbif.ws.util.ExtraMediaTypes;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import com.google.inject.Inject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Description resource.
*/
@Path("/description")
@Produces({MediaType.APPLICATION_JSON, ExtraMediaTypes.APPLICATION_JAVASCRIPT})
public class DescriptionResource {
private static final Logger LOG = LoggerFactory.getLogger(DescriptionResource.class);
private final DescriptionService descriptionService;
@Inject
public DescriptionResource(DescriptionService descriptionService) {
this.descriptionService = descriptionService;
}
/**
* This retrieves a Description by its key from ChecklistBank.
*
* @return requested Description or null if none could be found
*/
@GET
@Path("{id}")
@NullToNotFound
public Description get(@PathParam("id") Integer key) {
return descriptionService.get(key);
}
}