src/Pure/General/http.scala
changeset 82153 3c2451d482bd
parent 82107 6c3b7d1f2115
child 82155 2ecab61b59f3
equal deleted inserted replaced
82152:3312ca0f3915 82153:3c2451d482bd
    25     val mime_type_css: String = "text/css; charset=utf-8"
    25     val mime_type_css: String = "text/css; charset=utf-8"
    26     val mime_type_js: String = "text/javascript; charset=utf-8"
    26     val mime_type_js: String = "text/javascript; charset=utf-8"
    27 
    27 
    28     val default_mime_type: String = mime_type_bytes
    28     val default_mime_type: String = mime_type_bytes
    29     val default_encoding: String = UTF8.charset.name
    29     val default_encoding: String = UTF8.charset.name
       
    30 
       
    31     def file_mime_type(file: JFile): String =
       
    32       Option(Files.probeContentType(file.toPath)).getOrElse(default_mime_type)
    30 
    33 
    31     def apply(
    34     def apply(
    32         bytes: Bytes,
    35         bytes: Bytes,
    33         file_name: String = "",
    36         file_name: String = "",
    34         mime_type: String = default_mime_type,
    37         mime_type: String = default_mime_type,
    37       new Content(bytes, file_name, mime_type, encoding, elapsed_time)
    40       new Content(bytes, file_name, mime_type, encoding, elapsed_time)
    38 
    41 
    39     def read(file: JFile): Content = {
    42     def read(file: JFile): Content = {
    40       val bytes = Bytes.read(file)
    43       val bytes = Bytes.read(file)
    41       val file_name = file.getName
    44       val file_name = file.getName
    42       val mime_type = Option(Files.probeContentType(file.toPath)).getOrElse(default_mime_type)
    45       val mime_type = file_mime_type(file)
    43       apply(bytes, file_name = file_name, mime_type = mime_type)
    46       apply(bytes, file_name = file_name, mime_type = mime_type)
    44     }
    47     }
    45 
    48 
    46     def read(path: Path): Content = read(path.file)
    49     def read(path: Path): Content = read(path.file)
    47   }
    50   }