61 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			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!");
 |