Package spark.utils
Class MimeParse
- java.lang.Object
-
- spark.utils.MimeParse
-
public class MimeParse extends java.lang.Object
MIME-Type Parser
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
MimeParse.FitnessAndQuality
Structure for holding a fitness/quality comboprivate static class
MimeParse.ParseResults
Parse results container
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
NO_MIME_TYPE
Constant for no mime type
-
Constructor Summary
Constructors Modifier Constructor Description private
MimeParse()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.String
bestMatch(java.util.Collection<java.lang.String> supported, java.lang.String header)
Finds best matchprivate static MimeParse.FitnessAndQuality
fitnessAndQualityParsed(java.lang.String mimeType, java.util.Collection<MimeParse.ParseResults> parsedRanges)
Find the best match for a given mimeType against a list of media_ranges that have already been parsed by MimeParse.parseMediaRange().private static boolean
isBlank(java.lang.String s)
private static MimeParse.ParseResults
parseMediaRange(java.lang.String range)
Carves up a media range and returns a ParseResults.private static MimeParse.ParseResults
parseMimeType(java.lang.String mimeType)
Carves up a mime-type and returns a ParseResults object For example, the media range 'application/xhtml;q=0.5' would get parsed into: ('application', 'xhtml', {'q', '0.5'})private static float
toFloat(java.lang.String str, float defaultValue)
-
-
-
Field Detail
-
NO_MIME_TYPE
public static final java.lang.String NO_MIME_TYPE
Constant for no mime type- See Also:
- Constant Field Values
-
-
Method Detail
-
parseMimeType
private static MimeParse.ParseResults parseMimeType(java.lang.String mimeType)
Carves up a mime-type and returns a ParseResults object For example, the media range 'application/xhtml;q=0.5' would get parsed into: ('application', 'xhtml', {'q', '0.5'})
-
parseMediaRange
private static MimeParse.ParseResults parseMediaRange(java.lang.String range)
Carves up a media range and returns a ParseResults. For example, the media range 'application/*;q=0.5' would get parsed into: ('application', '*', {'q', '0.5'}) In addition this function also guarantees that there is a value for 'q' in the params dictionary, filling it in with a proper default if necessary.- Parameters:
range
-
-
fitnessAndQualityParsed
private static MimeParse.FitnessAndQuality fitnessAndQualityParsed(java.lang.String mimeType, java.util.Collection<MimeParse.ParseResults> parsedRanges)
Find the best match for a given mimeType against a list of media_ranges that have already been parsed by MimeParse.parseMediaRange(). Returns a tuple of the fitness value and the value of the 'q' quality parameter of the best match, or (-1, 0) if no match was found. Just as for quality_parsed(), 'parsed_ranges' must be a list of parsed media ranges.- Parameters:
mimeType
-parsedRanges
-
-
bestMatch
public static java.lang.String bestMatch(java.util.Collection<java.lang.String> supported, java.lang.String header)
Finds best match- Parameters:
supported
- the supported typesheader
- the header- Returns:
- the best match
-
isBlank
private static boolean isBlank(java.lang.String s)
-
toFloat
private static float toFloat(java.lang.String str, float defaultValue)
-
-