forked from LeenkxTeam/LNXSDK
Update Files
This commit is contained in:
59
Kha/Sources/kha/StorageFile.hx
Normal file
59
Kha/Sources/kha/StorageFile.hx
Normal file
@ -0,0 +1,59 @@
|
||||
package kha;
|
||||
|
||||
import haxe.io.Bytes;
|
||||
import haxe.Serializer;
|
||||
import haxe.Unserializer;
|
||||
|
||||
// A file in the storage system.
|
||||
// Be aware that on some platforms files may be easily lost, such us Flash or HTML5.
|
||||
class StorageFile {
|
||||
public function read(): Blob {
|
||||
return null;
|
||||
}
|
||||
|
||||
public function write(data: Blob): Void {}
|
||||
|
||||
public function append(data: Blob): Void {}
|
||||
|
||||
public function canAppend(): Bool {
|
||||
return false;
|
||||
}
|
||||
|
||||
public function maxSize(): Int {
|
||||
return -1;
|
||||
}
|
||||
|
||||
public function writeString(data: String): Void {
|
||||
var bytes = Bytes.ofString(data);
|
||||
write(Blob.fromBytes(bytes));
|
||||
}
|
||||
|
||||
public function appendString(data: String): Void {
|
||||
var bytes = Bytes.ofString(data);
|
||||
append(Blob.fromBytes(bytes));
|
||||
}
|
||||
|
||||
public function readString(): String {
|
||||
var blob = read();
|
||||
if (blob == null)
|
||||
return null;
|
||||
else
|
||||
return blob.toString();
|
||||
}
|
||||
|
||||
public function writeObject(object: Dynamic): Void {
|
||||
writeString(Serializer.run(object));
|
||||
}
|
||||
|
||||
public function readObject(): Dynamic {
|
||||
var s = readString();
|
||||
if (s == null)
|
||||
return null;
|
||||
try {
|
||||
return Unserializer.run(s);
|
||||
}
|
||||
catch (e:Dynamic) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user