Created
January 27, 2021 21:40
-
-
Save yostane/93ec034d01ea4a715df86ca1efe81b29 to your computer and use it in GitHub Desktop.
ejb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import javax.inject.Inject; | |
| import javax.ws.rs.*; | |
| import javax.ws.rs.core.MediaType; | |
| import javax.ws.rs.core.Response; | |
| @Path("amangousse") | |
| public class AmongousseResource { | |
| @Inject | |
| private CrewBean crewBean; | |
| @GET | |
| @Produces(MediaType.APPLICATION_JSON) | |
| public Response getMembers(){ | |
| return Response.ok(crewBean.getCrewMembers()).build(); | |
| } | |
| @POST | |
| @Produces(MediaType.TEXT_PLAIN) | |
| @Consumes(MediaType.APPLICATION_JSON) | |
| public Response addMember(CrewMember crewMember){ | |
| if (crewMember.getJob() == null || crewMember.getName() == null){ | |
| return Response.status(403).build(); | |
| } | |
| crewBean.addMember(crewMember); | |
| return Response.ok(crewBean.getCrewMembers().size()).build(); | |
| } | |
| @DELETE | |
| @Produces(MediaType.TEXT_PLAIN) | |
| @Path("/{name}") | |
| public Response deleteMember(@PathParam("name") String name){ | |
| if (name == null || name.length() == 0){ | |
| return Response.status(403).build(); | |
| } | |
| crewBean.deleteMember(name); | |
| // exo: supprimer un crewMember avec une boucle for | |
| return Response.ok(crewBean.getCrewMembers().size()).build(); | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import javax.ejb.Stateless; | |
| import java.util.ArrayList; | |
| import java.util.List; | |
| import java.util.stream.Collectors; | |
| @Stateless | |
| public class CrewBean { | |
| public static List<CrewMember> getCrewMembers() { | |
| return crewMembers; | |
| } | |
| private static List<CrewMember> crewMembers = new ArrayList<>(); | |
| public boolean addMember(CrewMember crewMember) { | |
| /** autre façon de faire | |
| var hasMatch = crewMembers.stream().anyMatch(cm -> cm.getName().equals(crewMember.getName())); | |
| if (hasMatch){ | |
| return Response.status(409).build(); | |
| }*/ | |
| for (var cm : crewMembers) { | |
| if (crewMember.getName().equals(cm.getName())) { | |
| return false; | |
| } | |
| } | |
| crewMembers.add(crewMember); | |
| return true; | |
| } | |
| public void deleteMember(String name){ | |
| crewMembers = crewMembers.stream().filter(crewMember -> !crewMember.getName().equals(name)).collect(Collectors.toList()); | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment