lib/yao/resources/metadata_available.rb in yao-0.13.4 vs lib/yao/resources/metadata_available.rb in yao-0.14.0

- old
+ new

@@ -1,49 +1,70 @@ module Yao::Resources module MetadataAvailable + # @param id [String] + # @return [Hash] def list_metadata(id) GET(metadata_path(id)).body["metadata"] end + # @param id [String] + # @param metadata [Hash] + # @return [Hash] def create_metadata(id, metadata) res = POST(metadata_path(id)) do |req| req.body = {"metadata" => metadata}.to_json req.headers['Content-Type'] = 'application/json' end res.body["metadata"] end alias append_metadata create_metadata + # @param id [String] + # @param metadata [Hash] + # @return [Hash] def update_metadata(id, metadata) res = PUT(metadata_path(id)) do |req| req.body = {"metadata" => metadata}.to_json req.headers['Content-Type'] = 'application/json' end res.body["metadata"] end alias replace_metadata update_metadata + # @param id [String] + # @param key [String] + # @return [Hash] def get_metadata(id, key) GET(metadata_key_path(id, key)).body["meta"] end + # @param id [String] + # @param key [String] + # @param value [String] + # @return [Hash] def set_metadata(id, key, value) res = PUT(metadata_key_path(id, key)) do |req| req.body = {"meta" => {key => value}}.to_json req.headers['Content-Type'] = 'application/json' end res.body["meta"] end + # @param id [String] + # @param key [String] def delete_metadata(id, key) DELETE(metadata_key_path(id, key)).body end private + # @param id [String] + # @return [String] def metadata_path(id) ["servers", id, "metadata"].join("/") end + # @param id [String] + # @param key [String] def metadata_key_path(id, key) ["servers", id, "metadata", key].join("/") end end end