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

Side by Side Diff: third_party/WebKit/Source/modules/filesystem/InspectorFileSystemAgent.cpp

Issue 1609313002: Use BlobCallback in toBlob instead of FileCallback (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase master and Renamed mimeType to contentType to match other bits in Blob.h Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/WebKit/Source/modules/filesystem/FileSystemCallbacks.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2011, 2012 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 are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 18 matching lines...) Expand all
29 */ 29 */
30 30
31 #include "modules/filesystem/InspectorFileSystemAgent.h" 31 #include "modules/filesystem/InspectorFileSystemAgent.h"
32 32
33 #include "bindings/core/v8/ExceptionStatePlaceholder.h" 33 #include "bindings/core/v8/ExceptionStatePlaceholder.h"
34 #include "bindings/core/v8/UnionTypesCore.h" 34 #include "bindings/core/v8/UnionTypesCore.h"
35 #include "core/dom/DOMArrayBuffer.h" 35 #include "core/dom/DOMArrayBuffer.h"
36 #include "core/dom/DOMImplementation.h" 36 #include "core/dom/DOMImplementation.h"
37 #include "core/dom/Document.h" 37 #include "core/dom/Document.h"
38 #include "core/events/Event.h" 38 #include "core/events/Event.h"
39 #include "core/fileapi/BlobCallback.h"
39 #include "core/fileapi/File.h" 40 #include "core/fileapi/File.h"
40 #include "core/fileapi/FileCallback.h"
41 #include "core/fileapi/FileError.h" 41 #include "core/fileapi/FileError.h"
42 #include "core/fileapi/FileReader.h" 42 #include "core/fileapi/FileReader.h"
43 #include "core/frame/LocalFrame.h" 43 #include "core/frame/LocalFrame.h"
44 #include "core/html/HTMLMediaElement.h" 44 #include "core/html/HTMLMediaElement.h"
45 #include "core/html/VoidCallback.h" 45 #include "core/html/VoidCallback.h"
46 #include "core/html/parser/TextResourceDecoder.h" 46 #include "core/html/parser/TextResourceDecoder.h"
47 #include "core/inspector/InspectedFrames.h" 47 #include "core/inspector/InspectedFrames.h"
48 #include "core/inspector/InspectorState.h" 48 #include "core/inspector/InspectorState.h"
49 #include "modules/filesystem/DOMFileSystem.h" 49 #include "modules/filesystem/DOMFileSystem.h"
50 #include "modules/filesystem/DirectoryEntry.h" 50 #include "modules/filesystem/DirectoryEntry.h"
(...skipping 382 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 } 433 }
434 434
435 private: 435 private:
436 bool didHitError(FileError* error) 436 bool didHitError(FileError* error)
437 { 437 {
438 reportResult(error->code()); 438 reportResult(error->code());
439 return true; 439 return true;
440 } 440 }
441 441
442 bool didGetEntry(Entry*); 442 bool didGetEntry(Entry*);
443 bool didGetFile(File*); 443 bool didGetFile(Blob*);
444 void didRead(); 444 void didRead();
445 445
446 void reportResult(FileError::ErrorCode errorCode, const String* result = 0, const String* charset = 0) 446 void reportResult(FileError::ErrorCode errorCode, const String* result = 0, const String* charset = 0)
447 { 447 {
448 m_requestCallback->sendSuccess(static_cast<int>(errorCode), result, char set); 448 m_requestCallback->sendSuccess(static_cast<int>(errorCode), result, char set);
449 } 449 }
450 450
451 FileContentRequest(PassRefPtrWillBeRawPtr<RequestFileContentCallback> reques tCallback, const String& url, bool readAsText, long long start, long long end, c onst String& charset) 451 FileContentRequest(PassRefPtrWillBeRawPtr<RequestFileContentCallback> reques tCallback, const String& url, bool readAsText, long long start, long long end, c onst String& charset)
452 : EventListener(EventListener::CPPEventListenerType) 452 : EventListener(EventListener::CPPEventListenerType)
453 , m_requestCallback(requestCallback) 453 , m_requestCallback(requestCallback)
(...skipping 30 matching lines...) Expand all
484 if (entry->isDirectory()) { 484 if (entry->isDirectory()) {
485 reportResult(FileError::TYPE_MISMATCH_ERR); 485 reportResult(FileError::TYPE_MISMATCH_ERR);
486 return true; 486 return true;
487 } 487 }
488 488
489 if (!entry->filesystem()->executionContext()) { 489 if (!entry->filesystem()->executionContext()) {
490 reportResult(FileError::ABORT_ERR); 490 reportResult(FileError::ABORT_ERR);
491 return true; 491 return true;
492 } 492 }
493 493
494 FileCallback* successCallback = CallbackDispatcherFactory<FileCallback>::cre ate(this, &FileContentRequest::didGetFile); 494 BlobCallback* successCallback = CallbackDispatcherFactory<BlobCallback>::cre ate(this, &FileContentRequest::didGetFile);
495 ErrorCallback* errorCallback = CallbackDispatcherFactory<ErrorCallback>::cre ate(this, &FileContentRequest::didHitError); 495 ErrorCallback* errorCallback = CallbackDispatcherFactory<ErrorCallback>::cre ate(this, &FileContentRequest::didHitError);
496 toFileEntry(entry)->file(successCallback, errorCallback); 496 toFileEntry(entry)->file(successCallback, errorCallback);
497 497
498 m_reader = FileReader::create(entry->filesystem()->executionContext()); 498 m_reader = FileReader::create(entry->filesystem()->executionContext());
499 m_mimeType = MIMETypeRegistry::getMIMETypeForPath(entry->name()); 499 m_mimeType = MIMETypeRegistry::getMIMETypeForPath(entry->name());
500 500
501 return true; 501 return true;
502 } 502 }
503 503
504 bool FileContentRequest::didGetFile(File* file) 504 bool FileContentRequest::didGetFile(Blob* file)
505 { 505 {
506 Blob* blob = file->Blob::slice(m_start, m_end, IGNORE_EXCEPTION); 506 Blob* blob = file->slice(m_start, m_end, IGNORE_EXCEPTION);
507 m_reader->setOnload(this); 507 m_reader->setOnload(this);
508 m_reader->setOnerror(this); 508 m_reader->setOnerror(this);
509 509
510 m_reader->readAsArrayBuffer(blob, IGNORE_EXCEPTION); 510 m_reader->readAsArrayBuffer(blob, IGNORE_EXCEPTION);
511 return true; 511 return true;
512 } 512 }
513 513
514 void FileContentRequest::didRead() 514 void FileContentRequest::didRead()
515 { 515 {
516 StringOrArrayBuffer resultAttribute; 516 StringOrArrayBuffer resultAttribute;
(...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after
762 return 0; 762 return 0;
763 } 763 }
764 764
765 DEFINE_TRACE(InspectorFileSystemAgent) 765 DEFINE_TRACE(InspectorFileSystemAgent)
766 { 766 {
767 visitor->trace(m_inspectedFrames); 767 visitor->trace(m_inspectedFrames);
768 InspectorBaseAgent::trace(visitor); 768 InspectorBaseAgent::trace(visitor);
769 } 769 }
770 770
771 } // namespace blink 771 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/modules/filesystem/FileSystemCallbacks.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698