diff --git a/src/main/java/cactusServer/resources/InstancesRest.java b/src/main/java/cactusServer/resources/InstancesRest.java index 69d0602..0793efe 100644 --- a/src/main/java/cactusServer/resources/InstancesRest.java +++ b/src/main/java/cactusServer/resources/InstancesRest.java @@ -9,6 +9,7 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.Produces; +import javax.ws.rs.WebApplicationException; import javax.ws.rs.core.MediaType; import org.glassfish.jersey.process.internal.RequestScoped; @@ -36,12 +37,12 @@ } - // @Path("/test") - // @GET - // @Produces(MediaType.TEXT_PLAIN) - // public String hoge() { - // return "deploy jenkins from tomcat"; - // } +// @Path("/test") +// @GET +// @Produces(MediaType.TEXT_PLAIN) +// public String hoge() { +// return "deploy jenkins from tomcat"; +// } @Path("/{instanceId}") @GET @@ -86,7 +87,7 @@ @POST @Produces(MediaType.APPLICATION_JSON) - public URIAddressedEntity create(@FormParam("name") String name, @FormParam("state") Instance.State state, + public URIAddressedEntity createInstance(@FormParam("name") String name, @FormParam("state") Instance.State state, @FormParam("stageModel") String stageModel) { IDAddressedEntity ae = Instances.getInstance().createInstance(name, state, stageModel); return new URIAddressedEntity((INSTANCES_URI + "/" + ae.getId()), ae.getBody()); @@ -108,9 +109,9 @@ public URIAddressedEntity createCharacter(@PathParam("instanceId") String instanceId, @FormParam("accountURI") String accountURI, @FormParam("name") String name, @FormParam("position") Position3D position, @FormParam("angle") Angle angle, - @FormParam("model") String model) { + @FormParam("modelID") String modelID) { Instance instance = Instances.getInstance().getInstance(instanceId); - IDAddressedEntity ae = instance.createCharacter(instanceId, accountURI, name, position, angle, model); + IDAddressedEntity ae = instance.createCharacter(instanceId, accountURI, name, position, angle, modelID); return new URIAddressedEntity((INSTANCES_URI + "/" + instanceId + "/characters/" + ae.getId()), ae.getBody()); } @@ -124,6 +125,13 @@ IDAddressedEntity ae = instances.createPlayer(instanceURI, characterURI, cameraState, animationClassToStart); return new URIAddressedEntity((INSTANCES_URI + "/" + instanceURI + "/players/" + ae.getId()), ae.getBody()); } + + +// @PUT +// @Produces(MediaType.APPLICATION_JSON) +// public Instance updateInstance(@FormParam("state") Instance.State state) { +// return Instances.getInstance().updateInstance(name, state, stageID); +// } @Path("/players/{playerId}") @PUT @@ -136,16 +144,18 @@ animationClassToStart); } - // @Path("/characters/{characterId}") - // @PUT - // @Produces(MediaType.APPLICATION_JSON) - // public Character updateCharacter(@FormParam("characterId") String - // characterId, @FormParam("position") Position3D position, - // @FormParam("angle") Angle angle, @FormParam("model") String model) { - // Character response = Instance.updateCharacter(characterId, position, angle, - // model); - // response.setStatus(HttpServletResponse.SC_OK); - // } + @Path("/characters/{characterId}") + @PUT + @Produces(MediaType.APPLICATION_JSON) + public Character updateCharacter(@FormParam("characterId") String characterId, + @FormParam("position") Position3D position, @FormParam("angle") Angle angle, @FormParam("modelID") String modelID) { + Character character = updateCharacter(characterId, position, angle, modelID); + if (character != null) { + throw new WebApplicationException(200); + } else { + throw new WebApplicationException(400); + } + } // @DELETE // @Path("/destroyInstance")