class DropboxApi::Metadata::SharedLinkMetadata
This class is used as an adapter so we can create an object of the pertinent class when we need to infer the type from the data.
This same pattern is used in `DropboxApi::Metadata::Resource`
Public Class Methods
new(data)
click to toggle source
# File lib/dropbox_api/metadata/shared_link_metadata.rb, line 9 def new(data) class_for(data['.tag'].to_sym).new(data) end
Private Class Methods
class_for(tag)
click to toggle source
# File lib/dropbox_api/metadata/shared_link_metadata.rb, line 15 def class_for(tag) case tag when :file DropboxApi::Metadata::FileLinkMetadata when :folder DropboxApi::Metadata::FolderLinkMetadata else raise ArgumentError, "Unable to infer resource type for `#{tag}`" end end