api.fabaccess-api/traits/checkable.capnp
2024-04-22 13:57:13 +02:00

41 lines
1.5 KiB
Cap'n Proto

@0x80d4a09e28022edb;
using Rust = import "../programming_language/rust.capnp";
$Rust.parentModule("schema::traits");
using CSharp = import "../programming_language/csharp.capnp";
$CSharp.namespace("FabAccessAPI.Schema");
using import "../traits.capnp".TraitSuper;
using import "../traits.capnp".TraitError;
using import "../utils.capnp".Fallible;
using import "../utils.capnp".L10NString;
# OID for this trait: 1.3.6.1.4.1.61783.612.1.3
# │ │ │ │
# RLKM UG PEN ╯ │ │ │
# │ │ │
# FabAccess subtree ╯ │ │
# │ │
# Traits ╯ │
# │
# Checkable ╯
interface TraitCheckable extends (TraitSuper) {
getState @0 () -> StateCheckable;
turnOn @1 () -> Fallible(TraitCheckable, TraitError(StateCheckable));
turnOff @2 () -> Fallible(TraitCheckable, TraitError(StateCheckable));
giveBack @3 () -> Fallible(TraitCheckable, TraitError(StateCheckable));
accept @4 () -> Fallible(TraitCheckable, TraitError(StateCheckable));
reject @5 ( reason :Text, reason_lang :Text ) -> Fallible(TraitCheckable, TraitError(StateCheckable));
}
struct StateCheckable {
union {
off @0 :Void;
on @1 :Void;
check @2 :Void;
rejected @3 :L10NString;
}
}