モジュール java.datatransfer
パッケージ java.awt.datatransfer

クラスSystemFlavorMap

java.lang.Object
java.awt.datatransfer.SystemFlavorMap
すべての実装されたインタフェース:
FlavorMap, FlavorTable

public final class SystemFlavorMap
extends Object
implements FlavorMap, FlavorTable
SystemFlavorMapは、プラットフォーム固有のデータ形式に対応する「ネイティブ」(文字列)と、プラットフォームから独立したMIMEタイプに対応する「フレーバ」(DataFlavors)の間の、構成可能なマップです。 このマッピングは、Javaとネイティブ・アプリケーションの間、および別個のVM内のJavaアプリケーション間でデータを転送するために、データ転送サブシステムによって使用されます。
導入されたバージョン:
1.2
  • メソッドの詳細

    • getDefaultFlavorMap

      public static FlavorMap getDefaultFlavorMap()
      このスレッドのClassLoaderの、デフォルトのFlavorMapを返します。
      戻り値:
      このスレッドのデフォルトのFlavorMap ClassLoader
    • getNativesForFlavor

      public List<String> getNativesForFlavor​(DataFlavor flav)
      指定されたDataFlavorのデータ転送サブシステムによる変換の宛先にすることのできるStringネイティブのListを返します。 Listは、もっとも適しているネイティブからもっとも適していないものの順にソートされます。 つまり、基本となるネイティブ・プラット・フォームに指定されたフレーバのデータをもっともよく反映するのは、最初のネイティブということになります。

      指定されたDataFlavorが以前にデータ転送サブシステムに認識されておらず、データ転送サブシステムがこのDataFlavorを既存のネイティブに変換できない場合は、このメソッドを呼び出すと、指定されたDataFlavorと、そのMIMEタイプのネイティブとしてエンコードされたバージョンの間の双方向のマッピングが確立されます。

      定義:
      getNativesForFlavor、インタフェース: FlavorTable
      パラメータ:
      flav - 対応するネイティブが返されるDataFlavor nullが指定されている場合は、現在データ転送サブシステムに認識されているすべてのネイティブが順序不定で返される。
      戻り値:
      プラットフォーム固有のデータ形式のプラットフォーム固有表現であるjava.lang.Stringオブジェクトのjava.util.List
      導入されたバージョン:
      1.4
      関連項目:
      encodeDataFlavor(java.awt.datatransfer.DataFlavor)
    • getFlavorsForNative

      public List<DataFlavor> getFlavorsForNative​(String nat)
      指定されたStringネイティブのデータ転送サブシステムによる変換の宛先にすることのできるDataFlavorListを返します。 Listは、もっとも適しているDataFlavorからもっとも適していないものの順にソートされます。 つまり、最初のDataFlavorが、Javaアプリケーションに指定されたネイティブ内のデータをもっともよく反映しています。

      指定されたネイティブが以前にデータ転送サブシステムに認識されておらず、そのネイティブが適切にエンコードされている場合は、このメソッドを呼び出すと、指定されたネイティブと、デコードされたバージョンのネイティブをMIMEタイプとして持つDataFlavorの間の双方向のマッピングが確立されます。

      指定されたネイティブが適切にエンコードされたネイティブではなく、このネイティブのマッピングがsetFlavorsForNativeによって変更されていない場合、Listの内容はプラットフォームに依存しますが、nullを返すことはできません。

      定義:
      getFlavorsForNative、インタフェース: FlavorTable
      パラメータ:
      nat - 対応するDataFlavorが返されるネイティブ。 nullが指定されている場合は、現在データ転送サブシステムに認識されているすべてのDataFlavorが順序不定で返される。
      戻り値:
      指定されたプラットフォーム固有ネイティブ内のプラットフォーム固有データの変換先にできるDataFlavorオブジェクトのjava.util.List
      導入されたバージョン:
      1.4
      関連項目:
      encodeJavaMIMEType(java.lang.String)
    • getNativesForFlavors

      public Map<DataFlavor,​String> getNativesForFlavors​(DataFlavor[] flavors)
      指定されたDataFlavorの、そのもっとも適切なStringネイティブへのMapを返します。 各ネイティブ値は、指定されたフレーバに対してgetNativesForFlavorが返すリスト内の最初のネイティブと同じになります。

      指定されたDataFlavorが以前にデータ転送サブシステムに認識されていない場合は、このメソッドを呼び出すと、指定されたDataFlavorと、そのMIMEタイプをネイティブとしてエンコードしたものとの間で、双方向のマッピングが確立されます。

      定義:
      getNativesForFlavors、インタフェース: FlavorMap
      パラメータ:
      flavors - 返されたMapのキー・セットになるDataFlavorの配列。 nullが指定されている場合は、データ転送サブシステムに認識されているすべてのDataFlavorから、そのもっとも適切なStringネイティブへのマッピングが返される。
      戻り値:
      DataFlavorからStringネイティブへのjava.util.Map
      関連項目:
      getNativesForFlavor(java.awt.datatransfer.DataFlavor), encodeDataFlavor(java.awt.datatransfer.DataFlavor)
    • getFlavorsForNatives

      public Map<String,​DataFlavor> getFlavorsForNatives​(String[] natives)
      指定されたStringネイティブの、そのもっとも適切なDataFlavorへのMapを返します。 DataFlavor値は、指定されたネイティブに対してgetFlavorsForNativeによって返されるリスト内の最初のDataFlavorと同じになります。

      指定されたネイティブが以前にデータ転送サブシステムに認識されておらず、そのネイティブが適切にエンコードされている場合は、このメソッドを呼び出すと、指定されたネイティブと、デコードされたバージョンのネイティブをMIMEタイプとして持つDataFlavorの間の双方向のマッピングが確立されます。

      定義:
      getFlavorsForNatives、インタフェース: FlavorMap
      パラメータ:
      natives - 返されたMapのキー・セットになるStringの配列。 nullが指定されている場合は、サポートされるすべてのStringネイティブから、そのもっとも適切なDataFlavorへのマッピングが返される。
      戻り値:
      StringネイティブからDataFlavorへのjava.util.Map
      関連項目:
      getFlavorsForNative(java.lang.String), encodeJavaMIMEType(java.lang.String)
    • addUnencodedNativeForFlavor

      public void addUnencodedNativeForFlavor​(DataFlavor flav, String nat)
      指定されたDataFlavor (および指定されたDataFlavorに等しいすべてのDataFlavor)から指定されたStringネイティブへのマッピングを追加します。 getNativesForFlavorとは異なり、このマッピングは一方向にのみ確立され、ネイティブはエンコードされません。 双方向のマッピングを確立するには、addFlavorForUnencodedNativeも呼び出します。 新しいマッピングの優先度は、既存のマッピングよりも低くなります。 指定された、または等しいDataFlavorから、指定されたStringネイティブへのマッピングがすでに存在する場合は、このメソッドに効果はありません。
      パラメータ:
      flav - マッピング用のDataFlavorキー
      nat - マッピング用のStringネイティブ値
      例外:
      NullPointerException - flavまたはnatがnullの場合
      導入されたバージョン:
      1.4
      関連項目:
      addFlavorForUnencodedNative(java.lang.String, java.awt.datatransfer.DataFlavor)
    • setNativesForFlavor

      public void setNativesForFlavor​(DataFlavor flav, String[] natives)
      指定されたDataFlavor、および指定されたDataFlavorに等しいすべてのDataFlavorの現在のマッピングを破棄し、指定されたStringネイティブへの新しいマッピングを作成します。 getNativesForFlavorとは異なり、このマッピングは一方向にのみ確立され、ネイティブはエンコードされません。 双方向のマッピングを確立するには、setFlavorsForNativeも呼び出します。 配列内の最初のネイティブは、優先度がもっとも高いマッピングを表します。 続くネイティブでは、マッピングの優先度が下がっていきます。

      配列に、等しいStringネイティブを参照する複数の要素が含まれている場合、このメソッドは、これらのうちの最初の要素のための新しいマッピングを確立し、残りの要素を無視します。

      データ転送サブシステムが確立したマッピングをクライアント・コードでリセットしないようお薦めします。 このメソッドは、アプリケーション・レベルのマッピングだけに使用します。

      パラメータ:
      flav - マッピング用のDataFlavorキー
      natives - マッピング用のStringネイティブ値
      例外:
      NullPointerException - flavまたはネイティブがnullの場合、またはネイティブにnull要素が含まれている場合
      導入されたバージョン:
      1.4
      関連項目:
      setFlavorsForNative(java.lang.String, java.awt.datatransfer.DataFlavor[])
    • addFlavorForUnencodedNative

      public void addFlavorForUnencodedNative​(String nat, DataFlavor flav)
      1つのStringネイティブから1つのDataFlavorへのマッピングを追加します。 getFlavorsForNativeとは異なり、このマッピングは一方向にのみ確立され、ネイティブはエンコードされません。 双方向のマッピングを確立するには、addUnencodedNativeForFlavorも呼び出します。 新しいマッピングの優先度は、既存のマッピングよりも低くなります。 指定されたStringネイティブから、指定された、または等しいDataFlavorへのマッピングがすでに存在する場合は、このメソッドに効果はありません。
      パラメータ:
      nat - マッピング用のStringネイティブ・キー
      flav - マッピング用のDataFlavor
      例外:
      NullPointerException - natまたはflavnullの場合
      導入されたバージョン:
      1.4
      関連項目:
      addUnencodedNativeForFlavor(java.awt.datatransfer.DataFlavor, java.lang.String)
    • setFlavorsForNative

      public void setFlavorsForNative​(String nat, DataFlavor[] flavors)
      指定されたStringネイティブの現在のマッピングを破棄し、指定されたDataFlavorへの新しいマッピングを作成します。 getFlavorsForNativeとは異なり、このマッピングは一方向にのみ確立され、ネイティブをエンコードする必要はありません。 双方向のマッピングを確立するには、setNativesForFlavorも呼び出します。 配列内の最初のDataFlavorは、優先度がもっとも高いマッピングを表します。 以降のDataFlavorでは、マッピングの優先度が下がっていきます。

      配列に、等しいDataFlavorを参照する複数の要素が含まれている場合、このメソッドは、これらのうちの最初の要素のための新しいマッピングを確立し、残りの要素を無視します。

      データ転送サブシステムが確立したマッピングをクライアント・コードでリセットしないようお薦めします。 このメソッドは、アプリケーション・レベルのマッピングだけに使用します。

      パラメータ:
      nat - マッピング用のStringネイティブ・キー
      flavors - マッピング用のDataFlavor
      例外:
      NullPointerException - natまたはflavorsnullの場合、またはflavorsnull要素が含まれている場合
      導入されたバージョン:
      1.4
      関連項目:
      setNativesForFlavor(java.awt.datatransfer.DataFlavor, java.lang.String[])
    • encodeJavaMIMEType

      public static String encodeJavaMIMEType​(String mimeType)
      Stringネイティブとして使用するためにMIMEタイプをエンコードします。 MIMEタイプのエンコードされた表現の形式は、実装に依存します。 制限は次に示すものだけです。
      • エンコードされた表現がnullになるのは、MIMEタイプStringnullの場合だけです
      • null以外の2つのMIMEタイプStringのエンコードされた表現が等しいのは、これらのStringString.equals(Object)に従って等しい場合だけです
      このメソッドのリファレンス実装では、接頭辞JAVA_DATAFLAVOR:が付いた指定されたMIMEタイプStringを返します。
      パラメータ:
      mimeType - エンコードするMIMEタイプ
      戻り値:
      mimeTypenullならば、エンコードされたString、またはnull
    • encodeDataFlavor

      public static String encodeDataFlavor​(DataFlavor flav)
      Stringネイティブとして使用するためにDataFlavorをエンコードします。 エンコードされたDataFlavorの形式は、実装に依存します。 制限は次に示すものだけです。
      • エンコードされた表現がnullになるのは、指定されたDataFlavornullか、またはそのMIMEタイプStringnullの場合だけです
      • null以外のMIMEタイプStringを持つnull以外の2つのDataFlavorのエンコードされた表現が等しいのは、これらのDataFlavorのMIMEタイプStringString.equals(Object)に従って等しい場合だけです
      このメソッドのリファレンス実装では、接頭辞JAVA_DATAFLAVOR:が付いた指定されたDataFlavorのMIMEタイプStringを返します。
      パラメータ:
      flav - エンコードするDataFlavor
      戻り値:
      flavnullまたはnull MIMEタイプの場合は、エンコードされたStringまたはnull
    • isJavaMIMEType

      public static boolean isJavaMIMEType​(String str)
      指定されたStringがエンコードされたJava MIMEタイプであるかどうかを返します。
      パラメータ:
      str - テストするString
      戻り値:
      Stringがエンコードされている場合はtrue。それ以外の場合はfalse
    • decodeJavaMIMEType

      public static String decodeJavaMIMEType​(String nat)
      Java MIMEタイプとして使用するためにStringネイティブをデコードします。
      パラメータ:
      nat - デコードするString
      戻り値:
      デコードされたJava MIMEタイプ、またはnatがエンコードされたStringでない場合はnull
    • decodeDataFlavor

      public static DataFlavor decodeDataFlavor​(String nat) throws ClassNotFoundException
      DataFlavorとして使用するためにStringネイティブをデコードします。
      パラメータ:
      nat - デコードするString
      戻り値:
      natがエンコードされたStringネイティブでない場合、デコードされたDataFlavor、またはnull
      例外:
      ClassNotFoundException - データ・フレーバのクラスがロードされていない場合