Skip to content

FileLoader

uupaa edited this page Dec 30, 2016 · 5 revisions

Namespace

Entity of FileLoader module is located in the global.WebModule.FileLoader.
If you want publish to global namespace.

FileLoader モジュールの実体は、global.WebModule.FileLoader にあります。
global 名前空間に直接公開する事もできます。その場合は global.FileLoader でもアクセス可能になります。

API

  • FileLoader.loadString - リソースを文字列として読み込みます
    • FileLoader.loadText - リソースを文字列として読み込みます(この関数は FileLoader.loadString の alias です)
  • FileLoader.loadJSON - リソースを JSON Object として読み込みます
  • FileLoader.loadBlob - リソースを Blob Object として読み込みます
  • FileLoader.loadArrayBuffer - リソースを ArrayBuffer として読み込みます
  • FileLoader.toArrayBuffer - 様々な型のデータを読み込み ArrayBuffer に変換します

FileLoader.loadString

FileLoader.loadString(url:URLString, readyCallback:Function, errorCallback:Function = null):void は、 url を読み込み、読み込み成功で readyCallback をコールバックします。

  • readyCallback(result:String, url:URLString, httpStatusCode:UINT16):void を読み込み成功でコールバックします
  • errorCallback(error:Error, url:URLString, httpStatusCode:UINT16):void を読み込み失敗でコールバックします
    • httpStatusCode は、読み込み成功で 200系, 失敗で400または500系の HTTP_STATUS_CODE を返します
function testFileLoader_loadString(test, pass, miss) {
    var url = IN_NODE ? "package.json" // Because node.js process.cwd() -> "~/your/path/FileLoader"
                      : "../../package.json";

    FileLoader.loadString(url, function(result, url) {
        if ( /uupaa.fileloader.js/.test(result) ) {
            test.done(pass());
        } else {
            test.done(miss());
        }
    }, function(error) {
        test.done(miss());
    });
}

FileLoader.loadJSON

FileLoader.loadJSON(url:URLString, readyCallback:Function, errorCallback:Function = null):void は、 url を読み込み、読み込み成功で readyCallback をコールバックします。

  • readyCallback(result:JSON, url:URLString, httpStatusCode:UINT16):void を読み込み成功でコールバックします
  • errorCallback(error:Error, url:URLString, httpStatusCode:UINT16):void を読み込み失敗でコールバックします
    • httpStatusCode は、読み込み成功で 200系, 失敗で400または500系の HTTP_STATUS_CODE を返します
function testFileLoader_loadJSON(test, pass, miss) {
    var url = IN_NODE ? "package.json" // Because node.js process.cwd() -> "~/your/path/FileLoader"
                      : "../../package.json";

    FileLoader.loadJSON(url, function(result, url) {
        if (result.name === "uupaa.fileloader.js") {
            test.done(pass());
        } else {
            test.done(miss());
        }
    }, function(error) {
        test.done(miss());
    });
}

FileLoader.loadBlob

FileLoader.loadBlob(url:URLString, readyCallback:Function, errorCallback:Function = null):void は、 url を読み込み、読み込み成功で readyCallback をコールバックします。

  • readyCallback(result:Blob, url:URLString, httpStatusCode:UINT16):void を読み込み成功でコールバックします
  • errorCallback(error:Error, url:URLString, httpStatusCode:UINT16):void を読み込み失敗でコールバックします
    • httpStatusCode は、読み込み成功で 200系, 失敗で400または500系の HTTP_STATUS_CODE を返します
function testFileLoader_loadBlob(test, pass, miss) {
    var url = IN_NODE ? "package.json" // Because node.js process.cwd() -> "~/your/path/FileLoader"
                      : "../../package.json";

    FileLoader.loadBlob(url, function(blob, url) {
        FileLoader.toArrayBuffer(blob, function(buffer) {
            var result = TypedArray.toString( new Uint8Array(buffer) );
            if ( /uupaa.fileloader.js/.test(result) ) {
                test.done(pass());
            } else {
                test.done(miss());
            }
        }, function(error) {
            test.done(miss());
        });
    }, function(error) {
        test.done(miss());
    });
}

Node.js 環境では Blob 型が存在しないため、この関数は ArrayBuffer を返します。

FileLoader.loadArrayBuffer

FileLoader.loadArrayBuffer(url:URLString, readyCallback:Function, errorCallback:Function = null):void は、 url を読み込み、読み込み成功で readyCallback をコールバックします。

  • readyCallback(result:loadArrayBuffer, url:URLString, httpStatusCode:UINT16):void を読み込み成功でコールバックします
  • errorCallback(error:Error, url:URLString, httpStatusCode:UINT16):void を読み込み失敗でコールバックします
    • httpStatusCode は、読み込み成功で 200系, 失敗で400または500系の HTTP_STATUS_CODE を返します
function testFileLoader_loadBlob(test, pass, miss) {
    var url = IN_NODE ? "package.json" // Because node.js process.cwd() -> "~/your/path/FileLoader"
                      : "../../package.json";

    FileLoader.loadBlob(url, function(blob, url) {
        FileLoader.toArrayBuffer(blob, function(buffer) {
            var result = TypedArray.toString( new Uint8Array(buffer) );
            if ( /uupaa.fileloader.js/.test(result) ) {
                test.done(pass());
            } else {
                test.done(miss());
            }
        }, function(error) {
            test.done(miss());
        });
    }, function(error) {
        test.done(miss());
    });
}

FileLoader.toArrayBuffer

FileLoader.toArrayBuffer(source:BlobURLString|URLString|Blob|File|TypedArray|ArrayBuffer, readyCallback:Function, errorCallback:Function = null):void は、source を読み込み、読み込み成功で readyCallback をコールバックします。

  • readyCallback(result:ArrayBuffer, source:Any):void を読み込み成功でコールバックします
  • errorCallback(error:Error, source:Any):void を読み込み成功でコールバックします
    • httpStatusCode は、読み込み成功で 200系, 失敗で400または500系の HTTP_STATUS_CODE を返します
function testFileLoader_loadArrayBuffer(test, pass, miss) {
    var url = IN_NODE ? "package.json" // Because node.js process.cwd() -> "~/your/path/FileLoader"
                      : "../../package.json";

    FileLoader.loadArrayBuffer(url, function(buffer, url) {
        var result = TypedArray.toString( new Uint8Array(buffer) );
        if ( /uupaa.fileloader.js/.test(result) ) {
            test.done(pass());
        } else {
            test.done(miss());
        }
    }, function(error) {
        test.done(miss());
    });
}
Clone this wiki locally