OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2010 Google, Inc. All Rights Reserved. | 2 * Copyright (C) 2010 Google, Inc. All Rights Reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 24 matching lines...) Expand all Loading... |
35 | 35 |
36 class DecodedDataDocumentParser : public DocumentParser { | 36 class DecodedDataDocumentParser : public DocumentParser { |
37 public: | 37 public: |
38 // Only used by the XMLDocumentParser to communicate back to | 38 // Only used by the XMLDocumentParser to communicate back to |
39 // XMLHttpRequest if the responseXML was well formed. | 39 // XMLHttpRequest if the responseXML was well formed. |
40 virtual bool wellFormed() const { return true; } | 40 virtual bool wellFormed() const { return true; } |
41 | 41 |
42 // The below functions are used by DocumentWriter (the loader). | 42 // The below functions are used by DocumentWriter (the loader). |
43 virtual void appendBytes(const char* bytes, size_t length) OVERRIDE; | 43 virtual void appendBytes(const char* bytes, size_t length) OVERRIDE; |
44 virtual void flush() OVERRIDE; | 44 virtual void flush() OVERRIDE; |
45 virtual bool needsDecoder() const OVERRIDE FINAL { return m_needsDecoder; } | 45 virtual bool needsDecoder() const OVERRIDE FINAL { return !m_decoder; } |
46 virtual void setDecoder(PassOwnPtr<TextResourceDecoder>) OVERRIDE; | 46 virtual void setDecoder(PassOwnPtr<TextResourceDecoder>) OVERRIDE FINAL; |
47 virtual TextResourceDecoder* decoder() OVERRIDE FINAL; | 47 virtual TextResourceDecoder* decoder() OVERRIDE FINAL; |
48 | 48 virtual void setHasAppendedData() OVERRIDE FINAL; |
49 PassOwnPtr<TextResourceDecoder> takeDecoder(); | |
50 | 49 |
51 protected: | 50 protected: |
52 explicit DecodedDataDocumentParser(Document*); | 51 explicit DecodedDataDocumentParser(Document*); |
53 virtual ~DecodedDataDocumentParser(); | 52 virtual ~DecodedDataDocumentParser(); |
54 | 53 |
55 private: | 54 private: |
56 // append is used by DocumentWriter::replaceDocument. | 55 // append is used by DocumentWriter::replaceDocument. |
57 virtual void append(PassRefPtr<StringImpl>) = 0; | 56 virtual void append(PassRefPtr<StringImpl>) = 0; |
58 | 57 |
59 void updateDocument(String& decodedData); | 58 void updateDocument(String& decodedData); |
60 | 59 |
61 bool m_needsDecoder; | 60 bool m_hasAppendedData; |
62 OwnPtr<TextResourceDecoder> m_decoder; | 61 OwnPtr<TextResourceDecoder> m_decoder; |
63 }; | 62 }; |
64 | 63 |
65 } | 64 } |
66 | 65 |
67 #endif // DecodedDataDocumentParser_h | 66 #endif // DecodedDataDocumentParser_h |
OLD | NEW |