)]}'
{
  "commit": "5a449bcfa167d92fa2b9e79c8b9499b0114ec486",
  "tree": "da2f1c0af6be912c37b88021ac57c5e8700a554e",
  "parents": [
    "c967804bdcdbd5454b11e85ece5e1f4a8d1877d9"
  ],
  "author": {
    "name": "meder@google.com",
    "email": "meder@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Sun Jan 30 23:10:56 2011 +0000"
  },
  "committer": {
    "name": "meder@google.com",
    "email": "meder@google.com@8db76d5a-ed1c-0410-87a9-c151d255dfc7",
    "time": "Sun Jan 30 23:10:56 2011 +0000"
  },
  "message": "Rolling back, need to figure out why XsrfToken is excluded by type filter.\n\nThis change adds couple of things:\n- abstract class which calls abstract XSRF token validation method based on\nannotations (@XsrfProtect, @NoXsrfProtect).\n- GWT RPC XSRF protection based on the above class, which derives XSRF token\nfrom session cookie by computing MD5 over the cookie\u0027s value. Token can be\nobtained from XsrfTokenService and must be set on client RPC endpoint via\nHasRpcToken interface.\n\n\nReview at http://gwt-code-reviews.appspot.com/1251801\n\nReview by: jat@google.com\n\ngit-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9658 8db76d5a-ed1c-0410-87a9-c151d255dfc7\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "25a9c73986126fbee58275b297c3978927766258",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/ExternalPermutationWorkerFactory.java",
      "new_id": "b7cbd62638e4f2838b6f11c60dd7bb7bc3a238c4",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/ExternalPermutationWorkerFactory.java"
    },
    {
      "type": "modify",
      "old_id": "69e4e61113cf18b735444aad92bf06c3cfa377af",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/dev/util/Util.java",
      "new_id": "77bbb0d9b2a2f64c312657d615f545b6fde0cb4b",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/dev/util/Util.java"
    },
    {
      "type": "modify",
      "old_id": "f4b0a36fd883b00312d5bd3b1a8649625b412798",
      "old_mode": 33188,
      "old_path": "dev/core/src/com/google/gwt/util/tools/Utility.java",
      "new_id": "c0fc6e2a2c1377e80cf6c4a7ae0afc5de1345285",
      "new_mode": 33188,
      "new_path": "dev/core/src/com/google/gwt/util/tools/Utility.java"
    },
    {
      "type": "modify",
      "old_id": "1e9cb58ad45ce95067d59cb15a7fb8b93c2fea78",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/i18n/rebind/keygen/MD5KeyGenerator.java",
      "new_id": "155b31f6896c001fdf90a8b80e3a3adb54062a7d",
      "new_mode": 33188,
      "new_path": "user/src/com/google/gwt/i18n/rebind/keygen/MD5KeyGenerator.java"
    },
    {
      "type": "delete",
      "old_id": "eab0ca5554dd78cf59ed8ff9d022388057a41b7b",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/client/rpc/XsrfProtectedService.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "467b547329f197ad96d7e8b951e66ec53061b2fa",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/client/rpc/XsrfToken.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "524b5d859f0a9537e2403be433e69b6dc63d1dbc",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/client/rpc/XsrfTokenService.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "440c643dcd8206f6ce70a2df787ddfe9c127f784",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/client/rpc/XsrfTokenServiceAsync.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "f80a1364c58a0bc64b58edaf2068826fadaf63e0",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/client/rpc/impl/RemoteServiceProxy.java",
      "new_id": "f7df811012e5380c2f2eb4778af357fee00edaac",
      "new_mode": 33188,
      "new_path": "user/src/com/google/gwt/user/client/rpc/impl/RemoteServiceProxy.java"
    },
    {
      "type": "delete",
      "old_id": "6c1f3b6a7154bfe221107faf2c07b7579bc9cd02",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/server/Util.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "ae6f842d130d21db26d6f6d1216d8fb3cb00046e",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/server/rpc/AbstractXsrfProtectedServiceServlet.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "36b9501b72723a4f8240b4a2e79687b213c2b522",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/server/rpc/NoXsrfProtect.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "6676676eea57623fbfd9b80321f07e541b45beb1",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/server/rpc/XsrfProtect.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "6aa33a471c54810c9c494105c98283e02ae6f81c",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/server/rpc/XsrfProtectedServiceServlet.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "48a4c86094889a24710287608066b99a4b34f854",
      "old_mode": 33188,
      "old_path": "user/src/com/google/gwt/user/server/rpc/XsrfTokenServiceServlet.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "7dd3872960d47f77b3124c6f3f10ccc7e8e7db16",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/RPCSuite.gwt.xml",
      "new_id": "fba0744241025026e0ea12ac2da2651f6b6aff7b",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/RPCSuite.gwt.xml"
    },
    {
      "type": "modify",
      "old_id": "c11481cd0d9ed537d3774dadf8cff766ce5a4f9d",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/RPCSuite.java",
      "new_id": "44a54786b1517354afce21f9f3be9f783f41bb30",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/RPCSuite.java"
    },
    {
      "type": "delete",
      "old_id": "6dcf6fd470cde8adf477acc502c84c03921f8547",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/client/rpc/XsrfProtectionTest.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "675b66aa0eb9adcf892e1d34ed127c0f4d1e92f3",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/client/rpc/XsrfTestService.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "09b9797f2075e4ff6334ba9a9e267ab122c02a67",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/client/rpc/XsrfTestServiceAsync.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "38eead3d3a09b19b7ced06e292ef6eeecd35945a",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/server/UtilTest.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "498266829974913c0cf34b5423beb197e28ee4de",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/server/rpc/AbstractXsrfProtectedServiceServletTest.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "865c48c1410a949e9e8293a845c5aff1834dd1b0",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/server/rpc/MockHttpServletRequest.java",
      "new_id": "8cd037511c6eacf126893039651b24079eb03867",
      "new_mode": 33188,
      "new_path": "user/test/com/google/gwt/user/server/rpc/MockHttpServletRequest.java"
    },
    {
      "type": "delete",
      "old_id": "cbfe938ce05a5686af01fc8f410cc0e89284606f",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/server/rpc/MockXsrfTokenServiceImpl.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "13c7a9b5055ae69cee164bf8dc510b3cea8077b1",
      "old_mode": 33188,
      "old_path": "user/test/com/google/gwt/user/server/rpc/XsrfTestServiceImpl.java",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    }
  ]
}
