Spec-Zone .ru
спецификации, руководства, описания, API
|
public class DataHandler extends Object implements Transferable
DataHandler и Передаваемый Интерфейс
DataHandler реализует Передаваемый интерфейс так, чтобы данные могли использоваться в операциях передачи данных AWT, такой как сокращено и вставить и перетаскивать и отбрасывать. Реализация Передаваемого интерфейса полагается на доступность установленного соответствия объекта DataContentHandler типу MIME данных, представленных в определенном экземпляре DataHandler.
DataHandler и CommandMaps
DataHandler отслеживает текущий CommandMap, который он использует для запросов на обслуживание на команды (getCommand
, getAllCommands
, getPreferredCommands
). Каждому экземпляру DataHandler можно было связать CommandMap с этим использующий setCommandMap
метод. Если CommandMap не был установлен, DataHandler вызывает getDefaultCommandMap
метод в CommandMap и использовании значение это возвращается. См. CommandMap для получения дополнительной информации.
DataHandler и URL
Текущая реализация DataHandler создает частный экземпляр URLDataSource, когда это создается с URL.
CommandMap
, DataContentHandler
, DataSource
, URLDataSource
Конструктор и Описание |
---|
DataHandler(DataSource ds)
Создайте a
DataHandler экземпляр, ссылающийся на указанный DataSource. |
DataHandler(Object obj, String mimeType)
Создайте a
DataHandler экземпляр, представляющий объект этого типа MIME. |
DataHandler(URL url)
Создайте a
DataHandler экземпляр, ссылающийся на URL. |
Модификатор и Тип | Метод и Описание |
---|---|
CommandInfo[] |
getAllCommands()
Возвратите все команды для этого типа данных.
|
Объект |
getBean(CommandInfo cmdinfo)
Метод удобства, который берет CommandInfo, возражает, и инстанцирует соответствующей команды, обычно компонент JavaBean.
|
CommandInfo |
getCommand(String cmdName)
Получите команду cmdName.
|
Объект |
getContent()
Возвратите данные в его привилегированной Объектной форме.
|
Строка |
getContentType()
Возвратите тип MIME этого объекта как получено от исходного объекта.
|
DataSource |
getDataSource()
Возвратите DataSource, связанный с этим экземпляром DataHandler.
|
InputStream |
getInputStream()
Получите InputStream для этого объекта.
|
Строка |
getName()
Возвратите имя объекта данных.
|
OutputStream |
getOutputStream()
Заставьте OutputStream для этого DataHandler позволять перезаписывать базовые данные.
|
CommandInfo[] |
getPreferredCommands()
Возвратите привилегированные команды для этого типа данных.
|
Объект |
getTransferData(DataFlavor flavor)
Возвращает объект, который представляет данные, которые будут переданы.
|
DataFlavor[] |
getTransferDataFlavors()
Возвратите DataFlavors, в котором эти данные доступны.
|
boolean |
isDataFlavorSupported(DataFlavor flavor)
Возвраты, поддерживается ли указанная разновидность данных для этого объекта.
|
void |
setCommandMap(CommandMap commandMap)
Установите CommandMap для использования этим DataHandler.
|
static void |
setDataContentHandlerFactory(DataContentHandlerFactory newFactory)
Устанавливает DataContentHandlerFactory.
|
void |
writeTo(OutputStream os)
Запишите данные в
OutputStream . |
public DataHandler(DataSource ds)
DataHandler
экземпляр, ссылающийся на указанный DataSource. Данные существуют в форме потока байтов. DataSource предоставит InputStream, чтобы получить доступ к данным.ds
- DataSourcepublic DataHandler(Object obj, String mimeType)
DataHandler
экземпляр, представляющий объект этого типа MIME. Этот конструктор используется, когда у приложения уже есть представление в памяти данных в форме Объекта Java.obj
- Объект JavamimeType
- тип MIME объектаpublic DataHandler(URL url)
DataHandler
экземпляр, ссылающийся на URL. DataHandler внутренне создает a URLDataSource
экземпляр, чтобы представить URL.url
- объект URLpublic DataSource getDataSource()
Для DataHandlers, которые инстанцировали с DataSource, этот метод возвращает DataSource, который использовался, чтобы создать объект DataHandler. В других случаях DataHandler создает DataSource из данных, используемых, чтобы создать DataHandler. DataSources, создаваемые для DataHandlers, который не инстанцируют с DataSource, кэшируются по причинам производительности.
public String getName()
DataSource.getName
метод, иначе это возвращает нуль.public String getContentType()
public InputStream getInputStream() throws IOException
Для DataHandlers, который инстанцируют с DataSource, DataHandler вызывает DataSource.getInputStream
метод и возвраты результат к вызывающей стороне.
Для DataHandlers, который инстанцируют с Объектом, DataHandler сначала пытается найти DataContentHandler для Объекта. Если DataHandler не может найти DataContentHandler для этого типа MIME, он бросает UnsupportedDataTypeException. Если это успешно, это создает канал и поток. Поток использует DataContentHandler writeTo
метод, чтобы записать потоковые данные в один конец канала. Другой конец канала возвращается к вызывающей стороне. Поскольку поток создается, чтобы скопировать данные, IOExceptions, который может произойти во время копии, не может быть распространен назад к вызывающей стороне. Результатом является пустой поток.
IOException
- если ошибка ввода-вывода происходитDataContentHandler.writeTo(java.lang.Object, java.lang.String, java.io.OutputStream)
, UnsupportedDataTypeException
public void writeTo(OutputStream os) throws IOException
OutputStream
.Если DataHandler создавался с DataSource, writeTo получает InputStream и копирует байты от InputStream до OutputStream, в котором передают.
Если DataHandler создавался с объектом, writeTo получает DataContentHandler для типа объекта. Если DataContentHandler был найден, он вызывает writeTo
метод на DataContentHandler
.
os
- OutputStream, чтобы записать вIOException
- если ошибка ввода-вывода происходитpublic OutputStream getOutputStream() throws IOException
getOutputStream
метод вызывают. Иначе, null
возвращается.IOException
DataSource.getOutputStream()
, URLDataSource
public DataFlavor[] getTransferDataFlavors()
Возвращает массив объектов DataFlavor, указывающих на разновидности, в которых могут быть обеспечены данные. Массиву обычно упорядочивают согласно предпочтению обеспечению данных, от наиболее богато дескриптивного к наименее богато дескриптивному.
DataHandler пытается найти DataContentHandler, который соответствует типу MIME данных. Если Вы располагаетесь, DataHandler вызывает DataContentHandler getTransferDataFlavors
метод.
Если DataContentHandler не может быть расположен, и если DataHandler создавался с DataSource (или URL), один DataFlavor возвращается, который представляет тип MIME этого объекта и java.io.InputStream
класс. Если DataHandler создавался с объектом, и тип MIME, getTransferDataFlavors возвращает один DataFlavor, который представляет тип MIME этого объекта и класс объекта.
getTransferDataFlavors
в интерфейсе Transferable
DataContentHandler.getTransferDataFlavors()
public boolean isDataFlavorSupported(DataFlavor flavor)
Этот метод выполняет итерации через DataFlavors, возвращенный из getTransferDataFlavors
, сравнение каждого с указанной разновидностью.
isDataFlavorSupported
в интерфейсе Transferable
flavor
- требуемая разновидность для данныхgetTransferDataFlavors()
public Object getTransferData(DataFlavor flavor) throws UnsupportedFlavorException, IOException
Для DataHandler, создаваемого с DataSources или URL:
DataHandler пытается определить местоположение DataContentHandler для этого типа MIME. Если Вы находитесь, переданные в DataFlavor и типе данных передают к getTransferData
метод. Если DataHandler не в состоянии определить местоположение DataContentHandler, и разновидность определяет тип MIME этого объекта и java.io.InputStream
класс, InputStream этого объекта возвращается. Иначе это бросает UnsupportedFlavorException.
Для DataHandler, создаваемого с Объектами:
DataHandler пытается определить местоположение DataContentHandler для этого типа MIME. Если Вы находитесь, переданные в DataFlavor и типе данных передают к его getTransferData методу. Если DataHandler не в состоянии определить местоположение DataContentHandler, и разновидность определяет тип MIME этого объекта и его класс, объект этого DataHandler, на который ссылаются, возвращается. Иначе это бросает UnsupportedFlavorException.
getTransferData
в интерфейсе Transferable
flavor
- требуемая разновидность для данныхUnsupportedFlavorException
- если данные не могли бы быть преобразованы в требуемую разновидностьIOException
- если ошибка ввода-вывода происходитActivationDataFlavor
public void setCommandMap(CommandMap commandMap)
null
заставляет CommandMap возвращаться в CommandMap, возвращенный CommandMap.getDefaultCommandMap
метод. Изменение CommandMap, или установка этого к null
, убирает любые данные, кэшируемые от предыдущего CommandMap.commandMap
- CommandMap, чтобы использовать в этом DataHandlerCommandMap.setDefaultCommandMap(javax.activation.CommandMap)
public CommandInfo[] getPreferredCommands()
getPreferredCommands
метод в CommandMap связался с этим экземпляром DataHandler. Этот метод возвращает массив, который представляет подмножество доступных команд. В случаях, где многократные команды для типа MIME, представленного этим DataHandler, присутствуют, установленный CommandMap выбирает соответствующие команды.CommandMap.getPreferredCommands(java.lang.String)
public CommandInfo[] getAllCommands()
getAllCommands
метод CommandMap связался с этим DataHandler.CommandMap.getAllCommands(java.lang.String)
public CommandInfo getCommand(String cmdName)
getCommand
метод CommandMap связался с этим DataHandler.cmdName
- название командыCommandMap.getCommand(java.lang.String, java.lang.String)
public Object getContent() throws IOException
Если DataHandler инстанцировали с объектом, возвратите объект.
Если DataHandler инстанцировали с DataSource, этот метод использует DataContentHandler, чтобы возвратить объект контента для данных, представленных этим DataHandler. Если нет DataContentHandler
может быть найден для тип этих данных, DataHandler возвращает InputStream для данных.
IOException
- если IOException происходит во время этой работы.public Object getBean(CommandInfo cmdinfo)
Это вызовы метода CommandInfo getCommandObject
метод с ClassLoader
используемый, чтобы загрузиться javax.activation.DataHandler
класс непосредственно.
cmdinfo
- CommandInfo, соответствующий командеpublic static void setDataContentHandlerFactory(DataContentHandlerFactory newFactory)
Если DataContentHandlerFactory был уже установлен, этот метод бросает Ошибку.
newFactory
- DataContentHandlerFactoryError
- если фабрика была уже определена.DataContentHandlerFactory
Для дальнейшей ссылки API и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.