package org.t4f.bsc.network.rest.service; import java.util.logging.Logger; import javax.ws.rs.Consumes; import javax.ws.rs.FormParam; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.core.MediaType; import org.t4f.bsc.pocsag.PocsagMessage; import org.t4f.bsc.service.PocsagServices; @Path("/pocsag") public class PocsagRestServices { private final static Logger LOGGER = Logger.getLogger("POCSAG-BSC"); @POST @Path("/send/{RIC}") @Consumes(MediaType.APPLICATION_FORM_URLENCODED) public String send(@PathParam("RIC") String RIC, @FormParam("frequency") String frequency, @FormParam("bauds") String bauds, @FormParam("msgType") String msgType, @FormParam("message") String message) { PocsagServices pocsagServices = new PocsagServices(); PocsagMessage pocsagMsg; LOGGER.finer("REST POST - RIC: " + RIC + " - freq: " + frequency + " - bauds: " + bauds + " type: " + msgType + " - msg: " + message); try { pocsagMsg = new PocsagMessage(Integer.parseInt(RIC), Integer.parseInt(frequency), Integer.parseInt(bauds), PocsagMessage.MessageType.valueOf(msgType), message); } catch (NumberFormatException e) { LOGGER.info("Error parsing POCSAG message from REST POST\n" + "RIC: " + RIC + " - freq: " + frequency + " - bauds: " + bauds + " type: " + msgType + " - msg: " + message); return "Error"; } catch (IllegalArgumentException e) { LOGGER.info("Error parsing POCSAG message from REST POST\n" + "RIC: " + RIC + " - freq: " + frequency + " - bauds: " + bauds + " type: " + msgType + " - msg: " + message); return "Error"; } pocsagServices.send(pocsagMsg); return "Sent"; } }