[Minor] fixed broken enum query due to missing certificate

This commit is contained in:
Robert von Burg 2014-09-05 16:22:06 +02:00
parent d0a3e89bbd
commit bffc24f335
1 changed files with 8 additions and 2 deletions

View File

@ -17,6 +17,7 @@ package li.strolch.rest.endpoint;
import java.util.Locale; import java.util.Locale;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.GET; import javax.ws.rs.GET;
import javax.ws.rs.Path; import javax.ws.rs.Path;
import javax.ws.rs.PathParam; import javax.ws.rs.PathParam;
@ -28,6 +29,7 @@ import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response; import javax.ws.rs.core.Response;
import li.strolch.rest.RestfulStrolchComponent; import li.strolch.rest.RestfulStrolchComponent;
import li.strolch.rest.StrolchRestfulConstants;
import li.strolch.rest.helper.RestfulHelper; import li.strolch.rest.helper.RestfulHelper;
import li.strolch.runtime.query.enums.EnumHandler; import li.strolch.runtime.query.enums.EnumHandler;
import li.strolch.runtime.query.enums.StrolchEnum; import li.strolch.runtime.query.enums.StrolchEnum;
@ -35,6 +37,8 @@ import li.strolch.runtime.query.enums.StrolchEnum;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import ch.eitchnet.privilege.model.Certificate;
/** /**
* @author Robert von Burg <eitch@eitchnet.ch> * @author Robert von Burg <eitch@eitchnet.ch>
*/ */
@ -46,15 +50,17 @@ public class EnumQuery {
@GET @GET
@Produces(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON)
@Path("{name}") @Path("{name}")
public Response getEnum(@PathParam("name") String name, @Context HttpHeaders headers) { public Response getEnum(@PathParam("name") String name, @Context HttpServletRequest request,
@Context HttpHeaders headers) {
try { try {
EnumHandler enumHandler = RestfulStrolchComponent.getInstance().getContainer() EnumHandler enumHandler = RestfulStrolchComponent.getInstance().getContainer()
.getComponent(EnumHandler.class); .getComponent(EnumHandler.class);
Certificate cert = (Certificate) request.getAttribute(StrolchRestfulConstants.STROLCH_CERTIFICATE);
Locale locale = RestfulHelper.getLocale(headers); Locale locale = RestfulHelper.getLocale(headers);
StrolchEnum strolchEnum = enumHandler.getEnum(null, name, locale); StrolchEnum strolchEnum = enumHandler.getEnum(cert, name, locale);
GenericEntity<StrolchEnum> entity = new GenericEntity<StrolchEnum>(strolchEnum, StrolchEnum.class) { GenericEntity<StrolchEnum> entity = new GenericEntity<StrolchEnum>(strolchEnum, StrolchEnum.class) {
}; };