Skip to content

CP-308201: make unimplemented function more obvious #6548

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 14 additions & 14 deletions ocaml/xapi-idl/lib/observer_skeleton.ml
Original file line number Diff line number Diff line change
Expand Up @@ -13,36 +13,36 @@
*)
[@@@ocaml.warning "-27"]

let u x = raise Observer_helpers.(Observer_error (Errors.Unimplemented x))
let unimplemented x = raise Observer_helpers.(Observer_error (Errors.Unimplemented x))

module Observer = struct
type context = unit

let create ctx ~dbg ~uuid ~name_label ~attributes ~endpoints ~enabled =
u "Observer.create"
unimplemented __FUNCTION__

let destroy ctx ~dbg ~uuid = u "Observer.destroy"
let destroy ctx ~dbg ~uuid = unimplemented __FUNCTION__

let set_enabled ctx ~dbg ~uuid ~enabled = u "Observer.set_enabled"
let set_enabled ctx ~dbg ~uuid ~enabled = unimplemented __FUNCTION__

let set_attributes ctx ~dbg ~uuid ~attributes = u "Observer.set_attributes"
let set_attributes ctx ~dbg ~uuid ~attributes = unimplemented __FUNCTION__

let set_endpoints ctx ~dbg ~uuid ~endpoints = u "Observer.set_endpoints"
let set_endpoints ctx ~dbg ~uuid ~endpoints = unimplemented __FUNCTION__

let init ctx ~dbg = u "Observer.init"
let init ctx ~dbg = unimplemented __FUNCTION__

let set_trace_log_dir ctx ~dbg ~dir = u "Observer.set_trace_log_dir"
let set_trace_log_dir ctx ~dbg ~dir = unimplemented __FUNCTION__

let set_export_interval ctx ~dbg ~interval = u "Observer.set_export_interval"
let set_export_interval ctx ~dbg ~interval = unimplemented __FUNCTION__

let set_max_spans ctx ~dbg ~spans = u "Observer.set_max_spans"
let set_max_spans ctx ~dbg ~spans = unimplemented __FUNCTION__

let set_max_traces ctx ~dbg ~traces = u "Observer.set_max_traces"
let set_max_traces ctx ~dbg ~traces = unimplemented __FUNCTION__

let set_max_file_size ctx ~dbg ~file_size = u "Observer.set_max_file_size"
let set_max_file_size ctx ~dbg ~file_size = unimplemented __FUNCTION__

let set_host_id ctx ~dbg ~host_id = u "Observer.set_host_id"
let set_host_id ctx ~dbg ~host_id = unimplemented __FUNCTION__

let set_compress_tracing_files ctx ~dbg ~enabled =
u "Observer.set_compress_tracing_files"
unimplemented __FUNCTION__
end
2 changes: 2 additions & 0 deletions ocaml/xapi-idl/storage/storage_interface.ml
Original file line number Diff line number Diff line change
Expand Up @@ -425,6 +425,8 @@ end

exception Storage_error of Errors.error

let unimplemented x = raise (Storage_error (Errors.Unimplemented x))

let () =
(* register printer *)
let sprintf = Printf.sprintf in
Expand Down
152 changes: 75 additions & 77 deletions ocaml/xapi-idl/storage/storage_skeleton.ml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@
*)
[@@@ocaml.warning "-27"]

let u x = raise Storage_interface.(Storage_error (Errors.Unimplemented x))

type context = unit

module UPDATES = struct
Expand All @@ -27,193 +25,193 @@ module UPDATES = struct
end

module Query = struct
let query ctx ~dbg = u "Query.query"
let query ctx ~dbg = unimplemented __FUNCTION__

let diagnostics ctx ~dbg = u "Query.diagnostics"
let diagnostics ctx ~dbg = unimplemented __FUNCTION__
end

module DP = struct
let create ctx ~dbg ~id = u "DP.create"
let create ctx ~dbg ~id = unimplemented __FUNCTION__

let destroy ctx ~dbg ~dp ~allow_leak = u "DP.destroy"
let destroy ctx ~dbg ~dp ~allow_leak = unimplemented __FUNCTION__

let destroy2 ctx ~dbg ~dp ~sr ~vdi ~vm ~allow_leak = u "DP.destroy2"
let destroy2 ctx ~dbg ~dp ~sr ~vdi ~vm ~allow_leak = unimplemented __FUNCTION__

let attach_info ctx ~dbg ~sr ~vdi ~dp ~vm = u "DP.attach_info"
let attach_info ctx ~dbg ~sr ~vdi ~dp ~vm = unimplemented __FUNCTION__

let diagnostics ctx () = u "DP.diagnostics"
let diagnostics ctx () = unimplemented __FUNCTION__

let stat_vdi ctx ~dbg ~sr ~vdi () = u "DP.stat_vdi"
let stat_vdi ctx ~dbg ~sr ~vdi () = unimplemented __FUNCTION__
end

module SR = struct
let create ctx ~dbg ~sr ~name_label ~name_description ~device_config
~physical_size =
u "SR.create"
unimplemented __FUNCTION__

let attach ctx ~dbg ~sr ~device_config = u "SR.attach"
let attach ctx ~dbg ~sr ~device_config = unimplemented __FUNCTION__

let set_name_label ctx ~dbg ~sr ~new_name_label = u "SR.set_name_label"
let set_name_label ctx ~dbg ~sr ~new_name_label = unimplemented __FUNCTION__

let set_name_description ctx ~dbg ~sr ~new_name_description =
u "SR.set_name_description"
unimplemented __FUNCTION__

let detach ctx ~dbg ~sr = u "SR.detach"
let detach ctx ~dbg ~sr = unimplemented __FUNCTION__

let reset ctx ~dbg ~sr = u "SR.reset"
let reset ctx ~dbg ~sr = unimplemented __FUNCTION__

let destroy ctx ~dbg ~sr = u "SR.destroy"
let destroy ctx ~dbg ~sr = unimplemented __FUNCTION__

let probe ctx ~dbg ~queue ~device_config ~sm_config = u "SR.probe"
let probe ctx ~dbg ~queue ~device_config ~sm_config = unimplemented __FUNCTION__

let scan ctx ~dbg ~sr = u "SR.scan"
let scan ctx ~dbg ~sr = unimplemented __FUNCTION__

let scan2 ctx ~dbg ~sr = u "SR.scan2"
let scan2 ctx ~dbg ~sr = unimplemented __FUNCTION__

let update_snapshot_info_src ctx ~dbg ~sr ~vdi ~url ~dest ~dest_vdi
~snapshot_pairs =
u "SR.update_snapshot_info_src"
unimplemented __FUNCTION__

let update_snapshot_info_dest ctx ~dbg ~sr ~vdi ~src_vdi ~snapshot_pairs =
u "SR.update_snapshot_info_dest"
unimplemented __FUNCTION__

let stat ctx ~dbg ~sr = u "SR.stat"
let stat ctx ~dbg ~sr = unimplemented __FUNCTION__

let list ctx ~dbg = u "SR.list"
let list ctx ~dbg = unimplemented __FUNCTION__
end

module VDI = struct
let create ctx ~dbg ~sr ~vdi_info = u "VDI.create"
let create ctx ~dbg ~sr ~vdi_info = unimplemented __FUNCTION__

let set_name_label ctx ~dbg ~sr ~vdi ~new_name_label = u "VDI.set_name_label"
let set_name_label ctx ~dbg ~sr ~vdi ~new_name_label = unimplemented __FUNCTION__

let set_name_description ctx ~dbg ~sr ~vdi ~new_name_description =
u "VDI.set_name_description"
unimplemented __FUNCTION__

let snapshot ctx ~dbg ~sr ~vdi_info = u "VDI.snapshot"
let snapshot ctx ~dbg ~sr ~vdi_info = unimplemented __FUNCTION__

let clone ctx ~dbg ~sr ~vdi_info = u "VDI.clone"
let clone ctx ~dbg ~sr ~vdi_info = unimplemented __FUNCTION__

let resize ctx ~dbg ~sr ~vdi ~new_size = u "VDI.resize"
let resize ctx ~dbg ~sr ~vdi ~new_size = unimplemented __FUNCTION__

let destroy ctx ~dbg ~sr ~vdi = u "VDI.destroy"
let destroy ctx ~dbg ~sr ~vdi = unimplemented __FUNCTION__

let stat ctx ~dbg ~sr ~vdi = u "VDI.stat"
let stat ctx ~dbg ~sr ~vdi = unimplemented __FUNCTION__

let introduce ctx ~dbg ~sr ~uuid ~sm_config ~location = u "VDI.introduce"
let introduce ctx ~dbg ~sr ~uuid ~sm_config ~location = unimplemented __FUNCTION__

let set_persistent ctx ~dbg ~sr ~vdi ~persistent = u "VDI.set_persistent"
let set_persistent ctx ~dbg ~sr ~vdi ~persistent = unimplemented __FUNCTION__

let epoch_begin ctx ~dbg ~sr ~vdi ~vm ~persistent = ()

let attach ctx ~dbg ~dp ~sr ~vdi ~read_write = u "VDI.attach"
let attach ctx ~dbg ~dp ~sr ~vdi ~read_write = unimplemented __FUNCTION__

let attach2 ctx ~dbg ~dp ~sr ~vdi ~read_write = u "VDI.attach2"
let attach2 ctx ~dbg ~dp ~sr ~vdi ~read_write = unimplemented __FUNCTION__

let attach3 ctx ~dbg ~dp ~sr ~vdi ~vm ~read_write = u "VDI.attach3"
let attach3 ctx ~dbg ~dp ~sr ~vdi ~vm ~read_write = unimplemented __FUNCTION__

let activate ctx ~dbg ~dp ~sr ~vdi = u "VDI.activate"
let activate ctx ~dbg ~dp ~sr ~vdi = unimplemented __FUNCTION__

let activate3 ctx ~dbg ~dp ~sr ~vdi ~vm = u "VDI.activate3"
let activate3 ctx ~dbg ~dp ~sr ~vdi ~vm = unimplemented __FUNCTION__

let activate_readonly ctx ~dbg ~dp ~sr ~vdi ~vm = u "VDI.activate_readonly"
let activate_readonly ctx ~dbg ~dp ~sr ~vdi ~vm = unimplemented __FUNCTION__

let deactivate ctx ~dbg ~dp ~sr ~vdi ~vm = u "VDI.deactivate"
let deactivate ctx ~dbg ~dp ~sr ~vdi ~vm = unimplemented __FUNCTION__

let detach ctx ~dbg ~dp ~sr ~vdi ~vm = u "VDI.detach"
let detach ctx ~dbg ~dp ~sr ~vdi ~vm = unimplemented __FUNCTION__

let epoch_end ctx ~dbg ~sr ~vdi ~vm = ()

let get_url ctx ~dbg ~sr ~vdi = u "VDI.get_url"
let get_url ctx ~dbg ~sr ~vdi = unimplemented __FUNCTION__

let similar_content ctx ~dbg ~sr ~vdi = u "VDI.similar_content"
let similar_content ctx ~dbg ~sr ~vdi = unimplemented __FUNCTION__

let get_by_name ctx ~dbg ~sr ~name = u "VDI.get_by_name"
let get_by_name ctx ~dbg ~sr ~name = unimplemented __FUNCTION__

let set_content_id ctx ~dbg ~sr ~vdi ~content_id = u "VDI.set_content_id"
let set_content_id ctx ~dbg ~sr ~vdi ~content_id = unimplemented __FUNCTION__

let compose ctx ~dbg ~sr ~vdi1 ~vdi2 = u "VDI.compose"
let compose ctx ~dbg ~sr ~vdi1 ~vdi2 = unimplemented __FUNCTION__

let add_to_sm_config ctx ~dbg ~sr ~vdi ~key ~value = u "VDI.add_to_sm_config"
let add_to_sm_config ctx ~dbg ~sr ~vdi ~key ~value = unimplemented __FUNCTION__

let remove_from_sm_config ctx ~dbg ~sr ~vdi ~key =
u "VDI.remove_from_sm_config"
unimplemented __FUNCTION__

let enable_cbt ctx ~dbg ~sr ~vdi = u "VDI.enable_cbt"
let enable_cbt ctx ~dbg ~sr ~vdi = unimplemented __FUNCTION__

let disable_cbt ctx ~dbg ~sr ~vdi = u "VDI.disable_cbt"
let disable_cbt ctx ~dbg ~sr ~vdi = unimplemented __FUNCTION__

let data_destroy ctx ~dbg ~sr ~vdi = u "VDI.data_destroy"
let data_destroy ctx ~dbg ~sr ~vdi = unimplemented __FUNCTION__

let list_changed_blocks ctx ~dbg ~sr ~vdi_from ~vdi_to =
u "VDI.list_changed_blocks"
unimplemented __FUNCTION__
end

let get_by_name ctx ~dbg ~name = u "get_by_name"
let get_by_name ctx ~dbg ~name = unimplemented __FUNCTION__

module DATA = struct
let copy ctx ~dbg ~sr ~vdi ~vm ~url ~dest = u "DATA.copy"
let copy ctx ~dbg ~sr ~vdi ~vm ~url ~dest = unimplemented __FUNCTION__

let mirror ctx ~dbg ~sr ~vdi ~vm ~dest = u "DATA.mirror"
let mirror ctx ~dbg ~sr ~vdi ~vm ~dest = unimplemented __FUNCTION__

let stat ctx ~dbg ~sr ~vdi ~vm ~key = u "DATA.stat"
let stat ctx ~dbg ~sr ~vdi ~vm ~key = unimplemented __FUNCTION__

let import_activate ctx ~dbg ~dp ~sr ~vdi ~vm =
u "DATA.MIRROR.import_activate"
unimplemented __FUNCTION__

let get_nbd_server ctx ~dbg ~dp ~sr ~vdi ~vm = u "DATA.MIRROR.get_nbd_server"
let get_nbd_server ctx ~dbg ~dp ~sr ~vdi ~vm = unimplemented __FUNCTION__

module MIRROR = struct
type context = unit

let send_start ctx ~dbg ~task_id ~dp ~sr ~vdi ~mirror_vm ~mirror_id
~local_vdi ~copy_vm ~live_vm ~url ~remote_mirror ~dest_sr ~verify_dest =
u "DATA.MIRROR.send_start"
unimplemented __FUNCTION__

let receive_start ctx ~dbg ~sr ~vdi_info ~id ~similar =
u "DATA.MIRROR.receive_start"
unimplemented __FUNCTION__

let receive_start2 ctx ~dbg ~sr ~vdi_info ~id ~similar ~vm =
u "DATA.MIRROR.receive_start2"
unimplemented __FUNCTION__

let receive_start3 ctx ~dbg ~sr ~vdi_info ~mirror_id ~similar ~vm ~url
~verify_dest =
u "DATA.MIRROR.receive_start3"
unimplemented __FUNCTION__

let receive_finalize ctx ~dbg ~id = u "DATA.MIRROR.receive_finalize"
let receive_finalize ctx ~dbg ~id = unimplemented __FUNCTION__

let receive_finalize2 ctx ~dbg ~id = u "DATA.MIRROR.receive_finalize2"
let receive_finalize2 ctx ~dbg ~id = unimplemented __FUNCTION__

let receive_finalize3 ctx ~dbg ~mirror_id ~sr ~url ~verify_dest =
u "DATA.MIRROR.receive_finalize3"
unimplemented __FUNCTION__

let receive_cancel ctx ~dbg ~id = u "DATA.MIRROR.receive_cancel"
let receive_cancel ctx ~dbg ~id = unimplemented __FUNCTION__

let receive_cancel2 ctx ~dbg ~mirror_id ~url ~verify_dest =
u "DATA.MIRROR.receive_cancel2"
unimplemented __FUNCTION__

let pre_deactivate_hook ctx ~dbg ~dp ~sr ~vdi =
u "DATA.MIRROR.pre_deactivate_hook"
unimplemented __FUNCTION__

let has_mirror_failed ctx ~dbg ~mirror_id ~sr =
u "DATA.MIRROR.has_mirror_failed"
unimplemented __FUNCTION__

let list ctx ~dbg = u "DATA.MIRROR.list"
let list ctx ~dbg = unimplemented __FUNCTION__

let stat ctx ~dbg ~id = u "DATA.MIRROR.stat"
let stat ctx ~dbg ~id = unimplemented __FUNCTION__
end
end

module Policy = struct
let get_backend_vm ctx ~dbg ~vm ~sr ~vdi = u "Policy.get_backend_vm"
let get_backend_vm ctx ~dbg ~vm ~sr ~vdi = unimplemented __FUNCTION__
end

module TASK = struct
let stat ctx ~dbg ~task = u "TASK.stat"
let stat ctx ~dbg ~task = unimplemented __FUNCTION__

let cancel ctx ~dbg ~task = u "TASK.cancel"
let cancel ctx ~dbg ~task = unimplemented __FUNCTION__

let destroy ctx ~dbg ~task = u "TASK.destroy"
let destroy ctx ~dbg ~task = unimplemented __FUNCTION__

let list ctx ~dbg = u "TASK.list"
let list ctx ~dbg = unimplemented __FUNCTION__
end
14 changes: 6 additions & 8 deletions ocaml/xapi/storage_mux.ml
Original file line number Diff line number Diff line change
Expand Up @@ -844,12 +844,10 @@ module Mux = struct
module MIRROR = struct
type context = unit

let u x = raise Storage_interface.(Storage_error (Errors.Unimplemented x))

let send_start _ctx ~dbg:_ ~task_id:_ ~dp:_ ~sr:_ ~vdi:_ ~mirror_vm:_
~mirror_id:_ ~local_vdi:_ ~copy_vm:_ ~live_vm:_ ~url:_
~remote_mirror:_ ~dest_sr:_ ~verify_dest:_ =
u "DATA.MIRROR.send_start" (* see storage_smapi{v1,v3}_migrate.ml *)
Storage_interface.unimplemented __FUNCTION__ (* see storage_smapi{v1,v3}_migrate.ml *)

let receive_start () ~dbg ~sr ~vdi_info ~id ~similar =
with_dbg ~name:"DATA.MIRROR.receive_start" ~dbg @@ fun _di ->
Expand Down Expand Up @@ -880,7 +878,7 @@ module Mux = struct
(** see storage_smapiv{1,3}_migrate.receive_start3 *)
let receive_start3 () ~dbg:_ ~sr:_ ~vdi_info:_ ~mirror_id:_ ~similar:_
~vm:_ =
u __FUNCTION__
Storage_interface.unimplemented __FUNCTION__

let receive_finalize () ~dbg ~id =
with_dbg ~name:"DATA.MIRROR.receive_finalize" ~dbg @@ fun di ->
Expand All @@ -893,21 +891,21 @@ module Mux = struct
Storage_smapiv1_migrate.MIRROR.receive_finalize2 () ~dbg:di.log ~id

let receive_finalize3 () ~dbg:_ ~mirror_id:_ ~sr:_ ~url:_ ~verify_dest:_ =
u __FUNCTION__
Storage_interface.unimplemented __FUNCTION__

let receive_cancel () ~dbg ~id =
with_dbg ~name:"DATA.MIRROR.receive_cancel" ~dbg @@ fun di ->
info "%s dbg: %s mirror_id: %s" __FUNCTION__ dbg id ;
Storage_smapiv1_migrate.MIRROR.receive_cancel () ~dbg:di.log ~id

let receive_cancel2 () ~dbg:_ ~mirror_id:_ ~url:_ ~verify_dest:_ =
u __FUNCTION__
Storage_interface.unimplemented __FUNCTION__

let pre_deactivate_hook _ctx ~dbg:_ ~dp:_ ~sr:_ ~vdi:_ =
u "DATA.MIRROR.pre_deactivate_hook"
Storage_interface.unimplemented __FUNCTION__

let has_mirror_failed _ctx ~dbg:_ ~mirror_id:_ ~sr:_ =
u "DATA.MIRROR.has_mirror_failed"
Storage_interface.unimplemented __FUNCTION__

let list () ~dbg =
with_dbg ~name:"DATA.MIRROR.list" ~dbg @@ fun di ->
Expand Down
Loading
Loading