1use msica::prelude::*;
5
6#[no_mangle]
7pub extern "C" fn SkipExampleCustomAction(session: Session) -> CustomActionResult {
8 let deferred = session.mode(RunMode::Scheduled);
9 match deferred {
10 false => {
11 let data = session.property("SKIP")?;
12 if data == "1" {
13 return Skip;
14 }
15 session.do_deferred_action("SkipExampleCustomActionDeferred", data.as_str())?;
16 }
17 true => {
18 let data = session.property("CustomActionData")?;
19 if data.is_empty() {
20 return Success;
21 }
22
23 let data = data.parse::<u32>()?;
25 if data == 2 {
26 return Skip;
27 }
28 }
29 }
30 Success
31}