@GET @Produces("text/plain") public String handle( @QueryParam("file") String file, @QueryParam("size") String size, @Context HttpContext hc) { OAuthServerRequest osr = new OAuthServerRequest(hc.getRequest()); OAuthSecrets secrets = new OAuthSecrets().consumerSecret("kd94hf93k423kf44").tokenSecret("pfkkdhi9sl3r4s00"); OAuthParameters params = new OAuthParameters().readRequest(osr); // ensure query parameters are as expected assertEquals(file, "vacation.jpg"); assertEquals(size, "original"); // ensure query parameters correctly parsed into OAuth parameters object assertEquals(params.getConsumerKey(), "dpf43f3p2l4k3l03"); assertEquals(params.getToken(), "nnch734d00sl2jdk"); assertEquals(params.getSignatureMethod(), "HMAC-SHA1"); assertEquals(params.getTimestamp(), "1191242096"); assertEquals(params.getNonce(), "kllo9940pd9333jh"); assertEquals(params.getVersion(), "1.0"); try { // verify the HMAC-SHA1 signature assertTrue(OAuthSignature.verify(osr, params, secrets)); } catch (OAuthSignatureException ose) { fail(ose.getMessage()); } return "PHOTO"; }