added list for srsc
This commit is contained in:
parent
d1f9104aba
commit
d2873d6353
@ -70,5 +70,20 @@ class CLI extends CLIAppBase {
|
|||||||
return true;
|
return true;
|
||||||
});
|
});
|
||||||
}, "<name>");
|
}, "<name>");
|
||||||
|
|
||||||
|
registerAsyncSubcommand("list", (args) -> {
|
||||||
|
return RessourceNames.list().map((res) -> {
|
||||||
|
switch (res) {
|
||||||
|
case Success(data):
|
||||||
|
for (name in data) {
|
||||||
|
handle.writeLine(name);
|
||||||
|
}
|
||||||
|
case Failure(error):
|
||||||
|
handle.writeLine("Error: " + error);
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -30,3 +30,7 @@ typedef UnregisterRequest = {
|
|||||||
typedef UnregisterResponse = {
|
typedef UnregisterResponse = {
|
||||||
public var success:Bool;
|
public var success:Bool;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
typedef ListRequest = {
|
||||||
|
public var ?type:String;
|
||||||
|
}
|
||||||
|
@ -43,6 +43,8 @@ class SiteRessourceController implements Process {
|
|||||||
pkg.respond(handleUnregister(cast pkg.data));
|
pkg.respond(handleUnregister(cast pkg.data));
|
||||||
case "get":
|
case "get":
|
||||||
pkg.respond(handleGet(cast pkg.data));
|
pkg.respond(handleGet(cast pkg.data));
|
||||||
|
case "list":
|
||||||
|
pkg.respond(list());
|
||||||
default:
|
default:
|
||||||
handle.writeLine("Unknown message type: " + pkg.data.type);
|
handle.writeLine("Unknown message type: " + pkg.data.type);
|
||||||
}
|
}
|
||||||
@ -84,6 +86,10 @@ class SiteRessourceController implements Process {
|
|||||||
return ressources.get(name);
|
return ressources.get(name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private inline function list():Array<String> {
|
||||||
|
return [ for (k in ressources.keys()) k];
|
||||||
|
}
|
||||||
|
|
||||||
private function load() {
|
private function load() {
|
||||||
var store = KVStore.getStoreForClass();
|
var store = KVStore.getStoreForClass();
|
||||||
var data:Null<Map<String, NetworkID>> = store.get("ressources");
|
var data:Null<Map<String, NetworkID>> = store.get("ressources");
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
package lib;
|
package lib;
|
||||||
|
|
||||||
|
import bin.srsc.PackageTypes.ListRequest;
|
||||||
import kernel.KernelSettings;
|
import kernel.KernelSettings;
|
||||||
import bin.srsc.PackageTypes.UnregisterRequest;
|
import bin.srsc.PackageTypes.UnregisterRequest;
|
||||||
import kernel.log.Log;
|
|
||||||
import bin.srsc.PackageTypes.RegisterRequest;
|
import bin.srsc.PackageTypes.RegisterRequest;
|
||||||
import bin.srsc.PackageTypes.GetRequest;
|
import bin.srsc.PackageTypes.GetRequest;
|
||||||
import bin.srsc.SiteRessourceController;
|
import bin.srsc.SiteRessourceController;
|
||||||
@ -62,4 +62,23 @@ class RessourceNames {
|
|||||||
payload
|
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);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user