package org.jboss.resteasy.test.providers.datasource.resource;
import javax.activation.DataSource;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@Path("/jaf")
public class BigSmallDataSourceResource {
@POST
@Consumes("image/jpeg")
@Produces("text/plain")
public String postDataSource(DataSource datasource) {
return datasource.getContentType();
}
@POST
@Path("/echo")
public DataSource echo(DataSource datasource) {
return datasource;
}
@GET
@Path("/{value}")
public DataSource getDataSource(@PathParam("value") String value) throws IOException {
final byte[] bytes = value.getBytes();
DataSource ds = new DataSource() {
public InputStream getInputStream() throws IOException {
return new ByteArrayInputStream(bytes);
}
public OutputStream getOutputStream() throws IOException {
throw new IOException("not allowed");
}
public String getContentType() {
return "text/plain";
}
public String getName() {
return "";
}
};
return ds;
}
}