Тут приведены основные форматы woo-команд для использования из интерфейсов:
Все функции выполняющие запросы к бакендам возвращают список команд:
- (woo-list 'url 'param 'value ...) – вызывает функцию list для запроса списка подобъектов у бакэнда.
- (woo-read 'url 'param 'value.. ) – читает некоторые данные для указанного объекта (функция read)
- (woo-write 'url 'param 'value.. ) – пишет некоторые данные в указанный объект (фунция write)
- (woo-new 'url 'param 'value..) – cоздает некий обьект (функция new)
- (woo-delete 'url 'param 'value) – уничтожает некий обьект (функция delete)
Все эти функции могут кинуть исключение типа woo-error, в случае если бакенд сообщит об ошибке. Для более удобной работы именно с этим типом исключения существует функция woo-catch (обычный catch может использоваться с любыми видами исключений). Также доступны:
- woo-catch/message – вариант woo-catch где обработчик ошибки состоит в выдаче окна с сообщением и возврата значения #f.
- woo-throw – выбрасывает исключение типа woo-error.
Для более удобного вытаскивания имени подобъекта существует функция woo-extract-name.
Для более удобного вытаскивания первой команды из ответа существует команда woo-first-command.
- woo-list-names – делает запрос list к бакенду и возвращает список имён подобъектов (без параметров)
- woo-read-first – считывает данные для указанного объекта. Композиция woo-read и woo-first-command.
- woo-get-option – возвращает значение параметра из ответа бакенда, возможно задание ответа по-умолчанию.