@POST @Consumes(MediaType.APPLICATION_JSON) public Response addEvent(Event event) { if (authenticated) { Event evt = new Event(event); String sql = "INSERT INTO event (eventName, eventDescription, dateFrom, dateTo) VALUES( '" + evt.getEventName() + "', '" + evt.getEventDescription() + "', '" + evt.getDateFromString() + "'" + ",'" + evt.getDateToString() + "')"; try { sqlCon.getStatement().executeUpdate(sql); return Response.status(Status.ACCEPTED).build(); } catch (Exception e) { e.printStackTrace(); return Response.status(Status.BAD_REQUEST).build(); } finally { sqlCon.closeConnection(); } } else { return Response.status(Status.FORBIDDEN).build(); } }
@DELETE @Path("/{eventId}") public Response deleteEvent(@PathParam("eventId") String eventId) { if (authenticated) { try { sqlCon.getStatement().executeUpdate("DELETE FROM event WHERE eventId = " + eventId); return Response.status(Status.ACCEPTED).build(); } catch (Exception e) { e.printStackTrace(); return Response.status(Status.BAD_REQUEST).build(); } finally { sqlCon.closeConnection(); } } else { return Response.status(Status.FORBIDDEN).build(); } }
@GET @Produces(MediaType.APPLICATION_JSON) @Path("register/{userId}") public Response getEventsAvailableForRegistration(@PathParam("userId") String userId) { List<Event> events = new ArrayList<Event>(); if (authenticated) { try { ResultSet rs = sqlCon .getStatement() .executeQuery( "SELECT event.eventId, event.eventName, event.eventDescription, event.dateFrom, event.dateTo " + "FROM event where not exists ( select eventId from user_event where event.eventId = user_event.eventId " + "AND user_event.userId = " + userId + " );"); while (rs.next()) { Event event = new Event(); long eventId = Long.parseLong(rs.getString("eventId")); event.setEventId(eventId); event.setEventName(rs.getString("eventName")); event.setEventDescription(rs.getString("eventDescription")); Calendar cal = new GregorianCalendar(); cal.set(2012, Calendar.AUGUST, 15, 15, 30); // event.setDateFrom(cal); // event.setDateTo(rs.getString("dateTo")); events.add(event); } } catch (Exception e) { e.printStackTrace(); } finally { sqlCon.closeConnection(); } GenericEntity<List<Event>> entity = new GenericEntity<List<Event>>(events) {}; return Response.status(Status.ACCEPTED).entity(entity).build(); } else { return Response.status(Status.FORBIDDEN).build(); } }
@POST @Path("/register/{userId}/{eventId}") // @Consumes(MediaType.APPLICATION_JSON) public Response registerUserForEvent( @PathParam("userId") String userId, @PathParam("eventId") String eventId) { if (authenticated) { String sql = "INSERT INTO user_event (userId, eventId) VALUES(" + userId + ", " + eventId + ")"; try { sqlCon.getStatement().executeUpdate(sql); return Response.status(Status.ACCEPTED).build(); } catch (SQLException e) { e.printStackTrace(); return Response.status(Status.BAD_REQUEST).build(); } } else { return Response.status(Status.FORBIDDEN).build(); } }
@PUT @Path("/{eventId}") @Consumes(MediaType.APPLICATION_JSON) public Response updateEvent(Event event, @PathParam("eventId") String eventId) { if (authenticated) { Event evt = new Event(event); String sql = "UPDATE event SET eventName = '" + evt.getEventName() + "', eventDescription = " + "'" + evt.getEventDescription() + "', dateFrom = " + "'" + evt.getDateFrom() + "'" + ", dateTo = " + "'" + evt.getDateTo() + "'" + " WHERE eventId =" + eventId; try { sqlCon.getStatement().executeUpdate(sql); return Response.status(Status.ACCEPTED).build(); } catch (Exception e) { e.printStackTrace(); return Response.status(Status.BAD_REQUEST).build(); } finally { sqlCon.closeConnection(); } } else { return Response.status(Status.FORBIDDEN).build(); } }
@GET @Produces(MediaType.APPLICATION_JSON) public Response getEvents() { List<Event> events = new ArrayList<Event>(); if (authenticated) { try { ResultSet rs = sqlCon.getStatement().executeQuery("SELECT * FROM event"); while (rs.next()) { Event event = new Event(); long eventId = Long.parseLong(rs.getString("eventId")); event.setEventId(eventId); event.setEventName(rs.getString("eventName")); event.setEventDescription(rs.getString("eventDescription")); Calendar cal = new GregorianCalendar(); cal.set(2012, Calendar.AUGUST, 15, 15, 30); // event.setDateFrom(cal); // event.setDateTo(rs.getString("dateTo")); events.add(event); } } catch (Exception e) { e.printStackTrace(); } finally { sqlCon.closeConnection(); } GenericEntity<List<Event>> entity = new GenericEntity<List<Event>>(events) {}; return Response.status(Status.ACCEPTED).entity(entity).build(); } else { return Response.status(Status.FORBIDDEN).build(); } }