| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "core/xml/DocumentXSLT.h" | 5 #include "core/xml/DocumentXSLT.h" |
| 6 | 6 |
| 7 #include "bindings/core/v8/DOMWrapperWorld.h" | 7 #include "bindings/core/v8/DOMWrapperWorld.h" |
| 8 #include "bindings/core/v8/ScriptState.h" | 8 #include "bindings/core/v8/ScriptState.h" |
| 9 #include "bindings/core/v8/V8AbstractEventListener.h" | 9 #include "bindings/core/v8/V8AbstractEventListener.h" |
| 10 #include "bindings/core/v8/V8Binding.h" | 10 #include "bindings/core/v8/V8Binding.h" |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 77 NOTREACHED(); | 77 NOTREACHED(); |
| 78 return v8::Local<v8::Value>(); | 78 return v8::Local<v8::Value>(); |
| 79 } | 79 } |
| 80 | 80 |
| 81 // If this event listener is attached to a ProcessingInstruction, keep a | 81 // If this event listener is attached to a ProcessingInstruction, keep a |
| 82 // weak reference back to it. That ProcessingInstruction is responsible for | 82 // weak reference back to it. That ProcessingInstruction is responsible for |
| 83 // detaching itself and clear out the reference. | 83 // detaching itself and clear out the reference. |
| 84 Member<ProcessingInstruction> m_processingInstruction; | 84 Member<ProcessingInstruction> m_processingInstruction; |
| 85 }; | 85 }; |
| 86 | 86 |
| 87 DocumentXSLT::DocumentXSLT() : m_transformSourceDocument(nullptr) {} | 87 DocumentXSLT::DocumentXSLT(Document& document) |
| 88 : Supplement<Document>(document), m_transformSourceDocument(nullptr) {} |
| 88 | 89 |
| 89 void DocumentXSLT::applyXSLTransform(Document& document, | 90 void DocumentXSLT::applyXSLTransform(Document& document, |
| 90 ProcessingInstruction* pi) { | 91 ProcessingInstruction* pi) { |
| 91 DCHECK(!pi->isLoading()); | 92 DCHECK(!pi->isLoading()); |
| 92 UseCounter::count(document, UseCounter::XSLProcessingInstruction); | 93 UseCounter::count(document, UseCounter::XSLProcessingInstruction); |
| 93 XSLTProcessor* processor = XSLTProcessor::create(document); | 94 XSLTProcessor* processor = XSLTProcessor::create(document); |
| 94 processor->setXSLStyleSheet(toXSLStyleSheet(pi->sheet())); | 95 processor->setXSLStyleSheet(toXSLStyleSheet(pi->sheet())); |
| 95 String resultMIMEType; | 96 String resultMIMEType; |
| 96 String newSource; | 97 String newSource; |
| 97 String resultEncoding; | 98 String resultEncoding; |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 172 | 173 |
| 173 const char* DocumentXSLT::supplementName() { | 174 const char* DocumentXSLT::supplementName() { |
| 174 return "DocumentXSLT"; | 175 return "DocumentXSLT"; |
| 175 } | 176 } |
| 176 | 177 |
| 177 bool DocumentXSLT::hasTransformSourceDocument(Document& document) { | 178 bool DocumentXSLT::hasTransformSourceDocument(Document& document) { |
| 178 return static_cast<DocumentXSLT*>( | 179 return static_cast<DocumentXSLT*>( |
| 179 Supplement<Document>::from(document, supplementName())); | 180 Supplement<Document>::from(document, supplementName())); |
| 180 } | 181 } |
| 181 | 182 |
| 182 DocumentXSLT& DocumentXSLT::from(Supplementable<Document>& document) { | 183 DocumentXSLT& DocumentXSLT::from(Document& document) { |
| 183 DocumentXSLT* supplement = static_cast<DocumentXSLT*>( | 184 DocumentXSLT* supplement = static_cast<DocumentXSLT*>( |
| 184 Supplement<Document>::from(document, supplementName())); | 185 Supplement<Document>::from(document, supplementName())); |
| 185 if (!supplement) { | 186 if (!supplement) { |
| 186 supplement = new DocumentXSLT; | 187 supplement = new DocumentXSLT(document); |
| 187 Supplement<Document>::provideTo(document, supplementName(), supplement); | 188 Supplement<Document>::provideTo(document, supplementName(), supplement); |
| 188 } | 189 } |
| 189 return *supplement; | 190 return *supplement; |
| 190 } | 191 } |
| 191 | 192 |
| 192 DEFINE_TRACE(DocumentXSLT) { | 193 DEFINE_TRACE(DocumentXSLT) { |
| 193 visitor->trace(m_transformSourceDocument); | 194 visitor->trace(m_transformSourceDocument); |
| 194 Supplement<Document>::trace(visitor); | 195 Supplement<Document>::trace(visitor); |
| 195 } | 196 } |
| 196 | 197 |
| 197 } // namespace blink | 198 } // namespace blink |
| OLD | NEW |