Fix playing of 8-bit sample files via webaudio.
[chromium-blink-merge.git] / webkit / glue / ftp_directory_listing_response_delegate.h
blob402d618bc7edf3b1745bb685c149c84ef8b8a10a
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 //
5 // A delegate class of WebURLLoaderImpl that handles text/vnd.chromium.ftp-dir
6 // data.
8 #ifndef WEBKIT_GLUE_FTP_DIRECTORY_LISTING_RESPONSE_DELEGATE_H_
9 #define WEBKIT_GLUE_FTP_DIRECTORY_LISTING_RESPONSE_DELEGATE_H_
11 #include <string>
13 #include "base/basictypes.h"
14 #include "third_party/WebKit/Source/WebKit/chromium/public/WebURLResponse.h"
16 namespace WebKit {
17 class WebURLLoader;
18 class WebURLLoaderClient;
21 class GURL;
23 namespace webkit_glue {
25 class FtpDirectoryListingResponseDelegate {
26 public:
27 FtpDirectoryListingResponseDelegate(WebKit::WebURLLoaderClient* client,
28 WebKit::WebURLLoader* loader,
29 const WebKit::WebURLResponse& response);
31 // Passed through from ResourceHandleInternal
32 void OnReceivedData(const char* data, int data_len);
33 void OnCompletedRequest();
35 private:
36 void Init(const GURL& response_url);
38 void SendDataToClient(const std::string& data);
40 // Pointers to the client and associated loader so we can make callbacks as
41 // we parse pieces of data.
42 WebKit::WebURLLoaderClient* client_;
43 WebKit::WebURLLoader* loader_;
45 // Buffer for data received from the network.
46 std::string buffer_;
48 DISALLOW_COPY_AND_ASSIGN(FtpDirectoryListingResponseDelegate);
51 } // namespace webkit_glue
53 #endif // WEBKIT_GLUE_FTP_DIRECTORY_LISTING_RESPONSE_DELEGATE_H_