|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.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 中的 getNativesForFlavorflav - 应该返回其对应 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 中的 getFlavorsForNativenat - 应该返回其对应 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 中的 getNativesForFlavorsflavors - 一组 DataFlavor,它们是返回 Map 的键集。如果指定了 null,则返回对数据传输子系统已知的所有 DataFlavor 到其大多数首选 String native 的映射。
DataFlavor 到 String native 的 java.util.MapgetNativesForFlavor(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 中的 getFlavorsForNativesnative - 一组 String,它们是返回 Map 的键集。如果指定了 null,则返回所有受支持 String native 到其大多数首选 DataFlavor 的映射。
String native 到 DataFlavor 的 java.util.MapgetFlavorsForNative(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 为 nulladdFlavorForUnencodedNative(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 为 nulladdUnencodedNativeForFlavor(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,则返回 nullpublic 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 类型,则返回 nullpublic static boolean isJavaMIMEType(String str)
String 是否为编码的 Java MIME 类型。
str - 要测试的 String
String 进行了编码,则返回 true;否则返回 falsepublic 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. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。