source: trunk/gcc/libjava/java/awt/datatransfer/SystemFlavorMap.java@ 3148

Last change on this file since 3148 was 1392, checked in by bird, 22 years ago

This commit was generated by cvs2svn to compensate for changes in r1391,
which included commits to RCS files with non-trunk default branches.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 4.9 KB
Line 
1/* SystemFlavorMap.java -- Maps between native flavor names and MIME types.
2 Copyright (C) 2001 Free Software Foundation, Inc.
3
4This file is part of GNU Classpath.
5
6GNU Classpath is free software; you can redistribute it and/or modify
7it under the terms of the GNU General Public License as published by
8the Free Software Foundation; either version 2, or (at your option)
9any later version.
10
11GNU Classpath is distributed in the hope that it will be useful, but
12WITHOUT ANY WARRANTY; without even the implied warranty of
13MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14General Public License for more details.
15
16You should have received a copy of the GNU General Public License
17along with GNU Classpath; see the file COPYING. If not, write to the
18Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
1902111-1307 USA.
20
21Linking this library statically or dynamically with other modules is
22making a combined work based on this library. Thus, the terms and
23conditions of the GNU General Public License cover the whole
24combination.
25
26As a special exception, the copyright holders of this library give you
27permission to link this library with independent modules to produce an
28executable, regardless of the license terms of these independent
29modules, and to copy and distribute the resulting executable under
30terms of your choice, provided that you also meet, for each linked
31independent module, the terms and conditions of the license of that
32module. An independent module is a module which is not derived from
33or based on this library. If you modify this library, you may extend
34this exception to your version of the library, but you are not
35obligated to do so. If you do not wish to do so, delete this
36exception statement from your version. */
37
38
39package java.awt.datatransfer;
40
41import java.util.HashMap;
42import java.util.Map;
43import java.util.List;
44
45/**
46 * This class maps between native platform type names and DataFlavors.
47 *
48 * XXX - The current implementation does no mapping at all.
49 *
50 * @author Mark Wielaard ([email protected])
51 *
52 * @since 1.2
53 */
54public final class SystemFlavorMap implements FlavorMap, FlavorTable
55{
56 /**
57 * The default (instance) flavor map.
58 */
59 private static FlavorMap defaultFlavorMap;
60
61 /**
62 * Private constructor.
63 */
64 private SystemFlavorMap ()
65 {
66 }
67
68 /**
69 * Maps the specified <code>DataFlavor</code> objects to the native
70 * data type name. The returned <code>Map</code> has keys that are
71 * the data flavors and values that are strings. The returned map
72 * may be modified. This can be useful for implementing nested mappings.
73 *
74 * @param flavors An array of data flavors to map
75 * or null for all data flavors.
76 *
77 * @return A <code>Map</code> of native data types to data flavors.
78 */
79 public Map getNativesForFlavors (DataFlavor[] flavors)
80 {
81 return new HashMap();
82 }
83
84 /**
85 * Maps the specified native type names to <code>DataFlavor</code>'s.
86 * The returned <code>Map</code> has keys that are strings and values
87 * that are <code>DataFlavor</code>'s. The returned map may be
88 * modified. This can be useful for implementing nested mappings.
89 *
90 * @param natives An array of native types to map
91 * or null for all native types.
92 *
93 * @return A <code>Map</code> of data flavors to native type names.
94 */
95 public Map getFlavorsForNatives (String[] natives)
96 {
97 return new HashMap();
98 }
99
100 /**
101 * Returns the default (instance) (System)FlavorMap.
102 */
103 public static FlavorMap getDefaultFlavorMap ()
104 {
105 if (defaultFlavorMap == null)
106 defaultFlavorMap = new SystemFlavorMap ();
107
108 return defaultFlavorMap;
109 }
110
111 /**
112 * Returns the native type name for the given java mime type.
113 */
114 public static String encodeJavaMIMEType (String mime)
115 {
116 return null;
117 }
118
119 /**
120 * Returns the native type name for the given data flavor.
121 */
122 public static String encodeDataFlavor (DataFlavor df)
123 {
124 return null;
125 }
126
127 /**
128 * Returns true if the native type name can be represented as
129 * a java mime type.
130 */
131 public static boolean isJavaMIMEType (String name)
132 {
133 return false;
134 }
135
136 /**
137 * Returns the java mime type for the given the native type name.
138 */
139 public static String decodeJavaMIMEType (String name)
140 {
141 return null;
142 }
143
144 /**
145 * Returns the data flavor given the native type name
146 * or null when no such data flavor exists.
147 */
148 public static DataFlavor decodeDataFlavor (String name)
149 throws ClassNotFoundException
150 {
151 String javaMIMEType = decodeJavaMIMEType (name);
152
153 if (javaMIMEType != null)
154 return new DataFlavor (javaMIMEType);
155 else
156 return null;
157 }
158
159 public List getFlavorsForNative (String nat)
160 {
161 throw new Error ("Not implemented");
162 }
163
164 public List getNativesForFlavor (DataFlavor flav)
165 {
166 throw new Error ("Not implemented");
167 }
168
169} // class SystemFlavorMap
Note: See TracBrowser for help on using the repository browser.