| Index: Source/bindings/v8/custom/V8BlobCustomHelpers.h
|
| diff --git a/Source/bindings/v8/custom/V8BlobCustomHelpers.h b/Source/bindings/v8/custom/V8BlobCustomHelpers.h
|
| index 8bb22f0dac3b41646943a1244aba78b405b509df..ff5ebabbddfe003edc28908f88382e075f843edc 100644
|
| --- a/Source/bindings/v8/custom/V8BlobCustomHelpers.h
|
| +++ b/Source/bindings/v8/custom/V8BlobCustomHelpers.h
|
| @@ -40,12 +40,40 @@ class BlobBuilder;
|
| // Shared code between the custom constructor bindings for Blob and File.
|
| namespace V8BlobCustomHelpers {
|
|
|
| -// Extracts the "type" and "endings" properties out of the BlobPropertyBag passed to a Blob constructor.
|
| -// http://www.w3.org/TR/FileAPI/#constructorParams
|
| -// Returns true if everything went well, false if a JS exception was thrown.
|
| -bool processBlobPropertyBag(v8::Local<v8::Value> propertyBag, const char* blobClassName, String& contentType, String& endings, v8::Isolate*);
|
| +// Parsed properties from a BlobPropertyBag or a FilePropertyBag.
|
| +//
|
| +// Instances are stack-allocated by the File and Blob constructor.
|
| +//
|
| +// processBlobPropertyBag is only called when constructors receive a value for
|
| +// the optional BlobPropertyBag / FilePropertyBag argument. The defaults set in
|
| +// the constructor are used otherwise.
|
| +class ParsedProperties {
|
| +public:
|
| + String contentType;
|
| + String endings;
|
| +
|
| + // False if this contains the properties of a BlobPropertyBag.
|
| + bool hasFileProperties;
|
| +
|
| + void setLastModifiedDate(double);
|
| + void setDefaultLastModifiedDate();
|
| + double lastModifiedDate();
|
| +
|
| + explicit ParsedProperties(bool hasFileProperties);
|
| +
|
| + // Extracts the "type" and "endings" properties out of the BlobPropertyBag passed to a Blob constructor.
|
| + // http://www.w3.org/TR/FileAPI/#constructorParams
|
| + // Returns true if everything went well, false if a JS exception was thrown.
|
| + bool parseBlobPropertyBag(v8::Local<v8::Value> propertyBag, const char* blobClassName, v8::Isolate*);
|
| +
|
| +private:
|
| + double m_lastModifiedDate;
|
| +#ifndef NDEBUG
|
| + bool m_hasLastModifiedDate;
|
| +#endif // NDEBUG
|
| +};
|
|
|
| -// Appends the blobParts passed to a Blob constructor into a BlobBuilder.
|
| +// Appends the blobParts passed to a Blob or File constructor into a BlobBuilder.
|
| // http://www.w3.org/TR/FileAPI/#constructorParams
|
| // Returns true if everything went well, false if a JS exception was thrown.
|
| bool processBlobParts(v8::Local<v8::Object> blobParts, uint32_t blobPartsLength, const String& endings, BlobBuilder&, v8::Isolate*);
|
|
|