Асинхронность

    Все операции, которые изменяют состояние ресурса (создание, изменение, удаление), имеют асинхронную сигнатуру. Это означает, что при вызове этих операций сервер возвращает объект Operation.

    Объект Operation содержит информацию об операции: статус, идентификатор, дату создания и др. Обращаясь к этому объекту, вы можете отслеживать статус операции. Статус операции отображается в поле done. Если поле принимает значение true, операция была завершена; в противном случае операция еще не выполнена.

    При вызове метода Create, возвращаемый объект Operation будет содержать идентификатор создаваемого ресурса, даже если операция еще не была завершена. Используя этот идентификатор, вы можете обратиться к ресурсу через метод Get или List.

    Если в ходе выполнения асинхронной операции возникла ошибка, сервер отменяет все запущенные процедуры и возвращает систему к предыдущему состоянию. Ресурсы, которые были созданы в ходе операции, будут удалены. В объект Operation будет добавлено поле error с описанием ошибки. При этом операция будет считаться завершенной, только когда система полностью откатится к предыдущему состоянию. Подробнее см. в описании объекта Operation.