Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class StatusOutput extends CommandTarget {
- public StatusOutput(CallableMessage systemName, Iterable<Test> tests) {
- super(new Reply(() -> new MultiMessage(
- new LAPIMessage(
- CommonMessageDomains.Status.top,
- new Placeholder("system name", systemName)
- ),
- new ChatBook<>(
- tests,
- test -> new LAPIMessage(
- CommonMessageDomains.Status.testForm,
- new Placeholder("module name", test.name()),
- new Placeholder("status", identifier -> Value.of(test.makeTestFor(identifier)).useAs(result -> switch (result.status()) {
- case SUCCESS -> new LAPIMessage(CommonMessageDomains.Status.working);
- case SKIPPED -> new BadTestMessage(CommonMessageDomains.Status.down, result.description());
- case FAILURE -> new BadTestMessage(CommonMessageDomains.Status.testSkipped, result.description());
- }).call(identifier))
- )
- )
- )));
- }
- private static class BadTestMessage extends CacheMessage {
- public BadTestMessage(String mainMessageDomain, CallableMessage description) {
- super(new ClickableMessage(
- new HoveredMessage(
- new LAPIMessage(mainMessageDomain),
- new LAPIMessage(CommonMessageDomains.Status.pressToPrintDescription)
- ),
- click -> Communicator.of(click.clicker()).message(description)
- ));
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement