|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.awt.datatransfer.SystemFlavorMap
public final class SystemFlavorMap
SystemFlavorMap 是 "native" (String)(对应于特定于平台的数据格式)和 "flavor" (DataFlavor)(对应于与平台无关的 MIME 类型)之间的可配置映射。数据传输子系统使用此映射在 Java 和本机应用程序之间传输数据,以及在独立的 VM 中的 Java 应用程序之间传输数据。
在 Sun 参考实现中,默认的 SystemFlavorMap 是通过文件 jre/lib/flavormap.properties
和 AWT 属性 AWT.DnD.flavorMapFileURL
所引用的 URL 的内容初始化的。有关详细信息,请参阅 flavormap.properties
。
方法摘要 | |
---|---|
void |
addFlavorForUnencodedNative(String nat,
DataFlavor flav)
添加从单个 String native 到单个 DataFlavor 的映射。 |
void |
addUnencodedNativeForFlavor(DataFlavor flav,
String nat)
添加从指定的 DataFlavor (和等于指定 DataFlavor 的所有 DataFlavor )到指定 String native 的映射。 |
static DataFlavor |
decodeDataFlavor(String nat)
解码 String native 以用作 DataFlavor 。 |
static String |
decodeJavaMIMEType(String nat)
解码 String native 以用作 Java MIME 类型。 |
static String |
encodeDataFlavor(DataFlavor flav)
编码 DataFlavor 以用作 String native。 |
static String |
encodeJavaMIMEType(String mimeType)
编码 MIME 类型以用作 String native。 |
static FlavorMap |
getDefaultFlavorMap()
返回此线程的 ClassLoader 的默认 FlavorMap。 |
List<DataFlavor> |
getFlavorsForNative(String nat)
返回数据传输子系统可以将指定 String native 转换成的 DataFlavor 的 List 。 |
Map<String,DataFlavor> |
getFlavorsForNatives(String[] natives)
返回指定 String native 到其大多数首选 DataFlavor 的 Map 。 |
List<String> |
getNativesForFlavor(DataFlavor flav)
返回数据传输子系统可以将指定 DataFlavor 转换成的 String native 的 List 。 |
Map<DataFlavor,String> |
getNativesForFlavors(DataFlavor[] flavors)
返回指定 DataFlavor 到其大多数首选的 String native 的 Map 。 |
static boolean |
isJavaMIMEType(String str)
返回指定的 String 是否为编码的 Java MIME 类型。 |
void |
setFlavorsForNative(String nat,
DataFlavor[] flavors)
放弃指定 String native 的当前映射,而创建指定 DataFlavor 的新映射。 |
void |
setNativesForFlavor(DataFlavor flav,
String[] natives)
放弃指定 DataFlavor 和等于指定 DataFlavor 的所有 DataFlavor 的当前映射,并创建到指定 String native 的新映射。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
方法详细信息 |
---|
public static FlavorMap getDefaultFlavorMap()
public List<String> getNativesForFlavor(DataFlavor flav)
DataFlavor
转换成的 String
native 的 List
。该 List
的排序方式是从最好的 native 到最差的 native。即第一个 native 最能将指定 flavor 的数据反映到底层的本机平台。
如果指定的 DataFlavor
以前对于数据传输子系统而言是未知的,并且数据传输子系统未能将此 DataFlavor
转换为任何现有的 native,则调用此方法将在指定的 DataFlavor
和其 MIME 类型的编码版本之间建立一个双向映射,作为其 native。
FlavorTable
中的 getNativesForFlavor
flav
- 应该返回其对应 native 的 DataFlavor
。如果指定 null
,则数据传输子系统当前已知的所有 native 都将以不确定的顺序返回。
java.lang.String
对象的 java.util.List
,这些对象是特定于平台的数据格式的特定于平台的表示形式encodeDataFlavor(java.awt.datatransfer.DataFlavor)
public List<DataFlavor> getFlavorsForNative(String nat)
String
native 转换成的 DataFlavor
的 List
。该 List
的排序方式是从最好的 DataFlavor
到最差的 DataFlavor
。即第一个 DataFlavor
最能将指定 native 中的数据反映到 Java 应用程序。
如果指定的 native 以前对于数据传输子系统而言是未知的,并且该 native 编码正确,则调用此方法将在指定的 native 和 DataFlavor
(其 MIME 类型为 native 的解码版本)之间建立一个双向映射。
如果指定的 native 不是正确编码的 native,并且此 native 的映射关系没有使用 setFlavorsForNative
进行修改,则 List
的内容是与平台有关的,但是并不能返回 null
。
FlavorTable
中的 getFlavorsForNative
nat
- 应该返回其对应 DataFlavor
的 native。如果指定 null
,则数据传输子系统当前已知的所有 DataFlavor
都将以不确定的顺序返回。
DataFlavor
对象的 java.util.List
,可以将特定于平台的指定 native 中特定于平台的数据转换为这些对象。encodeJavaMIMEType(java.lang.String)
public Map<DataFlavor,String> getNativesForFlavors(DataFlavor[] flavors)
DataFlavor
到其大多数首选的 String
native 的 Map
。每一个 native 值都将与指定 flavor 的 getNativesForFlavor
所返回 List 中的第一个 native 相同。
如果指定的 DataFlavor
以前对于数据传输子系统是未知的,那么调用此方法将在指定的 DataFlavor
和其 MIME 类型的编码版本之间建立一个双向映射,作为其 native。
FlavorMap
中的 getNativesForFlavors
flavors
- 一组 DataFlavor
,它们是返回 Map
的键集。如果指定了 null
,则返回对数据传输子系统已知的所有 DataFlavor
到其大多数首选 String
native 的映射。
DataFlavor
到 String
native 的 java.util.Map
getNativesForFlavor(java.awt.datatransfer.DataFlavor)
,
encodeDataFlavor(java.awt.datatransfer.DataFlavor)
public Map<String,DataFlavor> getFlavorsForNatives(String[] natives)
String
native 到其大多数首选 DataFlavor
的 Map
。每一个 DataFlavor
值都将与指定 native 的 getFlavorsForNative
所返回 List 中的第一个 DataFlavor
相同。
如果指定的 native 以前对于数据传输子系统而言是未知的,并且该 native 编码正确,则调用此方法将在指定的 native 和 DataFlavor
(其 MIME 类型为 native 的解码版本)之间建立一个双向映射。
FlavorMap
中的 getFlavorsForNatives
native
- 一组 String
,它们是返回 Map
的键集。如果指定了 null
,则返回所有受支持 String
native 到其大多数首选 DataFlavor
的映射。
String
native 到 DataFlavor
的 java.util.Map
getFlavorsForNative(java.lang.String)
,
encodeJavaMIMEType(java.lang.String)
public void addUnencodedNativeForFlavor(DataFlavor flav, String nat)
DataFlavor
(和等于指定 DataFlavor
的所有 DataFlavor
)到指定 String
native 的映射。与 getNativesForFlavor
不同,该映射仅是单向建立的,并且不对 native 进行编码。要建立双向映射,请同时调用 addFlavorForUnencodedNative
。新的映射优先级低于现有映射。如果从指定或相等 DataFlavor
到指定 String
native 的映射已经存在,则此方法无效。
flav
- 该映射的 DataFlavor
键nat
- 该映射的 String
native 值
NullPointerException
- 如果 flav 或 nat 为 null
addFlavorForUnencodedNative(java.lang.String, java.awt.datatransfer.DataFlavor)
public void setNativesForFlavor(DataFlavor flav, String[] natives)
DataFlavor
和等于指定 DataFlavor
的所有 DataFlavor
的当前映射,并创建到指定 String
native 的新映射。与 getNativesForFlavor
不同,这些映射仅是单向建立的,并且不对 native 进行编码。要建立双向映射,请同时调用 setFlavorsForNative
。数组中的第一个 native 表示最高优先级的映射。后续 native 所表示的映射的优先级是递减的。
如果数组包含多个引用相等 String
native 的元素,则此方法将为其中第一个元素建立新映射,而忽略其余的元素。
建议客户机代码不要重置数据传输子系统建立的映射。此方法仅用于应用程序级的映射。
flav
- 该映射的 DataFlavor
键natives
- 该映射的 String
native 值
NullPointerException
- 如果 flav 或 native 为 null
或者 native 包含 null
元素setFlavorsForNative(java.lang.String, java.awt.datatransfer.DataFlavor[])
public void addFlavorForUnencodedNative(String nat, DataFlavor flav)
String
native 到单个 DataFlavor
的映射。与 getFlavorsForNative
不同,该映射仅是单向建立的,并且不对 native 进行编码。要建立双向映射,请同时调用 addUnencodedNativeForFlavor
。新的映射优先级低于现有映射。如果从指定 String
native 到指定或相等 DataFlavor
的映射已经存在,则此方法无效。
nat
- 该映射的 String
native 键flav
- 该映射的 DataFlavor
值
NullPointerException
- 如果 nat 或 flav 为 null
addUnencodedNativeForFlavor(java.awt.datatransfer.DataFlavor, java.lang.String)
public void setFlavorsForNative(String nat, DataFlavor[] flavors)
String
native 的当前映射,而创建指定 DataFlavor
的新映射。与 getFlavorsForNative
不同,这些映射将仅是单向建立的,并且不需要对 native 进行编码。要建立双向映射,请同时调用 setNativesForFlavor
。数组中的第一个 DataFlavor
表示最高优先级的映射。后续 DataFlavor
所表示的映射的优先级是递减的。
如果数组包含多个引用相等 DataFlavor
的元素,则为其中的第一个元素建立新映射,而忽略其余的元素。
建议客户机代码不要重置数据传输子系统建立的映射。此方法仅用于应用程序级的映射。
nat
- 映射的 String
native 键flavor
- 映射的 DataFlavor
值
NullPointerException
- 如果 nat 或 flavor 为 null
或者 flavor 包含 null
元素setNativesForFlavor(java.awt.datatransfer.DataFlavor, java.lang.String[])
public static String encodeJavaMIMEType(String mimeType)
String
native。MIME 类型的编码表示形式的格式是与实现有关的。仅有的限制是:
String
为 null
时,编码表示形式为 null
。null
MIME 类型 String
的编码表示形式相等的条件是,当且仅当根据 String.equals(Object)
这些 String
相等。
Sun 对此方法的参考实现返回指定 MIME 类型 String
,前缀为 JAVA_DATAFLAVOR:
。
mimeType
- 要编码的 MIME 类型
String
,如果 mimeType 为 null
,则返回 null
public static String encodeDataFlavor(DataFlavor flav)
DataFlavor
以用作 String
native。编码的 DataFlavor
的格式是与实现有关的。仅有的限制是:
DataFlavor
为 null
或者其 MIME 类型 String
为 null
时,编码表示形式为 null
。null
MIME 类型 String
的两个非 null
DataFlavor
的编码表示形式相等的条件是,根据 String.equals(Object)
当且仅当这些 DataFlavor
的 MIME 类型 String
相等。
Sun 对此方法的参考实现返回前缀为 JAVA_DATAFLAVOR:
的指定 DataFlavor
的 MIME 类型 String
。
flav
- 要编码的 DataFlavor
String
,如果 flav 为 null
或者具有 null
MIME 类型,则返回 null
public static boolean isJavaMIMEType(String str)
String
是否为编码的 Java MIME 类型。
str
- 要测试的 String
String
进行了编码,则返回 true
;否则返回 false
public static String decodeJavaMIMEType(String nat)
String
native 以用作 Java MIME 类型。
nat
- 要解码的 String
String
native,则返回 null
public static DataFlavor decodeDataFlavor(String nat) throws ClassNotFoundException
String
native 以用作 DataFlavor
。
nat
- 要解码的 String
DataFlavor
,如果 nat 不是编码的 String
native,则返回 null
ClassNotFoundException
|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。