All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.eusashead.parquet.http.response.GetResponseBuilder Maven / Gradle / Ivy

The newest version!
package net.eusashead.parquet.http.response;

import net.eusashead.parquet.entity.Entity;
import net.eusashead.parquet.entity.EntityConverter;
import net.eusashead.parquet.entity.Link;
import net.eusashead.parquet.entity.PropertyConverter;
import net.eusashead.parquet.http.HttpDate;
import net.eusashead.parquet.http.HttpStatus;
import net.eusashead.parquet.http.etag.ETag;

public interface GetResponseBuilder extends ETagResponseBuilder {
	
	@Override
	GetResponseBuilder eTag(ETag version);
	
	@Override
	GetResponseBuilder eTag();
	
	@Override
	GetResponseBuilder lastModified(HttpDate lastModified);
	
	/**
	 * Set the expiry time in milliseconds 
	 * that this resource should be cached for
	 * Sets Date, CacheControl and Expires headers
	 * @param millis {@link Long} expiry time in milliseconds
	 * @return this {@link GetResponseBuilder}
	 */
	GetResponseBuilder expires(Long millis);
	
	@Override
	GetResponseBuilder status(HttpStatus status);
	
	@Override
	GetResponseBuilder property(String name, Object value);
	
	@Override
	GetResponseBuilder property(String name, Object value, PropertyConverter converter);
	
	@Override
	GetResponseBuilder embed(String rel, Entity entity);
	
	@Override
	 GetResponseBuilder embed(String rel, T target, EntityConverter converter);
	
	@Override
	 GetResponseBuilder forEach(String rel, Iterable target, EntityConverter converter);
	
	@Override
	GetResponseBuilder link(Link link);
	
	@Override
	GetResponseBuilder body(Entity entity);

	@Override
	 GetResponseBuilder body(T target, EntityConverter converter);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy