You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@royale.apache.org by yi...@apache.org on 2019/07/21 06:47:14 UTC
[royale-asjs] branch develop updated: Add IFileModel.size and
remove FileLoader dependencies from loaders
This is an automated email from the ASF dual-hosted git repository.
yishayw pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git
The following commit(s) were added to refs/heads/develop by this push:
new 899f744 Add IFileModel.size and remove FileLoader dependencies from loaders
899f744 is described below
commit 899f74407b5540241c423af9b8f225c0fd9693e1
Author: DESKTOP-RH4S838\Yishay <yi...@hotmail.com>
AuthorDate: Sun Jul 21 09:46:56 2019 +0300
Add IFileModel.size and remove FileLoader dependencies from loaders
---
examples/royale/FileProxy/src/main/royale/FileProxy.mxml | 3 +--
.../src/main/royale/org/apache/royale/file/FileProxy.as | 8 ++++++++
.../src/main/royale/org/apache/royale/file/IFileModel.as | 11 ++++++++++-
.../main/royale/org/apache/royale/file/beads/FileLoader.as | 5 +++--
.../org/apache/royale/file/beads/FileLoaderAndUploader.as | 5 +++--
.../main/royale/org/apache/royale/file/beads/FileModel.as | 9 ++++++++-
.../org/apache/royale/file/beads/FileModelWithParams.as | 13 +++++++++++++
.../royale/org/apache/royale/file/beads/FileUploader.as | 5 +++--
8 files changed, 49 insertions(+), 10 deletions(-)
diff --git a/examples/royale/FileProxy/src/main/royale/FileProxy.mxml b/examples/royale/FileProxy/src/main/royale/FileProxy.mxml
index 39f318a..80be2c2 100644
--- a/examples/royale/FileProxy/src/main/royale/FileProxy.mxml
+++ b/examples/royale/FileProxy/src/main/royale/FileProxy.mxml
@@ -33,7 +33,6 @@ limitations under the License.
<![CDATA[
import org.apache.royale.events.Event;
import org.apache.royale.events.MouseEvent;
- import org.apache.royale.file.beads.FileModel;
import org.apache.royale.html.SimpleAlert;
protected function clickHandler(event:org.apache.royale.events.MouseEvent):void
@@ -51,7 +50,7 @@ limitations under the License.
private function blobChangedHandler(e:org.apache.royale.events.Event):void
{
var fileModel:FileModel = myFileProxy.model as FileModel;
- SimpleAlert.show(fileModel.blob.length + " bytes of " + fileModel.name + " were loaded", this);
+ SimpleAlert.show(myFileProxy.size + " bytes of " + fileModel.name + " were loaded", this);
}
]]>
diff --git a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/FileProxy.as b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/FileProxy.as
index 4179ae9..e4fb53b 100644
--- a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/FileProxy.as
+++ b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/FileProxy.as
@@ -93,6 +93,14 @@ package org.apache.royale.file
}
/**
+ * @copy org.apache.royale.file.IFileModel#size
+ */
+ public function get size():Number
+ {
+ return (model as IFileModel).size;
+ }
+
+ /**
* @copy org.apache.royale.file.IFileModel#blob
*/
public function get blob():Object
diff --git a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/IFileModel.as b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/IFileModel.as
index ba17788..dcd2532 100644
--- a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/IFileModel.as
+++ b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/IFileModel.as
@@ -37,6 +37,16 @@ package org.apache.royale.file
function get type():String;
/**
+ * The size of the file
+ *
+ * @langversion 3.0
+ * @playerversion Flash 10.2
+ * @playerversion AIR 2.6
+ * @productversion Royale 0.9
+ */
+ function get size():Number;
+
+ /**
* The last modified time of the file, in millisecond since the UNIX epoch (January 1st, 1970 at Midnight).
*
* @langversion 3.0
@@ -64,7 +74,6 @@ package org.apache.royale.file
* @playerversion AIR 2.6
* @productversion Royale 0.9.6
*/
-
function get blob():Object;
/**
diff --git a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileLoader.as b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileLoader.as
index b8c6575..bfebafd 100644
--- a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileLoader.as
+++ b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileLoader.as
@@ -20,6 +20,7 @@ package org.apache.royale.file.beads
import org.apache.royale.core.IBead;
import org.apache.royale.core.IStrand;
import org.apache.royale.file.FileProxy;
+ import org.apache.royale.file.IFileModel;
import org.apache.royale.utils.BinaryData;
COMPILE::SWF
@@ -97,9 +98,9 @@ package org.apache.royale.file.beads
_strand = value;
}
- private function get fileModel():FileModel
+ private function get fileModel():IFileModel
{
- return (_strand as FileProxy).model as FileModel;
+ return (_strand as FileProxy).model as IFileModel;
}
}
diff --git a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileLoaderAndUploader.as b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileLoaderAndUploader.as
index a5b7e47..2b870a1 100644
--- a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileLoaderAndUploader.as
+++ b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileLoaderAndUploader.as
@@ -21,6 +21,7 @@ package org.apache.royale.file.beads
import org.apache.royale.core.IStrand;
import org.apache.royale.events.Event;
import org.apache.royale.file.FileProxy;
+ import org.apache.royale.file.IFileModel;
/**
* The FileLoaderAndUploader is a compound bead that allows you
@@ -80,8 +81,8 @@ package org.apache.royale.file.beads
public function upload(url:String):void
{
- var fileModel:FileModel = (_strand as FileProxy).model as FileModel;
- if (!fileModel.blob)
+ var fileModel:IFileModel = (_strand as FileProxy).model as IFileModel;
+ if (fileModel.size <= 0)
{
_url = url;
(_strand as FileProxy).model.addEventListener("blobChanged", blobChangedHandler);
diff --git a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileModel.as b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileModel.as
index 0abaa36..d1d3d60 100644
--- a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileModel.as
+++ b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileModel.as
@@ -86,7 +86,14 @@ package org.apache.royale.file.beads
*/
public function get size():Number
{
- return _data.size;
+ COMPILE::SWF
+ {
+ return _data.size;
+ }
+ COMPILE::JS
+ {
+ return blob ? blob.length : -1;
+ }
}
/**
diff --git a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileModelWithParams.as b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileModelWithParams.as
index 5ffec8b..edf6f1b 100644
--- a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileModelWithParams.as
+++ b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileModelWithParams.as
@@ -113,5 +113,18 @@ package org.apache.royale.file.beads
{
_fileParamName = value;
}
+
+ override public function get size():Number
+ {
+ COMPILE::SWF
+ {
+ return super.size;
+ }
+ COMPILE::JS
+ {
+ var myBlob:Blob = _blob["get"](fileParamName) as Blob;
+ return myBlob ? myBlob.size : -1;
+ }
+ }
}
}
diff --git a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileUploader.as b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileUploader.as
index 4bf6fe7..c8eb3cb 100644
--- a/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileUploader.as
+++ b/frameworks/projects/Network/src/main/royale/org/apache/royale/file/beads/FileUploader.as
@@ -22,6 +22,7 @@ package org.apache.royale.file.beads
import org.apache.royale.events.Event;
import org.apache.royale.events.IEventDispatcher;
import org.apache.royale.file.FileProxy;
+ import org.apache.royale.file.IFileModel;
import org.apache.royale.net.URLBinaryLoader;
import org.apache.royale.net.URLRequest;
@@ -75,12 +76,12 @@ package org.apache.royale.file.beads
// COMPILE::SWF
// {
// var flashURL:flash.net.URLRequest = new URLRequest(url.url);
-// (host.model as FileModel).fileReference.upload(flashURL);
+// (host.model as IFileModel).fileReference.upload(flashURL);
// }
var binaryUploader:URLBinaryLoader = new URLBinaryLoader();
var req:URLRequest = new URLRequest();
req.method = "POST";
- req.data = (host.model as FileModel).blob;
+ req.data = (host.model as IFileModel).blob;
req.url = url;
binaryUploader.addEventListener(Event.COMPLETE, completeHandler);
binaryUploader.load(req);