create (MIME::DiscreteMediaFactory)

    # File lib/mime/discrete_media_factory.rb, line 34
          def create file, content_type = nil
            if file.is_a? File
              cntnt = file.read
              ctype = content_type || file_type(file.path)
              fname = file.path
            else
              cntnt = IO.read(file)
              ctype = content_type || file_type(file)
              fname = file
            end

            raise UnknownContentError  unless ctype

            media_obj =
              case ctype.match(/^(\w+)\//)[1]
              when 'application'; ApplicationMedia.new(cntnt, ctype)
              when 'audio'      ; AudioMedia.new(cntnt, ctype)
              when 'image'      ; ImageMedia.new(cntnt, ctype)
              when 'text'       ; TextMedia.new(cntnt, ctype)
              when 'video'      ; VideoMedia.new(cntnt, ctype)
              end

            class << media_obj;  attr_accessor :path  end
            media_obj.path = fname
            media_obj
          end