Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pl.jrj.mdb.IMdbManager;
- import javax.naming.InitialContext;
- import javax.naming.NamingException;
- import javax.ws.rs.GET;
- import javax.ws.rs.Path;
- import javax.ws.rs.PathParam;
- import javax.ws.rs.Produces;
- import javax.ws.rs.core.MediaType;
- /**
- *
- * @author Sebastian Bartczak
- */
- @Path("/cntrl")
- public class RControl {
- private static int state = 0;
- private static int counter = 0;
- private static int error = 0;
- private static int sessionId = 0;
- public void lookupContext() {
- String lookupPath =
- "java:global/mdb-project/MdbManager!pl.jrj.mdb.IMdbManager";
- try {
- InitialContext context = new InitialContext();
- IMdbManager manager = (IMdbManager) context.lookup(lookupPath);
- sessionId = getNumber(manager.sessionId("117535"));
- } catch (NamingException e) {
- e.printStackTrace();
- }
- }
- private int getNumber(String number) {
- if (number.toLowerCase().startsWith("0b")) {
- return Integer.parseInt(number.substring(2), 2);
- }
- if (number.toLowerCase().startsWith("0x")) {
- return Integer.parseInt(number.substring(2), 16);
- }
- if (number.toLowerCase().startsWith("0") && number.length() > 0) {
- return Integer.parseInt(number.substring(1), 8);
- }
- return Integer.parseInt(number);
- }
- @GET
- @Path("/start")
- public void start() {
- this.lookupContext();
- if (state==0) {
- state = 1;
- } else {
- error++;
- }
- }
- @GET
- @Path("/stop")
- public void stop() {
- if (state==1) {
- state = 0;
- } else {
- error++;
- }
- }
- @GET
- @Path("/clr")
- public void clr() {
- counter = 0;
- error = 0;
- }
- @GET
- @Path("/icr")
- public void inc() {
- if (state==1) {
- counter++;
- } else {
- error++;
- }
- }
- @GET
- @Path("/dcr")
- public void dec() {
- if (state==1) {
- counter--;
- } else {
- error++;
- }
- }
- @GET
- @Path("/icr/{n}")
- public void incN(@PathParam("n") String n) {
- if (state==1) {
- counter += getNumber(n);
- } else {
- error++;
- }
- }
- @GET
- @Path("/dcr/{n}")
- public void decN(@PathParam("n") String n) {
- if (state==1) {
- counter -= getNumber(n);
- } else {
- error++;
- }
- }
- @GET
- @Produces(MediaType.TEXT_PLAIN)
- @Path("/res")
- public String res() {
- return String.valueOf(sessionId % counter);
- }
- @GET
- @Produces(MediaType.TEXT_PLAIN)
- @Path("/err")
- public String err() {
- return String.valueOf(sessionId % error);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement