begin-handler /srv public
do-once
new-tree ind process-scope
end-do-once
get-param op
get-param key
get-param data default-value ""
if-true op equal "add"
write-tree ind key (key) value data status st
if-true st equal GG_ERR_EXIST
@Key exists [<<print-out key>>]
else-if
@Added [<<print-out key>>]
end-if
else-if op equal "delete"
delete-tree ind key (key) value val status st
if-true st equal GG_ERR_EXIST
@Not found [<<print-out key>>]
else-if
@Deleted, old value was [<<print-out val>>]
end-if
else-if op equal "query"
read-tree ind equal (key) value val status st
if-true st equal GG_ERR_EXIST
@Not found, queried [<<print-out key>>]
else-if
@Value [<<print-out val>>]
end-if
end-if
end-handler
Copied!
for i in {1..3}; do
gg -r --req="/srv/op=add/key=$i/data=data_$i" --exec --service --app="/tree" --silent-header
done
echo "Keys added"
for i in {1..3}; do
gg -r --req="/srv/op=query/key=$i" --exec --service --app="/tree" --silent-header
done
echo "Keys queried"
ERR="0"
for i in {1..3}; do
gg -r --req="/srv/op=delete/key=$i" --exec --service --app="/tree" --silent-header
done
echo "Keys deleted"
Copied!
Added [1]
Added [2]
Added [3]
Keys added
Value [data_1]
Value [data_2]
Value [data_3]
Keys queried
Deleted, old value was [data_1]
Deleted, old value was [data_2]
Deleted, old value was [data_3]
Keys deleted
Copied!