Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(292)

Issue 10944005: Pepper WebSocket API: Implement new design Chrome IPC (Closed)

Created:
8 years, 3 months ago by Takashi Toyoshima
Modified:
8 years, 2 months ago
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, jam
Visibility:
Public.

Description

Pepper WebSocket API: Implement new design Chrome IPC. This change implements new Chrome IPC for PPB_WebSocket. After this change, all mode including out of process will work with new design. It doesn't depend on old SRPC design any more. BUG=87310, 116317 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=160783

Patch Set 1 #

Patch Set 2 : wip #

Total comments: 1

Patch Set 3 : simple send and receive #

Patch Set 4 : 13/25 tests pass #

Patch Set 5 : 25/25 tests pass #

Total comments: 1

Patch Set 6 : almost done #

Patch Set 7 : rebase #

Patch Set 8 : apply unsolicited reply IPC #

Patch Set 9 : update #

Patch Set 10 : fix android build #

Patch Set 11 : component build fix #

Patch Set 12 : retry #

Total comments: 26

Patch Set 13 : (not for review: rebase) #

Patch Set 14 : reflects the 1st review #

Total comments: 1

Patch Set 15 : (not for review: build fix trial) #

Patch Set 16 : (not for review: fix win build) #

Total comments: 11

Patch Set 17 : reflects the 2nd review #

Patch Set 18 : rebase (TODO: unittest) #

Patch Set 19 : for the next review #

Patch Set 20 : fix DCHECK failures #

Patch Set 21 : fix wront NOTREACHED() #

Patch Set 22 : fix AbortCalls DCHECK failures #

Total comments: 6

Patch Set 23 : fix nits #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1424 lines, -723 lines) Patch
M chrome/test/ppapi/ppapi_browsertest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +25 lines, -0 lines 0 comments Download
M content/content_renderer.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +2 lines, -0 lines 0 comments Download
M content/public/renderer/renderer_ppapi_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 2 chunks +9 lines, -0 lines 0 comments Download
M content/renderer/pepper/content_renderer_pepper_host_factory.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +8 lines, -0 lines 0 comments Download
M content/renderer/pepper/mock_renderer_ppapi_host.h View 1 2 3 4 5 6 7 2 chunks +2 lines, -1 line 0 comments Download
M content/renderer/pepper/mock_renderer_ppapi_host.cc View 1 2 3 4 5 6 7 1 chunk +6 lines, -0 lines 0 comments Download
M content/renderer/pepper/pepper_in_process_resource_creation.h View 1 2 3 4 5 6 1 chunk +2 lines, -0 lines 0 comments Download
M content/renderer/pepper/pepper_in_process_resource_creation.cc View 1 2 3 4 5 6 2 chunks +8 lines, -0 lines 0 comments Download
A content/renderer/pepper/pepper_websocket_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +99 lines, -0 lines 0 comments Download
A content/renderer/pepper/pepper_websocket_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +290 lines, -0 lines 0 comments Download
M content/renderer/pepper/renderer_ppapi_host_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +2 lines, -0 lines 0 comments Download
M content/renderer/pepper/renderer_ppapi_host_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +8 lines, -0 lines 0 comments Download
M ppapi/host/ppapi_host.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +3 lines, -0 lines 0 comments Download
M ppapi/host/ppapi_host.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +6 lines, -0 lines 0 comments Download
M ppapi/ppapi_proxy.gypi View 1 2 3 4 5 6 8 9 10 11 12 13 14 1 chunk +2 lines, -0 lines 0 comments Download
M ppapi/ppapi_shared.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +0 lines, -1 line 0 comments Download
M ppapi/ppapi_tests.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/proxy/plugin_dispatcher.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 1 chunk +2 lines, -1 line 0 comments Download
M ppapi/proxy/ppapi_messages.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 chunk +80 lines, -0 lines 0 comments Download
M ppapi/proxy/resource_creation_proxy.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +1 line, -1 line 0 comments Download
M ppapi/proxy/resource_creation_proxy.cc View 1 2 3 4 5 6 7 8 9 10 11 12 3 chunks +5 lines, -5 lines 0 comments Download
A ppapi/proxy/websocket_resource.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 17 1 chunk +157 lines, -0 lines 0 comments Download
A ppapi/proxy/websocket_resource.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 1 chunk +509 lines, -0 lines 0 comments Download
A ppapi/proxy/websocket_resource_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 1 chunk +168 lines, -0 lines 0 comments Download
M ppapi/tests/test_websocket.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 3 chunks +20 lines, -5 lines 0 comments Download
M ppapi/thunk/interfaces_ppb_public_dev.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +0 lines, -3 lines 0 comments Download
M ppapi/thunk/interfaces_ppb_public_stable.h View 2 3 4 5 7 1 chunk +1 line, -0 lines 0 comments Download
M ppapi/thunk/ppb_websocket_api.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 4 chunks +5 lines, -4 lines 0 comments Download
M ppapi/thunk/resource_creation_api.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +1 line, -1 line 0 comments Download
M ppapi/thunk/thunk.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +2 lines, -0 lines 0 comments Download
M webkit/glue/webkit_glue.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +0 lines, -2 lines 0 comments Download
D webkit/plugins/ppapi/ppb_websocket_impl.h View 1 chunk +0 lines, -155 lines 0 comments Download
D webkit/plugins/ppapi/ppb_websocket_impl.cc View 1 chunk +0 lines, -538 lines 0 comments Download
M webkit/plugins/ppapi/resource_creation_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +0 lines, -1 line 0 comments Download
M webkit/plugins/ppapi/resource_creation_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +0 lines, -5 lines 0 comments Download

Messages

Total messages: 29 (0 generated)
Takashi Toyoshima
I took over Brett's CL and start to implement it. I just make the CL ...
8 years, 3 months ago (2012-09-19 00:52:56 UTC) #1
brettw
http://codereview.chromium.org/10944005/diff/16004/ppapi/thunk/interfaces_ppb_public_stable.h File ppapi/thunk/interfaces_ppb_public_stable.h (right): http://codereview.chromium.org/10944005/diff/16004/ppapi/thunk/interfaces_ppb_public_stable.h#newcode80 ppapi/thunk/interfaces_ppb_public_stable.h:80: //PROXIED_IFACE(NoAPIName, PPB_WEBSOCKET_INTERFACE_1_0, PPB_WebSocket_1_0) This is why the interface isn't ...
8 years, 3 months ago (2012-09-24 18:25:36 UTC) #2
Takashi Toyoshima
Hum... when I enabled the PROXIED_IFACE line, linking failed with the following error. > /usr/local/google/home/toyoshim/chromium/src/ppapi/../ppapi/thunk/interfaces_pp ...
8 years, 2 months ago (2012-09-25 17:46:04 UTC) #3
brettw
On Tue, Sep 25, 2012 at 10:46 AM, <toyoshim@chromium.org> wrote: > Hum... when I enabled ...
8 years, 2 months ago (2012-09-25 19:50:31 UTC) #4
Takashi Toyoshima
Thank you Brett. Adding ppb_websocket_thunk.cc into ppapi_proxy.gypi works. Now patch set 9 passed all tests ...
8 years, 2 months ago (2012-09-26 00:06:46 UTC) #5
brettw
You should just be able to send a "reply" without a call. Make the sequence ...
8 years, 2 months ago (2012-09-27 05:09:41 UTC) #6
Takashi Toyoshima
Hi. Now, I still have a build problem on android and windows. But, can you ...
8 years, 2 months ago (2012-10-03 01:35:00 UTC) #7
brettw
This looks pretty good, thanks for the fast work. http://codereview.chromium.org/10944005/diff/52001/content/renderer/pepper/pepper_websocket_host.cc File content/renderer/pepper/pepper_websocket_host.cc (right): http://codereview.chromium.org/10944005/diff/52001/content/renderer/pepper/pepper_websocket_host.cc#newcode74 content/renderer/pepper/pepper_websocket_host.cc:74: ...
8 years, 2 months ago (2012-10-03 04:54:02 UTC) #8
Takashi Toyoshima
I reflect review comments. Could you take another look though I'm still struggling with android ...
8 years, 2 months ago (2012-10-03 11:41:50 UTC) #9
Takashi Toyoshima
http://codereview.chromium.org/10944005/diff/52001/content/renderer/pepper/pepper_websocket_host.cc File content/renderer/pepper/pepper_websocket_host.cc (right): http://codereview.chromium.org/10944005/diff/52001/content/renderer/pepper/pepper_websocket_host.cc#newcode74 content/renderer/pepper/pepper_websocket_host.cc:74: "", OK. I replaced all "" with std::string() in ...
8 years, 2 months ago (2012-10-03 11:42:20 UTC) #10
Takashi Toyoshima
http://codereview.chromium.org/10944005/diff/52001/ppapi/proxy/websocket_resource.cc File ppapi/proxy/websocket_resource.cc (right): http://codereview.chromium.org/10944005/diff/52001/ppapi/proxy/websocket_resource.cc#newcode118 ppapi/proxy/websocket_resource.cc:118: const uint8_t minimumProtocolCharacter = '!'; // U+0021. Firstly, I ...
8 years, 2 months ago (2012-10-03 11:46:28 UTC) #11
Takashi Toyoshima
Hi Brett, Sorry for many notifications. Now, I resolved build issues. So Patch Set 16 ...
8 years, 2 months ago (2012-10-03 14:14:46 UTC) #12
brettw
Thanks, I found a few more issues but I think this should be the last ...
8 years, 2 months ago (2012-10-03 20:30:24 UTC) #13
Takashi Toyoshima
Hi, Brett. Default IPC reply has a type 0, and should be identified by sequence ...
8 years, 2 months ago (2012-10-04 02:18:22 UTC) #14
brettw
Under what conditions can it be returned before the CallRenderer returns? The current code for ...
8 years, 2 months ago (2012-10-04 03:34:49 UTC) #15
Takashi Toyoshima
Hum..., I try it with the latest revision. FYI, I faced the problematic cases in ...
8 years, 2 months ago (2012-10-04 03:40:22 UTC) #16
Takashi Toyoshima
This problem still exist in the latest revision. I use new CallRenderer<> with CallbackType. But ...
8 years, 2 months ago (2012-10-04 05:38:46 UTC) #17
Takashi Toyoshima
Ah... OK, I see. I should call PluginResource::OnReplyReceived() explicitly in default case. Actually, IPC replies ...
8 years, 2 months ago (2012-10-04 06:08:16 UTC) #18
Takashi Toyoshima
Ugh, today I can not solve following problems. 1. As I said, Reply IPCs are ...
8 years, 2 months ago (2012-10-04 14:52:54 UTC) #19
brettw
I talked to Victor today and it turns out I was confused about two patches, ...
8 years, 2 months ago (2012-10-04 18:01:12 UTC) #20
Takashi Toyoshima
short update; reverting router change resolves both troubles. Thanks!
8 years, 2 months ago (2012-10-05 01:23:39 UTC) #21
brettw
The fix should be in: http://src.chromium.org/viewvc/chrome?view=rev&revision=160254 Please let me know if you're still seeing problems ...
8 years, 2 months ago (2012-10-05 03:08:49 UTC) #22
Takashi Toyoshima
Thanks. I finished resolving issues, and adding resource unit tests. Could you take another look ...
8 years, 2 months ago (2012-10-05 07:35:01 UTC) #23
Takashi Toyoshima
after Patch Set 19, I revise three points to resolve test failures. 1. reset connecting_ ...
8 years, 2 months ago (2012-10-07 05:13:19 UTC) #24
brettw
LGTM! https://codereview.chromium.org/10944005/diff/57020/ppapi/proxy/websocket_resource_unittest.cc File ppapi/proxy/websocket_resource_unittest.cc (right): https://codereview.chromium.org/10944005/diff/57020/ppapi/proxy/websocket_resource_unittest.cc#newcode48 ppapi/proxy/websocket_resource_unittest.cc:48: } Nit: need " // namespace"
8 years, 2 months ago (2012-10-08 21:45:45 UTC) #25
bbudge
Drive by, a couple of nits. http://codereview.chromium.org/10944005/diff/57020/content/public/renderer/renderer_ppapi_host.h File content/public/renderer/renderer_ppapi_host.h (right): http://codereview.chromium.org/10944005/diff/57020/content/public/renderer/renderer_ppapi_host.h#newcode41 content/public/renderer/renderer_ppapi_host.h:41: // Returns teh ...
8 years, 2 months ago (2012-10-08 22:15:56 UTC) #26
Takashi Toyoshima
Thanks. I'll push it into CQ!! http://codereview.chromium.org/10944005/diff/57020/content/public/renderer/renderer_ppapi_host.h File content/public/renderer/renderer_ppapi_host.h (right): http://codereview.chromium.org/10944005/diff/57020/content/public/renderer/renderer_ppapi_host.h#newcode41 content/public/renderer/renderer_ppapi_host.h:41: // Returns teh ...
8 years, 2 months ago (2012-10-09 01:38:42 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/toyoshim@chromium.org/10944005/87002
8 years, 2 months ago (2012-10-09 01:39:01 UTC) #28
commit-bot: I haz the power
8 years, 2 months ago (2012-10-09 03:43:50 UTC) #29
Change committed as 160783

Powered by Google App Engine
This is Rietveld 408576698