package xenstore
Xenstore protocol in pure OCam
Install
Dune Dependency
github.com
Readme
Changelog
LGPL-2.1-only WITH OCaml-LGPL-linking-exception License
Edit opam file
Versions (2)
Authors
Maintainers
Sources
xenstore-2.4.0.tbz
sha256=11b63bb2a5a8bc487d36f36ecb195b2a2135aa13ab401cbc73da67505c08faa4
sha512=b921aa4265503677f4984007efee6865461a18031dc49583be040781307cc6cbfcd84bc11e9ebc0a23e9b0cf281bd94528c475624bc30471ad8ff70607e0732f
doc/src/xenstore.server/quota_interface.ml.html
Source file quota_interface.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133
include Namespace.Unsupported let ( |> ) a b = b a let read t (perms : Perms.t) (path : Store.Path.t) = Perms.has perms Perms.CONFIGURE; match Store.Path.to_string_list path with | [] -> "" | "default" :: [] -> "" | "entries-per-domain" :: [] -> "" | "number-of-entries" :: [] -> "" | "number-of-registered-watches" :: [] -> "" | "number-of-active-transactions" :: [] -> "" | "number-of-queued-watch-events" :: [] -> "" | [ "default"; "number-of-entries" ] -> string_of_int !Quota.maxent | [ "default"; "entry-length" ] -> string_of_int !Quota.maxsize | [ "default"; "number-of-registered-watches" ] -> string_of_int !Quota.maxwatch | [ "default"; "number-of-active-transactions" ] -> string_of_int !Quota.maxtransaction | [ "default"; "number-of-queued-watch-events" ] -> string_of_int !Quota.maxwatchevent | [ "entries-per-domain"; domid ] -> let q = t.Transaction.store.Store.quota in let domid = int_of_string domid in let n = Quota.get q domid in string_of_int n | [ "number-of-entries"; domid ] -> ( match Quota.get_override Quota.maxent_overrides (int_of_string domid) with | Some x -> string_of_int x | None -> Store.Path.doesnt_exist path) | [ "number-of-registered-watches"; domid ] -> ( match Quota.get_override Quota.maxwatch_overrides (int_of_string domid) with | Some x -> string_of_int x | None -> Store.Path.doesnt_exist path) | [ "number-of-active-transactions"; domid ] -> ( match Quota.get_override Quota.maxtransaction_overrides (int_of_string domid) with | Some x -> string_of_int x | None -> Store.Path.doesnt_exist path) | [ "number-of-queued-watch-events"; domid ] -> ( match Quota.get_override Quota.maxwatchevent_overrides (int_of_string domid) with | Some x -> string_of_int x | None -> Store.Path.doesnt_exist path) | _ -> Store.Path.doesnt_exist path let exists t perms path = try ignore (read t perms path); true with Store.Path.Doesnt_exist _ -> false let write _t _creator perms path value = Perms.has perms Perms.CONFIGURE; match Store.Path.to_string_list path with | [ "default"; "number-of-entries" ] -> Quota.maxent := int_of_string value | [ "default"; "entry-length" ] -> Quota.maxsize := int_of_string value | [ "default"; "number-of-registered-watches" ] -> Quota.maxwatch := int_of_string value | [ "default"; "number-of-active-transactions" ] -> Quota.maxtransaction := int_of_string value | [ "default"; "number-of-queued-watch-events" ] -> Quota.maxwatchevent := int_of_string value | [ "number-of-entries"; domid ] -> Quota.set_override Quota.maxent_overrides (int_of_string domid) (Some (int_of_string value)) | [ "number-of-registered-watches"; domid ] -> Quota.set_override Quota.maxwatch_overrides (int_of_string domid) (Some (int_of_string value)) | [ "number-of-active-transactions"; domid ] -> Quota.set_override Quota.maxtransaction_overrides (int_of_string domid) (Some (int_of_string value)) | [ "number-of-queued-watch-events"; domid ] -> Quota.set_override Quota.maxwatchevent_overrides (int_of_string domid) (Some (int_of_string value)) | _ -> Store.Path.doesnt_exist path let list t perms path = Perms.has perms Perms.CONFIGURE; match Store.Path.to_string_list path with | [] -> [ "default" ; "entries-per-domain" ; "number-of-entries" ; "number-of-registered-watches" ; "number-of-active-transactions" ; "number-of-queued-watch-events" ] | [ "default" ] -> [ "number-of-entries" ; "entry-length" ; "number-of-registered-watches" ; "number-of-active-transactions" ; "number-of-queued-watch-events" ] | [ "entries-per-domain" ] -> let q = t.Transaction.store.Store.quota in Quota.list q |> List.map fst |> List.map string_of_int | [ "number-of-entries" ] -> Quota.list_overrides Quota.maxent_overrides |> List.map fst |> List.map string_of_int | [ "number-of-registered-watches" ] -> Quota.list_overrides Quota.maxwatch_overrides |> List.map fst |> List.map string_of_int | [ "number-of-active-transactions" ] -> Quota.list_overrides Quota.maxtransaction_overrides |> List.map fst |> List.map string_of_int | [ "number-of-queued-watch-events" ] -> Quota.list_overrides Quota.maxwatchevent_overrides |> List.map fst |> List.map string_of_int | _ -> [] let rm _t perms path = Perms.has perms Perms.CONFIGURE; match Store.Path.to_string_list path with | [ "number-of-entries"; domid ] -> Quota.set_override Quota.maxent_overrides (int_of_string domid) None | [ "number-of-registered-watches"; domid ] -> Quota.set_override Quota.maxwatch_overrides (int_of_string domid) None | [ "number-of-active-transactions"; domid ] -> Quota.set_override Quota.maxtransaction_overrides (int_of_string domid) None | [ "number-of-queued-watch-events"; domid ] -> Quota.set_override Quota.maxwatchevent_overrides (int_of_string domid) None | _ -> raise Perms.Permission_denied
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>