84 lines
2.7 KiB
Haxe
84 lines
2.7 KiB
Haxe
package lib;
|
|
|
|
import bin.srsc.PackageTypes.ListRequest;
|
|
import kernel.KernelSettings;
|
|
import bin.srsc.PackageTypes.UnregisterRequest;
|
|
import bin.srsc.PackageTypes.RegisterRequest;
|
|
import bin.srsc.PackageTypes.GetRequest;
|
|
import bin.srsc.SiteRessourceController;
|
|
import kernel.net.Net;
|
|
import kernel.net.Package.NetworkID;
|
|
|
|
using tink.CoreApi;
|
|
|
|
class RessourceNames {
|
|
public static function get(name: String, controllerID: NetworkID = -1): Promise<Null<NetworkID>> {
|
|
if (controllerID == -1) controllerID = KernelSettings.siteController;
|
|
|
|
var payload: GetRequest = {name: name, type: "get"};
|
|
|
|
return Net.instance.sendAndAwait(
|
|
controllerID,
|
|
SiteRessourceController.SITE_CONTROLLER_RESSOURCE_MANAGER_PROTO,
|
|
payload
|
|
).map((res)->{
|
|
switch (res){
|
|
case Success(pkg):
|
|
return Success(pkg.data.netID);
|
|
case Failure(error):
|
|
return Failure(error);
|
|
}
|
|
});
|
|
}
|
|
|
|
public static function register(name: String, netID: NetworkID, controllerID: NetworkID = -1): Promise<Bool> {
|
|
if (controllerID == -1) controllerID = KernelSettings.siteController;
|
|
|
|
var payload: RegisterRequest = {name: name, netID: netID, type: "register"};
|
|
|
|
return Net.instance.sendAndAwait(
|
|
controllerID,
|
|
SiteRessourceController.SITE_CONTROLLER_RESSOURCE_MANAGER_PROTO,
|
|
payload
|
|
).map((res)->{
|
|
switch (res){
|
|
case Success(pkg):
|
|
return Success(pkg.data.success);
|
|
case Failure(error):
|
|
return Failure(error);
|
|
|
|
}
|
|
});
|
|
}
|
|
|
|
public static function unregister(name: String, controllerID: NetworkID = -1): Promise<Noise> {
|
|
if (controllerID == -1) controllerID = KernelSettings.siteController;
|
|
|
|
var payload: UnregisterRequest = {name: name, type: "unregister"};
|
|
|
|
return Net.instance.sendAndAwait(
|
|
controllerID,
|
|
SiteRessourceController.SITE_CONTROLLER_RESSOURCE_MANAGER_PROTO,
|
|
payload
|
|
);
|
|
}
|
|
|
|
public static function list(controllerID: NetworkID = -1): Promise<Array<String>> {
|
|
if (controllerID == -1) controllerID = KernelSettings.siteController;
|
|
|
|
var payload: ListRequest = {type: "list"};
|
|
|
|
return Net.instance.sendAndAwait(
|
|
controllerID,
|
|
SiteRessourceController.SITE_CONTROLLER_RESSOURCE_MANAGER_PROTO,
|
|
payload
|
|
).map(res->{
|
|
switch (res){
|
|
case Success(pkg):
|
|
return Success(pkg.data);
|
|
case Failure(error):
|
|
return Failure(error);
|
|
}
|
|
});
|
|
}
|
|
} |