Files
osiris/scripts/predefined_instances.rhai
Timur Gordon 097360ad12 first commit
2025-10-20 22:24:25 +02:00

61 lines
1.9 KiB
Plaintext

// Predefined Instances Example
// Run with predefined instances:
// cargo run --bin runner --features rhai-support -- test1 \
// --instance freezone:redis://localhost:6379:1 \
// --instance my:redis://localhost:6379:2 \
// --script-file scripts/predefined_instances.rhai
print("=== Predefined Instances Example ===\n");
// freezone and my are already available - no need to create them!
print(`Using predefined instance: ${freezone.name()}`);
print(`Using predefined instance: ${my.name()}\n`);
// Create a note
print("Creating note...");
let my_note = note("notes")
.title("Predefined Instance Test")
.content("Using freezone and my instances directly!")
.tag("type", "predefined")
.tag("test", "true");
print(`Note created: ${my_note.get_title()}\n`);
// Store in freezone - just use it directly!
print("Storing in freezone...");
let freezone_id = freezone.put_note(my_note);
print(`✓ Stored in freezone: ${freezone_id}\n`);
// Store in my - just use it directly!
print("Storing in my...");
let my_id = my.put_note(my_note);
print(`✓ Stored in my: ${my_id}\n`);
// Retrieve from both
print("Retrieving from freezone...");
let note1 = freezone.get_note("notes", freezone_id);
print(`✓ ${note1.get_title()}\n`);
print("Retrieving from my...");
let note2 = my.get_note("notes", my_id);
print(`✓ ${note2.get_title()}\n`);
// Query both
print("Querying freezone for predefined notes...");
let freezone_ids = freezone.query("notes", "tags:tag", "type=predefined");
print(`✓ Found ${freezone_ids.len} notes in freezone`);
for id in freezone_ids {
print(` - ${id}`);
}
print("");
print("Querying my for predefined notes...");
let my_ids = my.query("notes", "tags:tag", "type=predefined");
print(`✓ Found ${my_ids.len} notes in my`);
for id in my_ids {
print(` - ${id}`);
}
print("\n=== Test Complete ===");
print("Successfully used predefined freezone and my instances!");