/** * Adds a parameter to the MIMEType. * * @param name name of parameter * @param value value of parameter * @return returns a new instance with the parameter set */ public MIMEType addParameter(String name, String value) { MIMEType mt = new MIMEType(toString()); mt.mimeType.setParameter(name, value); return mt; }
@Override public boolean equals(final Object object) { return equals(object, true); }
public boolean includes(MIMEType mimeType) { boolean includes = mimeType == null || equalsWithoutParameters(ALL) || equalsWithoutParameters(mimeType); if (!includes) { includes = getPrimaryType().equals(mimeType.getPrimaryType()) && (getSubType().equals(mimeType.getSubType()) || "*".equals(getSubType())); } return includes; }
@Override public int hashCode() { return 31 * (getPrimaryType().hashCode() + getSubType().hashCode()); }
/** * This will be removed in the next release. * @deprecated Use {@link #equals(Object)} or {@link #equalsWithoutParameters(Object)} instead. */ @Deprecated public boolean equals(final Object o, final boolean includeParameters) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } MIMEType other = (MIMEType) o; if (!(getPrimaryType().equals(other.getPrimaryType()) && getSubType().equals(other.getSubType()))) { return false; } if (includeParameters && !parametersEquals(other)) { return false; } return true; }
public static MIMEType fromFileName(String filename) { return valueOf(MimetypesFileTypeMap.getDefaultFileTypeMap().getContentType(filename)); }
public Headers withContentType(MIMEType ct) { return set(HeaderConstants.CONTENT_TYPE, ct.toString()); }
private boolean parametersEquals(MIMEType other) { Map<String, String> otherParameterList = convertParams(other.mimeType.getParameters()); Map<String, String> parameterList = convertParams(mimeType.getParameters()); return parameterList.equals(otherParameterList); }
public static MIMEType valueOf(final String MIMEType) { return new MIMEType(MIMEType); }
public String getCharset() { return getParameter("charset"); }
public CacheItemHolder mapRow(ResultSet rs) throws SQLException { URI uri = URI.create(rs.getString("uri")); Vary vary = convertToVary(rs.getString("vary")); Key key = Key.create(uri, vary); File file = manager.resolve(key); Payload payload = null; if (file.exists()) { payload = new FilePayload(file, MIMEType.valueOf(rs.getString("mimetype"))); } Status status = Status.valueOf(rs.getInt("status")); Headers headers = convertToHeaders(rs.getString("headers")); DateTime cacheTime = new DateTime(rs.getTimestamp("cachetime").getTime()); HTTPResponse response = new HTTPResponse(payload, status, headers); return new CacheItemHolder(uri, vary, new DefaultCacheItem(response, cacheTime)); } }
statement.setString(4, response.getHeaders().toJSON()); if (response.hasPayload() && response.getPayload().isAvailable()) { statement.setString(5, response.getPayload().getMimeType().toString()); try { File file = manager.createFile(key, response.getPayload().getInputStream());
public List<Parameter> getParameters() { List<Parameter> list = new ArrayList<Parameter>(); Map<String, String> map = convertParams(mimeType.getParameters()); for (Map.Entry<String, String> entry : map.entrySet()) { list.add(new Parameter(entry.getKey(), entry.getValue())); } return Collections.unmodifiableList(list); }
public static MIMEType valueOf(final String primaryType, final String subType) { return new MIMEType(primaryType, subType); }
public boolean equalsWithoutParameters(final Object o) { return equals(o, false); }