Regalamiunsorriso/rus/WEB-INF/lib/activation1.1.1_src/javax/activation/DataSourceDataContentHandler.java

52 lines
1.9 KiB
Java
Raw Normal View History

2026-03-14 20:04:39 +01:00
package javax.activation;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.io.IOException;
import java.io.OutputStream;
class DataSourceDataContentHandler implements DataContentHandler {
private DataSource ds = null;
private DataFlavor[] transferFlavors = null;
private DataContentHandler dch = null;
public DataSourceDataContentHandler(DataContentHandler paramDataContentHandler, DataSource paramDataSource) {
this.ds = paramDataSource;
this.dch = paramDataContentHandler;
}
public DataFlavor[] getTransferDataFlavors() {
if (this.transferFlavors == null)
if (this.dch != null) {
this.transferFlavors = this.dch.getTransferDataFlavors();
} else {
this.transferFlavors = new DataFlavor[1];
this.transferFlavors[0] = new ActivationDataFlavor(this.ds.getContentType(), this.ds.getContentType());
}
return this.transferFlavors;
}
public Object getTransferData(DataFlavor paramDataFlavor, DataSource paramDataSource) throws UnsupportedFlavorException, IOException {
if (this.dch != null)
return this.dch.getTransferData(paramDataFlavor, paramDataSource);
if (paramDataFlavor.equals(getTransferDataFlavors()[0]))
return paramDataSource.getInputStream();
throw new UnsupportedFlavorException(paramDataFlavor);
}
public Object getContent(DataSource paramDataSource) throws IOException {
if (this.dch != null)
return this.dch.getContent(paramDataSource);
return paramDataSource.getInputStream();
}
public void writeTo(Object paramObject, String paramString, OutputStream paramOutputStream) throws IOException {
if (this.dch != null) {
this.dch.writeTo(paramObject, paramString, paramOutputStream);
} else {
throw new UnsupportedDataTypeException("no DCH for content type " + this.ds.getContentType());
}
}
}