, QueryExp {
* @return A new {@code ObjectName} that is the same as {@code this}
* except the domain is {@code newDomain}.
* @throws NullPointerException if {@code newDomain} is null.
- * @throws MalformedObjectNameException if the new domain is syntactically
- * illegal.
+ * @exception IllegalArgumentException The {@code newDomain} passed as a
+ * parameter does not have the right format. The {@linkplain
+ * Throwable#getCause() cause} of this exception will be a
+ * {@link MalformedObjectNameException}.
* @since 1.7
**/
- public final ObjectName withDomain(String newDomain)
- throws MalformedObjectNameException {
- return new ObjectName(newDomain, this);
+ public final ObjectName withDomain(String newDomain) {
+ try {
+ return new ObjectName(newDomain, this);
+ } catch (MalformedObjectNameException x) {
+ throw new IllegalArgumentException(x.getMessage(),x);
+ }
}
/**
diff --git a/jdk/src/share/classes/javax/management/namespace/JMXDomain.java b/jdk/src/share/classes/javax/management/namespace/JMXDomain.java
index bff3c137062..ca108bf126b 100644
--- a/jdk/src/share/classes/javax/management/namespace/JMXDomain.java
+++ b/jdk/src/share/classes/javax/management/namespace/JMXDomain.java
@@ -35,7 +35,6 @@ import static javax.management.namespace.JMXNamespaces.NAMESPACE_SEPARATOR;
import javax.management.InstanceNotFoundException;
import javax.management.MBeanServer;
import javax.management.MBeanServerDelegate;
-import javax.management.MalformedObjectNameException;
import javax.management.ObjectName;
/**
@@ -291,12 +290,9 @@ public class JMXDomain extends JMXNamespace {
public static ObjectName getDomainObjectName(String domain) {
if (domain == null) return null;
if (domain.contains(NAMESPACE_SEPARATOR))
- throw new IllegalArgumentException(domain);
- try {
- return ObjectName.getInstance(domain, "type", TYPE);
- } catch (MalformedObjectNameException x) {
- throw new IllegalArgumentException(domain,x);
- }
+ throw new IllegalArgumentException("domain contains " +
+ NAMESPACE_SEPARATOR+": "+domain);
+ return ObjectName.valueOf(domain, "type", TYPE);
}
diff --git a/jdk/src/share/classes/javax/management/namespace/JMXNamespacePermission.java b/jdk/src/share/classes/javax/management/namespace/JMXNamespacePermission.java
index 5dd012672b3..62608cb0610 100644
--- a/jdk/src/share/classes/javax/management/namespace/JMXNamespacePermission.java
+++ b/jdk/src/share/classes/javax/management/namespace/JMXNamespacePermission.java
@@ -136,7 +136,8 @@ import java.security.Permission;
* **
matches any number of sub namespaces
* recursively, but only if used as a complete namespace path element,
* as in **//b//c//D:k=v
or a//**//c//D:k=v
- * - see below.
+ * - see ObjectName documentation
+ * for more details.
*
*
*
@@ -270,38 +271,9 @@ import java.security.Permission;
*
* Note on wildcards: In an object name pattern, a path element
* of exactly **
corresponds to a meta
- * wildcard that will match any number of sub namespaces. Hence:
- *
- *
- * pattern | matches | doesn't match |
- *
- * **//D:k=v |
- * a//D:k=v
- * a//b//D:k=v
- * a//b//c//D:k=v |
- * D:k=v |
- * a//**//D:k=v |
- * a//b//D:k=v
- * a//b//c//D:k=v |
- * b//b//c//D:k=v
- * a//D:k=v
- * D:k=v |
- * a//**//e//D:k=v |
- * a//b//e//D:k=v
- * a//b//c//e//D:k=v |
- * a//b//c//c//D:k=v
- * b//b//c//e//D:k=v
- * a//e//D:k=v
- * e//D:k=v |
- * a//b**//e//D:k=v |
- * a//b//e//D:k=v |
- * a//b//c//e//D:k=v
- * because in that case b**
- * is not a meta-wildcard - and b**
- * is thus equivalent to b* . |
- *
- *
- *
+ * wildcard that will match any number of sub namespaces.
+ * See ObjectName documentation
+ * for more details.
*
* If {@code ::} is omitted, then one of
* member
or object name
may be omitted.
diff --git a/jdk/src/share/classes/javax/management/namespace/JMXNamespaces.java b/jdk/src/share/classes/javax/management/namespace/JMXNamespaces.java
index f19dfa570e4..ca7244abd28 100644
--- a/jdk/src/share/classes/javax/management/namespace/JMXNamespaces.java
+++ b/jdk/src/share/classes/javax/management/namespace/JMXNamespaces.java
@@ -292,17 +292,13 @@ public class JMXNamespaces {
if (path == null || to == null)
throw new IllegalArgumentException("Null argument");
checkTrailingSlashes(path);
- try {
- String prefix = path;
- if (!prefix.equals("")) prefix =
- ObjectNameRouter.normalizeNamespacePath(
+ String prefix = path;
+ if (!prefix.equals(""))
+ prefix = ObjectNameRouter.normalizeNamespacePath(
prefix + NAMESPACE_SEPARATOR,false,false,false);
- return to.withDomain(
+ return to.withDomain(
ObjectNameRouter.normalizeDomain(
prefix+to.getDomain(),false));
- } catch (MalformedObjectNameException x) {
- throw new IllegalArgumentException(path+": "+x,x);
- }
}
/**
diff --git a/jdk/src/share/classes/javax/management/namespace/package-info.java b/jdk/src/share/classes/javax/management/namespace/package-info.java
index df8354bab63..5c014286d4d 100644
--- a/jdk/src/share/classes/javax/management/namespace/package-info.java
+++ b/jdk/src/share/classes/javax/management/namespace/package-info.java
@@ -204,7 +204,38 @@
*
* An easier way to access MBeans contained in a name space is to
* cd inside the name space, as shown in the following paragraph.
- *
+ *
+ * Although ObjectName patterns where the characters
+ * *
and ?
appear in the namespace path are
+ * legal, they are not valid in the {@code name} parameter of the
+ * MBean Server {@link
+ * javax.management.MBeanServer#queryNames queryNames} and {@link
+ * javax.management.MBeanServer#queryMBeans queryMBeans} methods.
+ * When invoking queryNames
or queryMBeans
,
+ * only ObjectNames of the form:
+ * [namespace-without-pattern//]*[pattern-without-namespace]:key-properties-with-or-without-pattern
+ * are valid.
+ * In other words: in the case of {@link
+ * javax.management.MBeanServer#queryNames queryNames} and {@link
+ * javax.management.MBeanServer#queryMBeans queryMBeans}, if a
+ * namespace path is present, it must not contain any pattern.
+ *
+ * There is no such restriction for the {@code query} parameter of these
+ * methods. However, it must be noted that the {@code query} parameter
+ * will be evaluated in the context of the namespace where the MBeans
+ * selected by the pattern specified in {@code name} are located.
+ * This means that if {@code query} parameter is an ObjectName pattern that
+ * contains a namespace path, no MBean name will match and the result of
+ * the query will be empty.
+ * In other words:
+ * - {@code queryNames("foo//bar//?a?:*","b?z:type=Monitor,*")} will select
+ * all MBeans in namespace foo//bar whose names match both
+ * ?a?:* and b?z:type=Monitor,*, but
+ * - {@code queryNames("foo//bar//?a?:*","foo//bar//b?z:type=Monitor,*")}
+ * will select nothing because no name matching ?a?:* will
+ * also match foo//bar//b?z:type=Monitor,*.
+ *
+ *
*
* Narrowing Down Into a Name Spaces
*
@@ -228,7 +259,8 @@
* to name space {@code "foo"} behaves just like a regular MBean server.
* However, it may sometimes throw an {@link
* java.lang.UnsupportedOperationException UnsupportedOperationException}
- * wrapped in a JMX exception if you try to call an operation which is not
+ * wrapped in a {@link javax.management.RuntimeOperationsException
+ * RuntimeOperationsException} if you try to call an operation which is not
* supported by the underlying name space handler.
*
For instance, {@link javax.management.MBeanServer#registerMBean
* registerMBean} is not supported for name spaces mounted from remote
diff --git a/jdk/test/javax/management/namespace/LeadingSeparatorsTest.java b/jdk/test/javax/management/namespace/LeadingSeparatorsTest.java
index 5660b275317..6f931ffd46d 100644
--- a/jdk/test/javax/management/namespace/LeadingSeparatorsTest.java
+++ b/jdk/test/javax/management/namespace/LeadingSeparatorsTest.java
@@ -24,7 +24,7 @@
* @test LeadingSeparatorsTest.java
* @summary Test that the semantics of a leading // in ObjectName is respected.
* @author Daniel Fuchs
- * @bug 5072476
+ * @bug 5072476 6768935
* @run clean LeadingSeparatorsTest Wombat WombatMBean
* @compile -XDignore.symbol.file=true LeadingSeparatorsTest.java
* @run build LeadingSeparatorsTest Wombat WombatMBean
@@ -36,6 +36,7 @@ import java.util.Arrays;
import java.util.Set;
import java.util.HashSet;
import java.util.logging.Logger;
+import javax.management.InstanceNotFoundException;
import javax.management.MBeanServer;
import javax.management.MBeanServerFactory;
import javax.management.NotCompliantMBeanException;
@@ -121,19 +122,29 @@ public class LeadingSeparatorsTest {
// register wombat using an object name with a leading //
final Object obj = new MyWombat();
// check that returned object name doesn't have the leading //
- assertEquals(n2,top.registerMBean(obj, n1).getObjectName());
+ assertEquals(n2,top.registerMBean(obj, n2).getObjectName());
System.out.println(n1+" registered");
// check that the registered Wombat can be accessed with all its
// names.
System.out.println(n2+" mood is: "+top.getAttribute(n2, "Mood"));
- System.out.println(n1+" mood is: "+top.getAttribute(n1, "Mood"));
+ try {
+ System.out.println(n1+" mood is: "+top.getAttribute(n1, "Mood"));
+ throw new Exception("Excepected exception not thrown for "+n1);
+ } catch (InstanceNotFoundException x) {
+ System.out.println("OK: "+x);
+ }
System.out.println(n4+" mood is: "+top.getAttribute(n4, "Mood"));
- System.out.println(n3+" mood is: "+top.getAttribute(n3, "Mood"));
+ try {
+ System.out.println(n3+" mood is: "+top.getAttribute(n3, "Mood"));
+ throw new Exception("Excepected exception not thrown for "+n3);
+ } catch (InstanceNotFoundException x) {
+ System.out.println("OK: "+x);
+ }
// call listMatching. The result should not contain any prefix.
final Set res = (Set)
- top.invoke(n3, "listMatching",
+ top.invoke(n4, "listMatching",
// remove rmi// from rmi//*:*
JMXNamespaces.deepReplaceHeadNamespace(
new Object[] {ObjectName.WILDCARD.withDomain("rmi//*")},
@@ -158,7 +169,7 @@ public class LeadingSeparatorsTest {
// //niark//niark//
//
final Set res4 = (Set)
- top.invoke(n3, "untrue",
+ top.invoke(n4, "untrue",
// remove niark//niark : should remove nothing since
// our ObjectName begins with a leading //
JMXNamespaces.deepReplaceHeadNamespace(
diff --git a/jdk/test/javax/management/namespace/NullDomainObjectNameTest.java b/jdk/test/javax/management/namespace/NullDomainObjectNameTest.java
index 6b1ad51c252..fa8455e2a15 100644
--- a/jdk/test/javax/management/namespace/NullDomainObjectNameTest.java
+++ b/jdk/test/javax/management/namespace/NullDomainObjectNameTest.java
@@ -40,6 +40,7 @@ import javax.management.MBeanServerFactory;
import javax.management.NotCompliantMBeanException;
import javax.management.ObjectInstance;
import javax.management.ObjectName;
+import javax.management.RuntimeOperationsException;
import javax.management.namespace.JMXNamespaces;
import javax.management.namespace.JMXRemoteNamespace;
import javax.management.namespace.JMXNamespace;
@@ -215,9 +216,20 @@ public class NullDomainObjectNameTest {
assertEquals(proxy.queryNames(
new ObjectName(":*"),null).
contains(moi3.getObjectName()),true);
- failed("queryNames(null,null) should have failed for faked//");
- } catch (IllegalArgumentException x) {
- System.out.println("Received expected exception for faked//: "+x);
+ failed("queryNames(new ObjectName(\":*\"),null) " +
+ "should have failed for faked//");
+ } catch (RuntimeOperationsException x) {
+ if (x.getCause() instanceof IllegalArgumentException)
+ System.out.println(
+ "Received expected exception for faked//: "+x);
+ else {
+ System.err.println(
+ "Expected exception has unexpected cause " +
+ "for faked//: "+x.getCause());
+ x.printStackTrace();
+ failed("queryNames(new ObjectName(\":*\"),null)" +
+ " failed with unexpected cause for faked//");
+ }
}
// These should fail because the ObjectName doesn't start
// with "faked//"
@@ -226,9 +238,20 @@ public class NullDomainObjectNameTest {
"new ObjectName(\":*\"),null) with faked//");
assertEquals(proxy.queryMBeans(
new ObjectName(":*"),null).contains(moi3),true);
- failed("queryMBeans(null,null) should have failed for faked//");
- } catch (IllegalArgumentException x) {
- System.out.println("Received expected exception for faked//: "+x);
+ failed("queryMBeans(new ObjectName(\":*\"),null)" +
+ " should have failed for faked//");
+ } catch (RuntimeOperationsException x) {
+ if (x.getCause() instanceof IllegalArgumentException)
+ System.out.println(
+ "Received expected exception for faked//: "+x);
+ else {
+ System.err.println(
+ "Expected exception has unexpected cause " +
+ "for faked//: "+x.getCause());
+ x.printStackTrace();
+ failed("queryMBeans(new ObjectName(\":*\"),null) " +
+ "failed with unexpected cause for faked//");
+ }
}
System.out.println("Checking queryNames(faked//*:*,null)");
diff --git a/jdk/test/javax/management/namespace/NullObjectNameTest.java b/jdk/test/javax/management/namespace/NullObjectNameTest.java
index 0e645dc1e3c..5cf99a230e5 100644
--- a/jdk/test/javax/management/namespace/NullObjectNameTest.java
+++ b/jdk/test/javax/management/namespace/NullObjectNameTest.java
@@ -41,6 +41,7 @@ import javax.management.MBeanServerFactory;
import javax.management.NotCompliantMBeanException;
import javax.management.ObjectInstance;
import javax.management.ObjectName;
+import javax.management.RuntimeOperationsException;
import javax.management.namespace.JMXNamespaces;
import javax.management.namespace.JMXRemoteNamespace;
import javax.management.namespace.JMXNamespace;
@@ -189,15 +190,35 @@ public class NullObjectNameTest {
assertEquals(proxy.queryNames(null,null).
contains(moi3.getObjectName()),true);
failed("queryNames(null,null) should have failed for faked//");
- } catch (IllegalArgumentException x) {
- System.out.println("Received expected exception for faked//: "+x);
+ } catch (RuntimeOperationsException x) {
+ if (x.getCause() instanceof IllegalArgumentException)
+ System.out.println(
+ "Received expected exception for faked//: "+x);
+ else {
+ System.err.println(
+ "Expected exception has unexpected cause " +
+ "for faked//: "+x.getCause());
+ x.printStackTrace();
+ failed("queryNames(null,null) failed with unexpected " +
+ "cause for faked//");
+ }
}
try {
System.out.println("Checking queryMBeans(null,null) with faked//");
assertEquals(proxy.queryMBeans(null,null).contains(moi3),true);
failed("queryMBeans(null,null) should have failed for faked//");
- } catch (IllegalArgumentException x) {
- System.out.println("Received expected exception for faked//: "+x);
+ } catch (RuntimeOperationsException x) {
+ if (x.getCause() instanceof IllegalArgumentException)
+ System.out.println(
+ "Received expected exception for faked//: "+x);
+ else {
+ System.err.println(
+ "Expected exception has unexpected cause " +
+ "for faked//: "+x.getCause());
+ x.printStackTrace();
+ failed("queryMBeans(null,null) failed with unexpected " +
+ "cause for faked//");
+ }
}
System.out.println("Checking queryNames(faked//*:*,null)");
assertEquals(proxy.queryNames(new ObjectName("faked//*:*"),null).
diff --git a/jdk/test/javax/management/namespace/QueryNamesTest.java b/jdk/test/javax/management/namespace/QueryNamesTest.java
index 1af597aceb9..5b507644600 100644
--- a/jdk/test/javax/management/namespace/QueryNamesTest.java
+++ b/jdk/test/javax/management/namespace/QueryNamesTest.java
@@ -25,7 +25,7 @@
* @test QueryNamesTest.java 1.4
* @summary Test how queryNames works with Namespaces.
* @author Daniel Fuchs
- * @bug 5072476
+ * @bug 5072476 6768935
* @run clean QueryNamesTest Wombat WombatMBean
* @run build QueryNamesTest Wombat WombatMBean
* @run main QueryNamesTest
@@ -34,6 +34,7 @@
import java.io.IOException;
import java.lang.management.ManagementFactory;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
@@ -52,7 +53,9 @@ import javax.management.MBeanServer;
import javax.management.MBeanServerConnection;
import javax.management.MBeanServerFactory;
import javax.management.MalformedObjectNameException;
+import javax.management.ObjectInstance;
import javax.management.ObjectName;
+import javax.management.RuntimeOperationsException;
import javax.management.namespace.JMXNamespace;
import javax.management.namespace.JMXNamespaces;
@@ -366,6 +369,66 @@ public class QueryNamesTest {
return res;
}
+ private static void checkNsPattern(MBeanServer server) throws Exception {
+ final List list = new ArrayList();
+ for (String s : namespaces) {
+ final String[] cmpnt = s.split("//");
+ for (int i=0;i res = new HashSet();
+
+ try {
+ res.addAll(server.queryNames(ObjectName.valueOf(s),null));
+ } catch (RuntimeOperationsException x) {
+ if (x.getCause() instanceof IllegalArgumentException) {
+ System.out.println("queryNames("+s+"): OK - received "+x.getCause());
+ continue;
+ }
+ System.err.println("queryNames("+s+"): Bad cause: "+x.getCause());
+ throw x;
+ } catch (Exception x) {
+ System.err.println("queryNames("+s+"): Bad exception: "+x);
+ throw x;
+ }
+ System.err.println("queryNames("+s+"): Bad result: "+res);
+ System.err.println("queryNames("+s+"): Excpected exception not thrown.");
+ throw new Exception("queryNames("+s+"): Excpected exception not thrown.");
+ }
+ for (String s : list) {
+ final Set res = new HashSet();
+
+ try {
+ res.addAll(server.queryMBeans(ObjectName.valueOf(s),null));
+ } catch (RuntimeOperationsException x) {
+ if (x.getCause() instanceof IllegalArgumentException) {
+ System.out.println("queryMBeans("+s+"): OK - received "+x.getCause());
+ continue;
+ }
+ System.err.println("queryMBeans("+s+"): Bad cause: "+x.getCause());
+ throw x;
+ } catch (Exception x) {
+ System.err.println("queryMBeans("+s+"): Bad exception: "+x);
+ throw x;
+ }
+ System.err.println("queryMBeans("+s+"): Bad result: "+res);
+ System.err.println("queryMBeans("+s+"): Excpected exception not thrown.");
+ throw new Exception("queryMBeans("+s+"): Excpected exception not thrown.");
+ }
+ }
+
public static void main(String[] args)
throws Exception {
final MBeanServer server = ManagementFactory.getPlatformMBeanServer();
@@ -378,6 +441,7 @@ public class QueryNamesTest {
System.out.println("Domains: " +Arrays.asList(server.getDomains()));
checkRegistration(server);
checkNsQuery(server);
+ checkNsPattern(server);
} finally {
boolean res = true;
res = res && removeWombats(server, wombats);
From 16870a77673599f36fb9d40d10d0cf4a48ed0089 Mon Sep 17 00:00:00 2001
From: Shanliang Jiang
Date: Tue, 9 Dec 2008 20:50:45 +0100
Subject: [PATCH 44/68] 6336980: NotificationBroadcasterSupport: to tell
whether there are listeners and to do clear
Reviewed-by: emcmanus
---
.../NotificationBroadcasterSupport.java | 20 +++++
.../notification/SupportClearTest.java | 80 +++++++++++++++++++
2 files changed, 100 insertions(+)
create mode 100644 jdk/test/javax/management/notification/SupportClearTest.java
diff --git a/jdk/src/share/classes/javax/management/NotificationBroadcasterSupport.java b/jdk/src/share/classes/javax/management/NotificationBroadcasterSupport.java
index 33df9606450..44f5a506477 100644
--- a/jdk/src/share/classes/javax/management/NotificationBroadcasterSupport.java
+++ b/jdk/src/share/classes/javax/management/NotificationBroadcasterSupport.java
@@ -249,6 +249,26 @@ public class NotificationBroadcasterSupport
}
}
}
+ /**
+ * Returns true if there are any listeners.
+ *
+ * @return true if there is at least one listener that has been added with
+ * {@code addNotificationListener} and not subsequently removed with
+ * {@code removeNotificationListener} or {@code removeAllNotificationListeners}.
+ * @since 1.7
+ */
+ public boolean isListenedTo() {
+ return listenerList.size() > 0;
+ }
+
+ /**
+ * Removes all listeners.
+ *
+ * @since 1.7
+ */
+ public void removeAllNotificationListeners() {
+ listenerList.clear();
+ }
/**
* This method is called by {@link #sendNotification
diff --git a/jdk/test/javax/management/notification/SupportClearTest.java b/jdk/test/javax/management/notification/SupportClearTest.java
new file mode 100644
index 00000000000..56712cf482b
--- /dev/null
+++ b/jdk/test/javax/management/notification/SupportClearTest.java
@@ -0,0 +1,80 @@
+/*
+ * Copyright 2005 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+/*
+ * @test
+ * @bug 6336980
+ * @summary test 2 new methods: isListenedTo() and clear()
+ * @author Shanliang JIANG
+ * @run clean SupportClearTest
+ * @run build SupportClearTest
+ * @run main SupportClearTest
+ */
+
+import javax.management.*;
+
+public class SupportClearTest {
+ private static boolean received = false;
+
+ public static void main(String[] args) throws Exception {
+ System.out.println(">>> test 2 new methods: isListenedTo() and clear().");
+
+ final NotificationListener listener = new NotificationListener() {
+ public void handleNotification(Notification n, Object hb) {
+ received = true;
+ }
+ };
+
+ final NotificationBroadcasterSupport broadcaster =
+ new NotificationBroadcasterSupport();
+
+ System.out.println(">>> testing the method \"isListenedTo\"...");
+ if (broadcaster.isListenedTo()) {
+ throw new RuntimeException(
+ "Bad implementation of the method \"isListenedTo\"!");
+ }
+
+ broadcaster.addNotificationListener(listener, null, null);
+
+ if (!broadcaster.isListenedTo()) {
+ throw new RuntimeException(
+ "Bad implementation of the method \"isListenedTo\"!");
+ }
+
+ System.out.println(">>> testing the method \"clear\"...");
+ broadcaster.removeAllNotificationListeners();
+ if (broadcaster.isListenedTo()) {
+ throw new RuntimeException(
+ "Bad implementation of the method \"clear\"!");
+ }
+
+ broadcaster.sendNotification(new Notification("", "", 1L));
+
+ if (received) {
+ throw new RuntimeException(
+ "Bad implementation of the method \"clear\"!");
+ }
+
+ System.out.println(">>> PASSED!");
+ }
+}
From 67464baa7a21b0c91570316f181b1350906c27d5 Mon Sep 17 00:00:00 2001
From: John R Rose
Date: Tue, 9 Dec 2008 12:41:26 -0800
Subject: [PATCH 45/68] 6771309: debugging AD files is difficult without #line
directives in generated code
More and better #line and #define directives in the generated code; ADLC itself accepts #line directives
Reviewed-by: never, kvn
---
hotspot/make/linux/adlc_updater | 12 +-
hotspot/make/linux/makefiles/adlc.make | 31 +++-
hotspot/make/solaris/adlc_updater | 12 +-
hotspot/make/solaris/makefiles/adlc.make | 31 +++-
hotspot/src/share/vm/adlc/adlparse.cpp | 189 +++++++++++++++++++----
hotspot/src/share/vm/adlc/adlparse.hpp | 9 +-
hotspot/src/share/vm/adlc/archDesc.cpp | 2 +-
hotspot/src/share/vm/adlc/dfa.cpp | 17 +-
hotspot/src/share/vm/adlc/filebuff.hpp | 1 +
hotspot/src/share/vm/adlc/formssel.cpp | 5 +-
10 files changed, 255 insertions(+), 54 deletions(-)
diff --git a/hotspot/make/linux/adlc_updater b/hotspot/make/linux/adlc_updater
index 6a97b79931d..b54f783d6ee 100644
--- a/hotspot/make/linux/adlc_updater
+++ b/hotspot/make/linux/adlc_updater
@@ -7,5 +7,13 @@
#
# adlc-updater
#
-[ -f $3/$1 ] && cmp -s $2/$1 $3/$1 || \
-( [ -f $3/$1 ]; echo Updating $3/$1 ; touch $2/made-change ; mv $2/$1 $3/$1 )
+fix_lines() {
+ # repair bare #line directives in $1 to refer to $2
+ awk < $1 > $1+ '
+ /^#line 999999$/ {print "#line " (NR+1) " \"" F2 "\""; next}
+ {print}
+ ' F2=$2
+ mv $1+ $1
+}
+[ -f $3/$1 ] && (fix_lines $2/$1 $3/$1; cmp -s $2/$1 $3/$1) || \
+( [ -f $3/$1 ] && echo Updating $3/$1 ; touch $2/made-change ; mv $2/$1 $3/$1 )
diff --git a/hotspot/make/linux/makefiles/adlc.make b/hotspot/make/linux/makefiles/adlc.make
index 5349f5bd323..5e48fed1567 100644
--- a/hotspot/make/linux/makefiles/adlc.make
+++ b/hotspot/make/linux/makefiles/adlc.make
@@ -54,10 +54,12 @@ VPATH += $(Src_Dirs_V:%=%:)
Src_Dirs_I = ${Src_Dirs} $(GENERATED)
INCLUDES += $(Src_Dirs_I:%=-I%)
-# Force assertions on.
-SYSDEFS += -DASSERT
+# set flags for adlc compilation
CPPFLAGS = $(SYSDEFS) $(INCLUDES)
+# Force assertions on.
+CPPFLAGS += -DASSERT
+
# CFLAGS_WARN holds compiler options to suppress/enable warnings.
# Suppress warnings (for now)
CFLAGS_WARN = -w
@@ -125,7 +127,15 @@ $(GENERATEDFILES): refresh_adfiles
# Note that product files are updated via "mv", which is atomic.
TEMPDIR := $(OUTDIR)/mktmp$(shell echo $$$$)
-ADLCFLAGS = -q -T
+# Pass -D flags into ADLC.
+ADLCFLAGS += $(SYSDEFS)
+
+# Note "+="; it is a hook so flags.make can add more flags, like -g or -DFOO.
+ADLCFLAGS += -q -T
+
+# Normally, debugging is done directly on the ad_*.cpp files.
+# But -g will put #line directives in those files pointing back to .ad.
+#ADLCFLAGS += -g
ifdef LP64
ADLCFLAGS += -D_LP64
@@ -140,6 +150,8 @@ endif
#
ADLC_UPDATER_DIRECTORY = $(GAMMADIR)/make/$(OS)
ADLC_UPDATER = adlc_updater
+$(ADLC_UPDATER): $(ADLC_UPDATER_DIRECTORY)/$(ADLC_UPDATER)
+ $(QUIETLY) cp $< $@; chmod +x $@
# This action refreshes all generated adlc files simultaneously.
# The way it works is this:
@@ -149,9 +161,8 @@ ADLC_UPDATER = adlc_updater
# 4) call $(ADLC_UPDATER) on each generated adlc file. It will selectively update changed or missing files.
# 5) If we actually updated any files, echo a notice.
#
-refresh_adfiles: $(EXEC) $(SOURCE.AD)
+refresh_adfiles: $(EXEC) $(SOURCE.AD) $(ADLC_UPDATER)
@rm -rf $(TEMPDIR); mkdir $(TEMPDIR)
- $(QUIETLY) [ -f $(ADLC_UPDATER) ] || ( cp $(ADLC_UPDATER_DIRECTORY)/$(ADLC_UPDATER) . ; chmod +x $(ADLC_UPDATER) )
$(QUIETLY) $(EXEC) $(ADLCFLAGS) $(SOURCE.AD) \
-c$(TEMPDIR)/ad_$(Platform_arch_model).cpp -h$(TEMPDIR)/ad_$(Platform_arch_model).hpp -a$(TEMPDIR)/dfa_$(Platform_arch_model).cpp -v$(TEMPDIR)/adGlobals_$(Platform_arch_model).hpp \
|| { rm -rf $(TEMPDIR); exit 1; }
@@ -174,7 +185,15 @@ refresh_adfiles: $(EXEC) $(SOURCE.AD)
# #########################################################################
$(SOURCE.AD): $(SOURCES.AD)
- $(QUIETLY) cat $(SOURCES.AD) > $(SOURCE.AD)
+ $(QUIETLY) $(PROCESS_AD_FILES) $(SOURCES.AD) > $(SOURCE.AD)
+
+#PROCESS_AD_FILES = cat
+# Pass through #line directives, in case user enables -g option above:
+PROCESS_AD_FILES = awk '{ \
+ if (CUR_FN != FILENAME) { CUR_FN=FILENAME; NR_BASE=NR-1; need_lineno=1 } \
+ if (need_lineno && $$0 !~ /\/\//) \
+ { print "\n\n\#line " (NR-NR_BASE) " \"" FILENAME "\""; need_lineno=0 }; \
+ print }'
$(OUTDIR)/%.o: %.cpp
@echo Compiling $<
diff --git a/hotspot/make/solaris/adlc_updater b/hotspot/make/solaris/adlc_updater
index 6a97b79931d..b54f783d6ee 100644
--- a/hotspot/make/solaris/adlc_updater
+++ b/hotspot/make/solaris/adlc_updater
@@ -7,5 +7,13 @@
#
# adlc-updater
#
-[ -f $3/$1 ] && cmp -s $2/$1 $3/$1 || \
-( [ -f $3/$1 ]; echo Updating $3/$1 ; touch $2/made-change ; mv $2/$1 $3/$1 )
+fix_lines() {
+ # repair bare #line directives in $1 to refer to $2
+ awk < $1 > $1+ '
+ /^#line 999999$/ {print "#line " (NR+1) " \"" F2 "\""; next}
+ {print}
+ ' F2=$2
+ mv $1+ $1
+}
+[ -f $3/$1 ] && (fix_lines $2/$1 $3/$1; cmp -s $2/$1 $3/$1) || \
+( [ -f $3/$1 ] && echo Updating $3/$1 ; touch $2/made-change ; mv $2/$1 $3/$1 )
diff --git a/hotspot/make/solaris/makefiles/adlc.make b/hotspot/make/solaris/makefiles/adlc.make
index f746d77494d..2d1a87a20b4 100644
--- a/hotspot/make/solaris/makefiles/adlc.make
+++ b/hotspot/make/solaris/makefiles/adlc.make
@@ -54,10 +54,12 @@ VPATH += $(Src_Dirs_V:%=%:)
Src_Dirs_I = ${Src_Dirs} $(GENERATED)
INCLUDES += $(Src_Dirs_I:%=-I%)
-# Force assertions on.
-SYSDEFS += -DASSERT
+# set flags for adlc compilation
CPPFLAGS = $(SYSDEFS) $(INCLUDES)
+# Force assertions on.
+CPPFLAGS += -DASSERT
+
ifndef USE_GCC
# We need libCstd.so for adlc
CFLAGS += -library=Cstd -g
@@ -141,7 +143,15 @@ $(GENERATEDFILES): refresh_adfiles
# Note that product files are updated via "mv", which is atomic.
TEMPDIR := $(OUTDIR)/mktmp$(shell echo $$$$)
-ADLCFLAGS = -q -T
+# Pass -D flags into ADLC.
+ADLCFLAGS += $(SYSDEFS)
+
+# Note "+="; it is a hook so flags.make can add more flags, like -g or -DFOO.
+ADLCFLAGS += -q -T
+
+# Normally, debugging is done directly on the ad_*.cpp files.
+# But -g will put #line directives in those files pointing back to .ad.
+#ADLCFLAGS += -g
ifdef LP64
ADLCFLAGS += -D_LP64
@@ -156,6 +166,8 @@ endif
#
ADLC_UPDATER_DIRECTORY = $(GAMMADIR)/make/$(OS)
ADLC_UPDATER = adlc_updater
+$(ADLC_UPDATER): $(ADLC_UPDATER_DIRECTORY)/$(ADLC_UPDATER)
+ $(QUIETLY) cp $< $@; chmod +x $@
# This action refreshes all generated adlc files simultaneously.
# The way it works is this:
@@ -165,9 +177,8 @@ ADLC_UPDATER = adlc_updater
# 4) call $(ADLC_UPDATER) on each generated adlc file. It will selectively update changed or missing files.
# 5) If we actually updated any files, echo a notice.
#
-refresh_adfiles: $(EXEC) $(SOURCE.AD)
+refresh_adfiles: $(EXEC) $(SOURCE.AD) $(ADLC_UPDATER)
@rm -rf $(TEMPDIR); mkdir $(TEMPDIR)
- $(QUIETLY) [ -f $(ADLC_UPDATER) ] || ( cp $(ADLC_UPDATER_DIRECTORY)/$(ADLC_UPDATER) . ; chmod +x $(ADLC_UPDATER) )
$(QUIETLY) $(EXEC) $(ADLCFLAGS) $(SOURCE.AD) \
-c$(TEMPDIR)/ad_$(Platform_arch_model).cpp -h$(TEMPDIR)/ad_$(Platform_arch_model).hpp -a$(TEMPDIR)/dfa_$(Platform_arch_model).cpp -v$(TEMPDIR)/adGlobals_$(Platform_arch_model).hpp \
|| { rm -rf $(TEMPDIR); exit 1; }
@@ -190,7 +201,15 @@ refresh_adfiles: $(EXEC) $(SOURCE.AD)
# #########################################################################
$(SOURCE.AD): $(SOURCES.AD)
- $(QUIETLY) cat $(SOURCES.AD) > $(SOURCE.AD)
+ $(QUIETLY) $(PROCESS_AD_FILES) $(SOURCES.AD) > $(SOURCE.AD)
+
+#PROCESS_AD_FILES = cat
+# Pass through #line directives, in case user enables -g option above:
+PROCESS_AD_FILES = awk '{ \
+ if (CUR_FN != FILENAME) { CUR_FN=FILENAME; NR_BASE=NR-1; need_lineno=1 } \
+ if (need_lineno && $$0 !~ /\/\//) \
+ { print "\n\n\#line " (NR-NR_BASE) " \"" FILENAME "\""; need_lineno=0 }; \
+ print }'
$(OUTDIR)/%.o: %.cpp
@echo Compiling $<
diff --git a/hotspot/src/share/vm/adlc/adlparse.cpp b/hotspot/src/share/vm/adlc/adlparse.cpp
index c266df104c8..cc02b5d3177 100644
--- a/hotspot/src/share/vm/adlc/adlparse.cpp
+++ b/hotspot/src/share/vm/adlc/adlparse.cpp
@@ -108,6 +108,7 @@ void ADLParser::parse() {
else if (!strcmp(ident, "pipeline")) pipe_parse();
else if (!strcmp(ident, "definitions")) definitions_parse();
else if (!strcmp(ident, "peephole")) peep_parse();
+ else if (!strcmp(ident, "#line")) preproc_line();
else if (!strcmp(ident, "#define")) preproc_define();
else if (!strcmp(ident, "#undef")) preproc_undef();
else {
@@ -786,9 +787,11 @@ void ADLParser::reg_parse(void) {
parse_err(SYNERR, "missing identifier inside register block.\n");
return;
}
- if (strcmp(token,"reg_def")==0) { reg_def_parse(); }
- if (strcmp(token,"reg_class")==0) { reg_class_parse(); }
- if (strcmp(token,"alloc_class")==0) { alloc_class_parse(); }
+ if (strcmp(token,"reg_def")==0) { reg_def_parse(); }
+ else if (strcmp(token,"reg_class")==0) { reg_class_parse(); }
+ else if (strcmp(token,"alloc_class")==0) { alloc_class_parse(); }
+ else if (strcmp(token,"#define")==0) { preproc_define(); }
+ else { parse_err(SYNERR, "bad token %s inside register block.\n", token); break; }
skipws();
}
}
@@ -903,11 +906,7 @@ void ADLParser::enc_class_parse_block(EncClass* encoding, char* ec_name) {
skipws_no_preproc(); // Skip leading whitespace
// Prepend location descriptor, for debugging; cf. ADLParser::find_cpp_block
if (_AD._adlocation_debug) {
- const char* file = _AD._ADL_file._name;
- int line = linenum();
- char* location = (char *)malloc(strlen(file) + 100);
- sprintf(location, "#line %d \"%s\"\n", line, file);
- encoding->add_code(location);
+ encoding->add_code(get_line_string());
}
// Collect the parts of the encode description
@@ -948,6 +947,10 @@ void ADLParser::enc_class_parse_block(EncClass* encoding, char* ec_name) {
skipws();
+ if (_AD._adlocation_debug) {
+ encoding->add_code(end_line_marker());
+ }
+
// Debug Stuff
if (_AD._adl_debug > 1) fprintf(stderr,"EncodingClass Form: %s\n", ec_name);
}
@@ -2349,7 +2352,11 @@ void ADLParser::reg_class_parse(void) {
return;
}
RegDef *regDef = _AD._register->getRegDef(rname);
- reg_class->addReg(regDef); // add regDef to regClass
+ if (!regDef) {
+ parse_err(SEMERR, "unknown identifier %s inside reg_class list.\n", rname);
+ } else {
+ reg_class->addReg(regDef); // add regDef to regClass
+ }
// Check for ',' and position to next token.
skipws();
@@ -2746,7 +2753,8 @@ Predicate *ADLParser::pred_parse(void) {
char *rule = NULL; // String representation of predicate
skipws(); // Skip leading whitespace
- if ( (rule = get_paren_expr("pred expression")) == NULL ) {
+ int line = linenum();
+ if ( (rule = get_paren_expr("pred expression", true)) == NULL ) {
parse_err(SYNERR, "incorrect or missing expression for 'predicate'\n");
return NULL;
}
@@ -3407,7 +3415,12 @@ FormatRule* ADLParser::format_parse(void) {
// Check if there is a string to pass through to output
char *start = _ptr; // Record start of the next string
while ((_curchar != '$') && (_curchar != '"') && (_curchar != '%') && (_curchar != '\n')) {
- if (_curchar == '\\') next_char(); // superquote
+ if (_curchar == '\\') {
+ next_char(); // superquote
+ if ((_curchar == '$') || (_curchar == '%'))
+ // hack to avoid % escapes and warnings about undefined \ escapes
+ *(_ptr-1) = _curchar;
+ }
if (_curchar == '\n') parse_err(SYNERR, "newline in string"); // unimplemented!
next_char();
}
@@ -3942,8 +3955,7 @@ char* ADLParser::find_cpp_block(const char* description) {
next_char(); // Skip block delimiter
skipws_no_preproc(); // Skip leading whitespace
cppBlock = _ptr; // Point to start of expression
- const char* file = _AD._ADL_file._name;
- int line = linenum();
+ int line = linenum();
next = _ptr + 1;
while(((_curchar != '%') || (*next != '}')) && (_curchar != '\0')) {
next_char_or_line();
@@ -3958,15 +3970,16 @@ char* ADLParser::find_cpp_block(const char* description) {
_curchar = *_ptr; // Maintain invariant
// Prepend location descriptor, for debugging.
- char* location = (char *)malloc(strlen(file) + 100);
- *location = '\0';
- if (_AD._adlocation_debug)
- sprintf(location, "#line %d \"%s\"\n", line, file);
- char* result = (char *)malloc(strlen(location) + strlen(cppBlock) + 1);
- strcpy(result, location);
- strcat(result, cppBlock);
- cppBlock = result;
- free(location);
+ if (_AD._adlocation_debug) {
+ char* location = get_line_string(line);
+ char* end_loc = end_line_marker();
+ char* result = (char *)malloc(strlen(location) + strlen(cppBlock) + strlen(end_loc) + 1);
+ strcpy(result, location);
+ strcat(result, cppBlock);
+ strcat(result, end_loc);
+ cppBlock = result;
+ free(location);
+ }
}
return cppBlock;
@@ -4036,13 +4049,26 @@ char* ADLParser::get_expr(const char *desc, const char *stop_chars) {
// Helper function around get_expr
// Sets _curchar to '(' so that get_paren_expr will search for a matching ')'
-char *ADLParser::get_paren_expr(const char *description) {
+char *ADLParser::get_paren_expr(const char *description, bool include_location) {
+ int line = linenum();
if (_curchar != '(') // Escape if not valid starting position
return NULL;
next_char(); // Skip the required initial paren.
char *token2 = get_expr(description, ")");
if (_curchar == ')')
next_char(); // Skip required final paren.
+ int junk = 0;
+ if (include_location && _AD._adlocation_debug && !is_int_token(token2, junk)) {
+ // Prepend location descriptor, for debugging.
+ char* location = get_line_string(line);
+ char* end_loc = end_line_marker();
+ char* result = (char *)malloc(strlen(location) + strlen(token2) + strlen(end_loc) + 1);
+ strcpy(result, location);
+ strcat(result, token2);
+ strcat(result, end_loc);
+ token2 = result;
+ free(location);
+ }
return token2;
}
@@ -4082,10 +4108,16 @@ char *ADLParser::get_ident_common(bool do_preproc) {
if (do_preproc && start != NULL) {
const char* def = _AD.get_preproc_def(start);
if (def != NULL && strcmp(def, start)) {
- const char* def2 = _AD.get_preproc_def(def);
- if (def2 != NULL && strcmp(def2, def)) {
- parse_err(SYNERR, "unimplemented: using %s defined as %s => %s",
- start, def, def2);
+ const char* def1 = def;
+ const char* def2 = _AD.get_preproc_def(def1);
+ // implement up to 2 levels of #define
+ if (def2 != NULL && strcmp(def2, def1)) {
+ def = def2;
+ const char* def3 = _AD.get_preproc_def(def2);
+ if (def3 != NULL && strcmp(def3, def2) && strcmp(def3, def1)) {
+ parse_err(SYNERR, "unimplemented: using %s defined as %s => %s => %s",
+ start, def1, def2, def3);
+ }
}
start = strdup(def);
}
@@ -4431,6 +4463,35 @@ void ADLParser::get_effectlist(FormDict &effects, FormDict &operands) {
}
+//-------------------------------preproc_line----------------------------------
+// A "#line" keyword has been seen, so parse the rest of the line.
+void ADLParser::preproc_line(void) {
+ int line = get_int();
+ skipws_no_preproc();
+ const char* file = NULL;
+ if (_curchar == '"') {
+ next_char(); // Move past the initial '"'
+ file = _ptr;
+ while (true) {
+ if (_curchar == '\n') {
+ parse_err(SYNERR, "missing '\"' at end of #line directive");
+ return;
+ }
+ if (_curchar == '"') {
+ *_ptr = '\0'; // Terminate the string
+ next_char();
+ skipws_no_preproc();
+ break;
+ }
+ next_char();
+ }
+ }
+ ensure_end_of_line();
+ if (file != NULL)
+ _AD._ADL_file._name = file;
+ _buf.set_linenum(line);
+}
+
//------------------------------preproc_define---------------------------------
// A "#define" keyword has been seen, so parse the rest of the line.
void ADLParser::preproc_define(void) {
@@ -4494,6 +4555,7 @@ void ADLParser::parse_err(int flag, const char *fmt, ...) {
// A preprocessor directive has been encountered. Be sure it has fallen at
// the begining of a line, or else report an error.
void ADLParser::ensure_start_of_line(void) {
+ if (_curchar == '\n') { next_line(); return; }
assert( _ptr >= _curline && _ptr < _curline+strlen(_curline),
"Must be able to find which line we are in" );
@@ -4662,6 +4724,7 @@ char ADLParser::cur_char() {
//---------------------------next_char-----------------------------------------
void ADLParser::next_char() {
+ if (_curchar == '\n') parse_err(WARN, "must call next_line!");
_curchar = *++_ptr;
// if ( _curchar == '\n' ) {
// next_line();
@@ -4682,6 +4745,18 @@ void ADLParser::next_char_or_line() {
//---------------------------next_line-----------------------------------------
void ADLParser::next_line() {
_curline = _buf.get_line();
+ _curchar = ' ';
+}
+
+//------------------------get_line_string--------------------------------------
+// Prepended location descriptor, for debugging.
+// Must return a malloced string (that can be freed if desired).
+char* ADLParser::get_line_string(int linenum) {
+ const char* file = _AD._ADL_file._name;
+ int line = linenum ? linenum : this->linenum();
+ char* location = (char *)malloc(strlen(file) + 100);
+ sprintf(location, "\n#line %d \"%s\"\n", line, file);
+ return location;
}
//-------------------------is_literal_constant---------------------------------
@@ -4722,6 +4797,66 @@ bool ADLParser::is_int_token(const char* token, int& intval) {
return true;
}
+static const char* skip_expr_ws(const char* str) {
+ const char * cp = str;
+ while (cp[0]) {
+ if (cp[0] <= ' ') {
+ ++cp;
+ } else if (cp[0] == '#') {
+ ++cp;
+ while (cp[0] == ' ') ++cp;
+ assert(0 == strncmp(cp, "line", 4), "must be a #line directive");
+ const char* eol = strchr(cp, '\n');
+ assert(eol != NULL, "must find end of line");
+ if (eol == NULL) eol = cp + strlen(cp);
+ cp = eol;
+ } else {
+ break;
+ }
+ }
+ return cp;
+}
+
+//-----------------------equivalent_expressions--------------------------------
+bool ADLParser::equivalent_expressions(const char* str1, const char* str2) {
+ if (str1 == str2)
+ return true;
+ else if (str1 == NULL || str2 == NULL)
+ return false;
+ const char* cp1 = str1;
+ const char* cp2 = str2;
+ char in_quote = '\0';
+ while (cp1[0] && cp2[0]) {
+ if (!in_quote) {
+ // skip spaces and/or cpp directives
+ const char* cp1a = skip_expr_ws(cp1);
+ const char* cp2a = skip_expr_ws(cp2);
+ if (cp1a > cp1 && cp2a > cp2) {
+ cp1 = cp1a; cp2 = cp2a;
+ continue;
+ }
+ if (cp1a > cp1 || cp2a > cp2) break; // fail
+ }
+ // match one non-space char
+ if (cp1[0] != cp2[0]) break; // fail
+ char ch = cp1[0];
+ cp1++; cp2++;
+ // watch for quotes
+ if (in_quote && ch == '\\') {
+ if (cp1[0] != cp2[0]) break; // fail
+ if (!cp1[0]) break;
+ cp1++; cp2++;
+ }
+ if (in_quote && ch == in_quote) {
+ in_quote = '\0';
+ } else if (!in_quote && (ch == '"' || ch == '\'')) {
+ in_quote = ch;
+ }
+ }
+ return (!cp1[0] && !cp2[0]);
+}
+
+
//-------------------------------trim------------------------------------------
void ADLParser::trim(char* &token) {
while (*token <= ' ') token++;
diff --git a/hotspot/src/share/vm/adlc/adlparse.hpp b/hotspot/src/share/vm/adlc/adlparse.hpp
index 42329ac279e..22aa772d0e9 100644
--- a/hotspot/src/share/vm/adlc/adlparse.hpp
+++ b/hotspot/src/share/vm/adlc/adlparse.hpp
@@ -93,6 +93,7 @@ protected:
void pipe_parse(void); // Parse pipeline section
void definitions_parse(void); // Parse definitions section
void peep_parse(void); // Parse peephole rule definitions
+ void preproc_line(void); // Parse a #line statement
void preproc_define(void); // Parse a #define statement
void preproc_undef(void); // Parse an #undef statement
@@ -226,7 +227,7 @@ protected:
void get_effectlist(FormDict &effects, FormDict &operands); // Parse effect-operand pairs
// Return the contents of a parenthesized expression.
// Requires initial '(' and consumes final ')', which is replaced by '\0'.
- char *get_paren_expr(const char *description);
+ char *get_paren_expr(const char *description, bool include_location = false);
// Return expression up to next stop-char, which terminator replaces.
// Does not require initial '('. Does not consume final stop-char.
// Final stop-char is left in _curchar, but is also is replaced by '\0'.
@@ -234,6 +235,11 @@ protected:
char *find_cpp_block(const char *description); // Parse a C++ code block
// Issue parser error message & go to EOL
void parse_err(int flag, const char *fmt, ...);
+ // Create a location marker for this file and line.
+ char *get_line_string(int linenum = 0);
+ // Return a location marker which tells the C preprocessor to
+ // forget the previous location marker. (Requires awk postprocessing.)
+ char *end_line_marker() { return (char*)"\n#line 999999\n"; }
// Return pointer to current character
inline char cur_char(void);
@@ -268,5 +274,6 @@ public:
static bool is_literal_constant(const char *hex_string);
static bool is_hex_digit(char digit);
static bool is_int_token(const char* token, int& intval);
+ static bool equivalent_expressions(const char* str1, const char* str2);
static void trim(char* &token); // trim leading & trailing spaces
};
diff --git a/hotspot/src/share/vm/adlc/archDesc.cpp b/hotspot/src/share/vm/adlc/archDesc.cpp
index 9702fb47730..a73ad76da23 100644
--- a/hotspot/src/share/vm/adlc/archDesc.cpp
+++ b/hotspot/src/share/vm/adlc/archDesc.cpp
@@ -140,7 +140,7 @@ bool MatchList::search(const char *opc, const char *res, const char *lch,
if ((rch == _rchild) || (rch && _rchild && !strcmp(rch, _rchild))) {
char * predStr = get_pred();
char * prStr = pr?pr->_pred:NULL;
- if ((prStr == predStr) || (prStr && predStr && !strcmp(prStr, predStr))) {
+ if (ADLParser::equivalent_expressions(prStr, predStr)) {
return true;
}
}
diff --git a/hotspot/src/share/vm/adlc/dfa.cpp b/hotspot/src/share/vm/adlc/dfa.cpp
index 36d56062cfd..1075c9da774 100644
--- a/hotspot/src/share/vm/adlc/dfa.cpp
+++ b/hotspot/src/share/vm/adlc/dfa.cpp
@@ -458,7 +458,7 @@ void ArchDesc::buildDFA(FILE* fp) {
class dfa_shared_preds {
- enum { count = 2 };
+ enum { count = 4 };
static bool _found[count];
static const char* _type [count];
@@ -479,12 +479,15 @@ class dfa_shared_preds {
char c = *prev;
switch( c ) {
case ' ':
+ case '\n':
return dfa_shared_preds::valid_loc(pred, prev);
case '!':
case '(':
case '<':
case '=':
return true;
+ case '"': // such as: #line 10 "myfile.ad"\n mypredicate
+ return true;
case '|':
if( prev != pred && *(prev-1) == '|' ) return true;
case '&':
@@ -564,10 +567,14 @@ public:
}
};
// shared predicates, _var and _pred entry should be the same length
-bool dfa_shared_preds::_found[dfa_shared_preds::count] = { false, false };
-const char* dfa_shared_preds::_type[dfa_shared_preds::count] = { "int", "bool" };
-const char* dfa_shared_preds::_var [dfa_shared_preds::count] = { "_n_get_int__", "Compile__current____select_24_bit_instr__" };
-const char* dfa_shared_preds::_pred[dfa_shared_preds::count] = { "n->get_int()", "Compile::current()->select_24_bit_instr()" };
+bool dfa_shared_preds::_found[dfa_shared_preds::count]
+ = { false, false, false, false };
+const char* dfa_shared_preds::_type[dfa_shared_preds::count]
+ = { "int", "jlong", "intptr_t", "bool" };
+const char* dfa_shared_preds::_var [dfa_shared_preds::count]
+ = { "_n_get_int__", "_n_get_long__", "_n_get_intptr_t__", "Compile__current____select_24_bit_instr__" };
+const char* dfa_shared_preds::_pred[dfa_shared_preds::count]
+ = { "n->get_int()", "n->get_long()", "n->get_intptr_t()", "Compile::current()->select_24_bit_instr()" };
void ArchDesc::gen_dfa_state_body(FILE* fp, Dict &minimize, ProductionState &status, Dict &operands_chained_from, int i) {
diff --git a/hotspot/src/share/vm/adlc/filebuff.hpp b/hotspot/src/share/vm/adlc/filebuff.hpp
index c36fdbaf3fa..4c69bacee39 100644
--- a/hotspot/src/share/vm/adlc/filebuff.hpp
+++ b/hotspot/src/share/vm/adlc/filebuff.hpp
@@ -68,6 +68,7 @@ class FileBuff {
// and increments bufeol and filepos to point at the end of that line.
char *get_line(void);
int linenum() const { return _linenum; }
+ void set_linenum(int line) { _linenum = line; }
// This converts a pointer into the buffer to a file offset. It only works
// when the pointer is valid (i.e. just obtained from getline()).
diff --git a/hotspot/src/share/vm/adlc/formssel.cpp b/hotspot/src/share/vm/adlc/formssel.cpp
index fb91d83d2f6..65b511bcdb1 100644
--- a/hotspot/src/share/vm/adlc/formssel.cpp
+++ b/hotspot/src/share/vm/adlc/formssel.cpp
@@ -1102,10 +1102,7 @@ bool equivalent_predicates( const InstructForm *instr1, const InstructForm *inst
}
if( pred1 != NULL && pred2 != NULL ) {
// compare the predicates
- const char *str1 = pred1->_pred;
- const char *str2 = pred2->_pred;
- if( (str1 == NULL && str2 == NULL)
- || (str1 != NULL && str2 != NULL && strcmp(str1,str2) == 0) ) {
+ if (ADLParser::equivalent_expressions(pred1->_pred, pred2->_pred)) {
return true;
}
}
From 871bbff9cecc4319eeaf267ca072a83a6c473e81 Mon Sep 17 00:00:00 2001
From: Eamonn McManus
Date: Wed, 10 Dec 2008 11:59:32 +0100
Subject: [PATCH 46/68] 6456269: Add a GenericMBeanException so clients don't
have to have server's exception classes present
Reviewed-by: jfdenise, dfuchs
---
.../classes/javax/management/Descriptor.java | 34 +++
.../management/GenericMBeanException.java | 276 +++++++++++++++++
.../javax/management/MBeanException.java | 64 +++-
.../interop/MBeanExceptionInteropTest.java | 166 +++++++++++
.../openmbean/GenericMBeanExceptionTest.java | 278 ++++++++++++++++++
5 files changed, 807 insertions(+), 11 deletions(-)
create mode 100644 jdk/src/share/classes/javax/management/GenericMBeanException.java
create mode 100644 jdk/test/javax/management/interop/MBeanExceptionInteropTest.java
create mode 100644 jdk/test/javax/management/openmbean/GenericMBeanExceptionTest.java
diff --git a/jdk/src/share/classes/javax/management/Descriptor.java b/jdk/src/share/classes/javax/management/Descriptor.java
index 30c6a5f5264..573f8fdbed9 100644
--- a/jdk/src/share/classes/javax/management/Descriptor.java
+++ b/jdk/src/share/classes/javax/management/Descriptor.java
@@ -155,6 +155,23 @@ import javax.management.openmbean.OpenType;
* setting an attribute are specified by the field
* {@code setExceptions}.
*
+ * exceptionErrorCodes | String[] |
+ * MBeanAttributeInfo MBeanConstructorInfo MBeanOperationInfo |
+ *
+ * The {@linkplain GenericMBeanException#getErrorCode() error codes}
+ * that can appear in a {@link GenericMBeanException} thrown when getting
+ * this attribute or invoking this operation or constructor. See also
+ * {@code setExceptionErrorCodes}.
+ *
+ * |
exceptionUserDataTypes |
+ * {@link javax.management.openmbean.CompositeType}[] |
+ * MBeanAttributeInfo MBeanConstructorInfo MBeanOperationInfo |
+ *
+ * The types of {@linkplain GenericMBeanException#getUserData() userData}
+ * that can appear in a {@link GenericMBeanException} thrown when getting
+ * this attribute or invoking this operation or constructor. See also
+ * {@code setExceptionUserDataTypes}.
+ *
* |
immutableInfo | String |
* MBeanInfo |
*
@@ -292,6 +309,23 @@ import javax.management.openmbean.OpenType;
* an attribute. Exceptions thrown when getting an attribute are specified
* by the field {@code exceptions}.
*
+ *
setExceptionErrorCodes |
+ * String[] | MBeanAttributeInfo |
+ *
+ * The {@linkplain GenericMBeanException#getErrorCode() error codes}
+ * that can appear in a {@link GenericMBeanException} thrown when setting
+ * this attribute. See also
+ * {@code exceptionErrorCodes}.
+ *
+ * |
setExceptionUserDataTypes |
+ * {@link javax.management.openmbean.CompositeType}[] |
+ * MBeanAttributeInfo |
+ *
+ * The types of {@linkplain GenericMBeanException#getUserData() userData}
+ * that can appear in a {@link GenericMBeanException} thrown when setting
+ * this attribute. See also
+ * {@code exceptionUserDataTypes}.
+ *
* |
severity | String Integer |
* MBeanNotificationInfo |
*
diff --git a/jdk/src/share/classes/javax/management/GenericMBeanException.java b/jdk/src/share/classes/javax/management/GenericMBeanException.java
new file mode 100644
index 00000000000..dd0f96e78b1
--- /dev/null
+++ b/jdk/src/share/classes/javax/management/GenericMBeanException.java
@@ -0,0 +1,276 @@
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Sun designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Sun in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+package javax.management;
+
+import javax.management.openmbean.CompositeData;
+
+/**
+ * A customizable exception that has an optional error code string and
+ * payload. By using this exception in an MBean, you can avoid requiring
+ * clients of the MBean to have custom exception classes.
+ *
+ * An instance of this class has an optional {@linkplain #getErrorCode()
+ * error code}, and an optional {@linkplain #getUserData() payload} known as
+ * {@code userData}. This allows you to distinguish between different
+ * sorts of exception while still using this class for all of them.
+ *
+ * To produce a suitable {@code userData}, it is often simplest to use
+ * the MXBean framework. For example, suppose you want to convey a severity
+ * and a subsystem with your exception, which are respectively an int and a
+ * String. You could define a class like this:
+ *
+ *
+ * public class ExceptionDetails {
+ * private final int severity;
+ * private final String subsystem;
+ *
+ * {@link java.beans.ConstructorProperties @ConstructorProperties}({"severity", "subsystem"})
+ * public ExceptionDetails(int severity, String subsystem) {
+ * this.severity = severity;
+ * this.subsystem = subsystem;
+ * }
+ *
+ * public int getSeverity() {
+ * return severity;
+ * }
+ *
+ * public String getSubsystem() {
+ * return subsystem;
+ * }
+ * }
+ *
+ *
+ * Then you can get the MXBean framework to transform {@code ExceptionDetails}
+ * into {@link CompositeData} like this:
+ *
+ *
+ * static final {@link javax.management.openmbean.MXBeanMapping MXBeanMapping} exceptionDetailsMapping = {@link javax.management.openmbean.MXBeanMappingFactory#DEFAULT
+ * MXBeanMappingFactory.DEFAULT}.mappingForType(
+ * ExceptionDetails.class, MXBeanMappingFactory.DEFAULT);
+ *
+ * public static GenericMBeanException newGenericMBeanException(
+ * String message, String errorCode, int severity, String subsystem) {
+ * ExceptionDetails details = new ExceptionDetails(severity, subsystem);
+ * CompositeData userData = (CompositeData)
+ * exceptionDetailsMapping.toOpenValue(details);
+ * return new GenericMBeanException(
+ * message, errorCode, userData, (Throwable) null);
+ * }
+ *
+ * ...
+ * throw newGenericMBeanException(message, errorCode, 25, "foosystem");
+ *
+ *
+ * A client that knows the {@code ExceptionDetails} class can convert
+ * back from the {@code userData} of a {@code GenericMBeanException}
+ * that was generated as above:
+ *
+ *
+ * ...
+ * try {
+ * mbeanProxy.foo();
+ * } catch (GenericMBeanException e) {
+ * CompositeData userData = e.getUserData();
+ * ExceptionDetails details = (ExceptionDetails)
+ * exceptionDetailsMapping.fromOpenValue(userData);
+ * System.out.println("Exception Severity: " + details.getSeverity());
+ * }
+ * ...
+ *
+ *
+ * The Descriptor field exceptionErrorCodes can be used to specify in the
+ * {@link MBeanOperationInfo} for an operation what the possible
+ * {@linkplain #getErrorCode() error codes} are when that operation throws
+ * {@code GenericMBeanException}. It can also be used in an {@link
+ * MBeanConstructorInfo} or {@link MBeanAttributeInfo} to specify what the
+ * possible error codes are for {@code GenericMBeanException} when invoking
+ * that constructor or getting that attribute, respectively. The field
+ * setExceptionErrorCodes can be used to specify what the possible
+ * error codes are when setting an attribute.
+ *
+ * You may want to use the {@link DescriptorKey @DescriptorKey} facility
+ * to define annotations that allow you to specify the error codes. If you
+ * define...
+ *
+ *
+ * {@link java.lang.annotation.Documented @Documented}
+ * {@link java.lang.annotation.Target @Target}(ElementType.METHOD)
+ * {@link java.lang.annotation.Retention @Retention}(RetentionPolicy.RUNTIME)
+ * public @interface ErrorCodes {
+ * @DescriptorKey("exceptionErrorCodes")
+ * String[] value();
+ * }
+ *
+ *
+ * ...then you can write MBean interfaces like this...
+ *
+ *
+ * public interface FooMBean { // or FooMXBean
+ * @ErrorCodes({"com.example.bad", "com.example.worse"})
+ * public void foo() throws GenericMBeanException;
+ * }
+ *
+ *
+ * The Descriptor field exceptionUserDataTypes can be used to specify in the
+ * {@link MBeanOperationInfo} for an operation what the possible types of
+ * {@linkplain #getUserData() userData} are when that operation throws
+ * {@code GenericMBeanException}. It is an array of
+ * {@link javax.management.openmbean.CompositeType CompositeType} values
+ * describing the possible {@link CompositeData} formats. This field can also be used
+ * in an {@link MBeanConstructorInfo} or {@link MBeanAttributeInfo} to specify
+ * the possible types of user data for {@code GenericMBeanException} when
+ * invoking that constructor or getting that attribute, respectively. The
+ * field
+ * setExceptionUserDataTypes
+ * can be used to specify the possible types of user data for exceptions when
+ * setting an attribute. If a Descriptor has both {@code exceptionErrorCodes}
+ * and {@code exceptionUserDataTypes} then the two arrays should be the
+ * same size; each pair of corresponding elements describes one kind
+ * of exception. Similarly for {@code setExceptionErrorCodes} and {@code
+ * setExceptionUserDataTypes}.
+ *
+ *
+ *
Serialization
+ *
+ * For compatibility reasons, instances of this class are serialized as
+ * instances of {@link MBeanException}. Special logic in that class converts
+ * them back to instances of this class at deserialization time. If the
+ * serialized object is deserialized in an earlier version of the JMX API
+ * that does not include this class, then it will appear as just an {@code
+ * MBeanException} and the error code or userData will not be available.
+ *
+ * @since 1.7
+ */
+public class GenericMBeanException extends MBeanException {
+ private static final long serialVersionUID = -1560202003985932823L;
+
+ /**
+ * Constructs a new {@code GenericMBeanException} with the given
+ * detail message. This constructor is
+ * equivalent to {@link #GenericMBeanException(String, String,
+ * CompositeData, Throwable) GenericMBeanException(message, "",
+ * null, null)}.
+ *
+ * @param message the exception detail message.
+ */
+ public GenericMBeanException(String message) {
+ this(message, "", null, null);
+ }
+
+ /**
+ * Constructs a new {@code GenericMBeanException} with the given
+ * detail message and cause. This constructor is
+ * equivalent to {@link #GenericMBeanException(String, String,
+ * CompositeData, Throwable) GenericMBeanException(message, "",
+ * null, cause)}.
+ *
+ * @param message the exception detail message.
+ * @param cause the cause of this exception. Can be null.
+ */
+ public GenericMBeanException(String message, Throwable cause) {
+ this(message, "", null, cause);
+ }
+
+ /**
+ * Constructs a new {@code GenericMBeanException} with the given
+ * detail message, error code, and user data. This constructor is
+ * equivalent to {@link #GenericMBeanException(String, String,
+ * CompositeData, Throwable) GenericMBeanException(message, errorCode,
+ * userData, null)}.
+ *
+ * @param message the exception detail message.
+ * @param errorCode the exception error code. Specifying a null value
+ * is equivalent to specifying an empty string. It is recommended to use
+ * the same reverse domain name convention as package names, for example
+ * "com.example.foo.UnexpectedFailure". There is no requirement that the
+ * error code be a syntactically valid Java identifier.
+ * @param userData extra information about the exception. Can be null.
+ */
+ public GenericMBeanException(
+ String message, String errorCode, CompositeData userData) {
+ this(message, errorCode, userData, null);
+ }
+
+ /**
+ * Constructs a new {@code GenericMBeanException} with the given
+ * detail message, error code, user data, and cause.
+ *
+ * @param message the exception detail message.
+ * @param errorCode the exception error code. Specifying a null value
+ * is equivalent to specifying an empty string. It is recommended to use
+ * the same reverse domain name convention as package names, for example
+ * "com.example.foo.UnexpectedFailure". There is no requirement that the
+ * error code be a syntactically valid Java identifier.
+ * @param userData extra information about the exception. Can be null.
+ * @param cause the cause of this exception. Can be null.
+ */
+ public GenericMBeanException(
+ String message, String errorCode, CompositeData userData,
+ Throwable cause) {
+ super(message, (errorCode == null) ? "" : errorCode, userData, cause);
+ }
+
+ /**
+ * Returns the error code of this exception.
+ *
+ * @return the error code. This value is never null.
+ */
+ public String getErrorCode() {
+ return errorCode;
+ }
+
+ /**
+ * Returns the userData of this exception.
+ *
+ * @return the userData. Can be null.
+ */
+ public CompositeData getUserData() {
+ return userData;
+ }
+
+ /**
+ * Instances of this class are serialized as instances of
+ * {@link MBeanException}. {@code MBeanException} has private fields that can
+ * not be set by its public constructors. They can only be set in objects
+ * returned by this method. When an {@code MBeanException} instance is
+ * deserialized, if those fields are present then its {@code readResolve}
+ * method will substitute a {@code GenericMBeanException} equivalent to
+ * this one.
+ */
+ Object writeReplace() {
+ MBeanException x = new MBeanException(
+ getMessage(), errorCode, userData, getCause());
+ x.setStackTrace(this.getStackTrace());
+ return x;
+ }
+}
diff --git a/jdk/src/share/classes/javax/management/MBeanException.java b/jdk/src/share/classes/javax/management/MBeanException.java
index 839daa5dd31..7edc6639a6b 100644
--- a/jdk/src/share/classes/javax/management/MBeanException.java
+++ b/jdk/src/share/classes/javax/management/MBeanException.java
@@ -25,6 +25,8 @@
package javax.management;
+import javax.management.openmbean.CompositeData;
+
/**
* Represents "user defined" exceptions thrown by MBean methods
@@ -40,6 +42,26 @@ public class MBeanException extends JMException {
/* Serial version */
private static final long serialVersionUID = 4066342430588744142L;
+ /**
+ * @serial This field is null for instances of this class that were
+ * produced by its public constructors. It is non-null for instances
+ * of this class that represent serialized instances of {@link
+ * GenericMBeanException}.
+ *
+ * @see GenericMBeanException#getErrorCode()
+ */
+ final String errorCode;
+
+ /**
+ * @serial This field is null for instances of this class that were
+ * produced by its public constructors. It may be non-null for instances
+ * of this class that represent serialized instances of {@link
+ * GenericMBeanException}.
+ *
+ * @see GenericMBeanException#getUserData()
+ */
+ final CompositeData userData;
+
/**
* @serial Encapsulated {@link Exception}
*/
@@ -51,9 +73,8 @@ public class MBeanException extends JMException {
*
* @param e the wrapped exception.
*/
- public MBeanException(java.lang.Exception e) {
- super() ;
- exception = e ;
+ public MBeanException(Exception e) {
+ this(null, null, null, e);
}
/**
@@ -63,11 +84,19 @@ public class MBeanException extends JMException {
* @param e the wrapped exception.
* @param message the detail message.
*/
- public MBeanException(java.lang.Exception e, String message) {
- super(message) ;
- exception = e ;
+ public MBeanException(Exception e, String message) {
+ this(message, null, null, e);
}
+ MBeanException(
+ String message, String errorCode, CompositeData userData, Throwable cause) {
+ super(message);
+ initCause(cause);
+ if (cause instanceof Exception)
+ this.exception = (Exception) cause;
+ this.errorCode = errorCode;
+ this.userData = userData;
+ }
/**
* Return the actual {@link Exception} thrown.
@@ -79,11 +108,24 @@ public class MBeanException extends JMException {
}
/**
- * Return the actual {@link Exception} thrown.
- *
- * @return the wrapped exception.
+ * This method is invoked when deserializing instances of this class.
+ * If the {@code errorCode} field of the deserialized instance is not
+ * null, this method returns an instance of {@link GenericMBeanException}
+ * instead. Otherwise it returns {@code this}.
+ * @return {@code this}, or a {@code GenericMBeanException}.
*/
- public Throwable getCause() {
- return exception;
+ Object readResolve() {
+ if (errorCode == null) {
+ // serial compatibility: earlier versions did not set
+ // Throwable.cause because they overrode getCause().
+ if (getCause() == null && exception != null)
+ initCause(exception);
+ return this;
+ } else {
+ Throwable t = new GenericMBeanException(
+ getMessage(), errorCode, userData, getCause());
+ t.setStackTrace(this.getStackTrace());
+ return t;
+ }
}
}
diff --git a/jdk/test/javax/management/interop/MBeanExceptionInteropTest.java b/jdk/test/javax/management/interop/MBeanExceptionInteropTest.java
new file mode 100644
index 00000000000..dff6d9639d3
--- /dev/null
+++ b/jdk/test/javax/management/interop/MBeanExceptionInteropTest.java
@@ -0,0 +1,166 @@
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+/*
+ * @test
+ * @bug 6456269
+ * @summary Test that an MBeanException serialized on JDK 6 deserializes
+ * correctly on JDK 7.
+ * @author Eamonn McManus
+ */
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import javax.management.MBeanException;
+
+// In JDK 6, the Throwable.cause field was always null for an MBeanException,
+// but it didn't matter because we overrode getCause() to return
+// MBeanException.exception instead. In JDK 7, we no longer override getCause()
+// because MBeanException doubles as the serial form of GenericMBeanException.
+// So we need some care to make sure that objects deserialized from JDK 6
+// have the right getCause() behaviour.
+public class MBeanExceptionInteropTest {
+ private static final byte[] SERIALIZED_MBEAN_EXCEPTION = {
+ -84,-19,0,5,115,114,0,31,106,97,118,97,120,46,109,97,
+ 110,97,103,101,109,101,110,116,46,77,66,101,97,110,69,120,
+ 99,101,112,116,105,111,110,56,110,-116,-27,110,87,49,-50,2,
+ 0,1,76,0,9,101,120,99,101,112,116,105,111,110,116,0,
+ 21,76,106,97,118,97,47,108,97,110,103,47,69,120,99,101,
+ 112,116,105,111,110,59,120,114,0,28,106,97,118,97,120,46,
+ 109,97,110,97,103,101,109,101,110,116,46,74,77,69,120,99,
+ 101,112,116,105,111,110,4,-35,76,-20,-109,-99,126,113,2,0,
+ 0,120,114,0,19,106,97,118,97,46,108,97,110,103,46,69,
+ 120,99,101,112,116,105,111,110,-48,-3,31,62,26,59,28,-60,
+ 2,0,0,120,114,0,19,106,97,118,97,46,108,97,110,103,
+ 46,84,104,114,111,119,97,98,108,101,-43,-58,53,39,57,119,
+ -72,-53,3,0,3,76,0,5,99,97,117,115,101,116,0,21,
+ 76,106,97,118,97,47,108,97,110,103,47,84,104,114,111,119,
+ 97,98,108,101,59,76,0,13,100,101,116,97,105,108,77,101,
+ 115,115,97,103,101,116,0,18,76,106,97,118,97,47,108,97,
+ 110,103,47,83,116,114,105,110,103,59,91,0,10,115,116,97,
+ 99,107,84,114,97,99,101,116,0,30,91,76,106,97,118,97,
+ 47,108,97,110,103,47,83,116,97,99,107,84,114,97,99,101,
+ 69,108,101,109,101,110,116,59,120,112,113,0,126,0,8,116,
+ 0,7,79,104,32,100,101,97,114,117,114,0,30,91,76,106,
+ 97,118,97,46,108,97,110,103,46,83,116,97,99,107,84,114,
+ 97,99,101,69,108,101,109,101,110,116,59,2,70,42,60,60,
+ -3,34,57,2,0,0,120,112,0,0,0,2,115,114,0,27,
+ 106,97,118,97,46,108,97,110,103,46,83,116,97,99,107,84,
+ 114,97,99,101,69,108,101,109,101,110,116,97,9,-59,-102,38,
+ 54,-35,-123,2,0,4,73,0,10,108,105,110,101,78,117,109,
+ 98,101,114,76,0,14,100,101,99,108,97,114,105,110,103,67,
+ 108,97,115,115,113,0,126,0,6,76,0,8,102,105,108,101,
+ 78,97,109,101,113,0,126,0,6,76,0,10,109,101,116,104,
+ 111,100,78,97,109,101,113,0,126,0,6,120,112,0,0,0,
+ 63,116,0,25,77,66,101,97,110,69,120,99,101,112,116,105,
+ 111,110,73,110,116,101,114,111,112,84,101,115,116,116,0,30,
+ 77,66,101,97,110,69,120,99,101,112,116,105,111,110,73,110,
+ 116,101,114,111,112,84,101,115,116,46,106,97,118,97,116,0,
+ 5,119,114,105,116,101,115,113,0,126,0,12,0,0,0,46,
+ 113,0,126,0,14,113,0,126,0,15,116,0,4,109,97,105,
+ 110,120,115,114,0,34,106,97,118,97,46,108,97,110,103,46,
+ 73,108,108,101,103,97,108,65,114,103,117,109,101,110,116,69,
+ 120,99,101,112,116,105,111,110,-75,-119,115,-45,125,102,-113,-68,
+ 2,0,0,120,114,0,26,106,97,118,97,46,108,97,110,103,
+ 46,82,117,110,116,105,109,101,69,120,99,101,112,116,105,111,
+ 110,-98,95,6,71,10,52,-125,-27,2,0,0,120,113,0,126,
+ 0,3,113,0,126,0,21,116,0,3,66,97,100,117,113,0,
+ 126,0,10,0,0,0,2,115,113,0,126,0,12,0,0,0,
+ 62,113,0,126,0,14,113,0,126,0,15,113,0,126,0,16,
+ 115,113,0,126,0,12,0,0,0,46,113,0,126,0,14,113,
+ 0,126,0,15,113,0,126,0,18,120,
+ };
+
+ private static volatile String failure;
+
+ public static void main(String[] args) throws Exception {
+ if (args.length > 0) {
+ if (args[0].equals("write") && args.length == 1) {
+ write();
+ return;
+ } else {
+ System.err.println(
+ "Usage: java MBeanExceptionInteropTest");
+ System.err.println(
+ "or: java MBeanExceptionInteropTest write");
+ System.exit(1);
+ }
+ }
+
+ // Read the serialized object and check it is correct.
+ ByteArrayInputStream bin =
+ new ByteArrayInputStream(SERIALIZED_MBEAN_EXCEPTION);
+ ObjectInputStream oin = new ObjectInputStream(bin);
+ MBeanException mbeanEx = (MBeanException) oin.readObject();
+ assertEquals("MBeanException message", "Oh dear", mbeanEx.getMessage());
+ System.out.println("getCause(): " + mbeanEx.getCause() + "; " +
+ "getTargetException(): " + mbeanEx.getTargetException());
+ for (Throwable t :
+ new Throwable[] {mbeanEx.getCause(), mbeanEx.getTargetException()}) {
+ if (!(t instanceof IllegalArgumentException))
+ fail("Nested exception not an IllegalArgumentException: " + t);
+ else
+ assertEquals("Nested exception message", "Bad", t.getMessage());
+ }
+
+ if (failure == null)
+ System.out.println("TEST PASSED");
+ else
+ throw new Exception("TEST FAILED: " + failure);
+ }
+
+ // Write a file that can be inserted into this source file as the
+ // contents of the SERIALIZED_MBEAN_EXCEPTION array. Run this program
+ // on JDK 6 to generate the array, then test on JDK 7.
+ private static void write() throws Exception {
+ Exception wrapped = new IllegalArgumentException("Bad");
+ MBeanException mbeanEx = new MBeanException(wrapped, "Oh dear");
+ ByteArrayOutputStream bout = new ByteArrayOutputStream();
+ ObjectOutputStream oout = new ObjectOutputStream(bout);
+ oout.writeObject(mbeanEx);
+ oout.close();
+ byte[] bytes = bout.toByteArray();
+ for (int i = 0; i < bytes.length; i++) {
+ System.out.printf("%d,", bytes[i]);
+ if (i % 16 == 15)
+ System.out.println();
+ }
+ if (bytes.length % 16 != 0)
+ System.out.println();
+ }
+
+ private static void assertEquals(String what, Object expect, Object actual) {
+ boolean equal = (expect == null) ? (actual == null) : expect.equals(actual);
+ if (equal)
+ System.out.println("OK: " + what + ": " + expect);
+ else
+ fail(what + ": expected " + expect + ", got " + actual);
+ }
+
+ private static void fail(String why) {
+ System.out.println("FAIL: " + why);
+ failure = why;
+ }
+}
diff --git a/jdk/test/javax/management/openmbean/GenericMBeanExceptionTest.java b/jdk/test/javax/management/openmbean/GenericMBeanExceptionTest.java
new file mode 100644
index 00000000000..fa682d0d0d7
--- /dev/null
+++ b/jdk/test/javax/management/openmbean/GenericMBeanExceptionTest.java
@@ -0,0 +1,278 @@
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+/*
+ * @test
+ * @bug 6456269
+ * @summary Test GenericMBeanException
+ * @author Eamonn McManus
+ */
+
+import java.beans.ConstructorProperties;
+import java.lang.management.ManagementFactory;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import javax.management.GenericMBeanException;
+import javax.management.JMX;
+import javax.management.MBeanServer;
+import javax.management.MBeanServerConnection;
+import javax.management.ObjectName;
+import javax.management.openmbean.CompositeData;
+import javax.management.openmbean.CompositeType;
+import javax.management.openmbean.MXBeanMapping;
+import javax.management.openmbean.MXBeanMappingFactory;
+import javax.management.remote.JMXConnector;
+import javax.management.remote.JMXConnectorFactory;
+import javax.management.remote.JMXConnectorServer;
+import javax.management.remote.JMXConnectorServerFactory;
+import javax.management.remote.JMXServiceURL;
+
+public class GenericMBeanExceptionTest {
+ private static volatile String failure = null;
+
+ public static interface ThrowerMBean {
+ public void throwGeneric() throws GenericMBeanException;
+ public void throwGeneric(Throwable cause) throws GenericMBeanException;
+ public void throwGeneric(String errorCode) throws GenericMBeanException;
+ public void throwGeneric(CompositeData userData) throws GenericMBeanException;
+ public void throwGeneric(String errorCode, CompositeData userData)
+ throws GenericMBeanException;
+ public void throwGeneric(String errorCode, CompositeData userData, Throwable cause)
+ throws GenericMBeanException;
+ }
+
+ public static class Thrower implements ThrowerMBean {
+
+ public void throwGeneric() throws GenericMBeanException {
+ throw new GenericMBeanException("Message");
+ }
+
+ public void throwGeneric(Throwable cause) throws GenericMBeanException {
+ throw new GenericMBeanException("Message", cause);
+ }
+
+ public void throwGeneric(String errorCode) throws GenericMBeanException {
+ throw new GenericMBeanException("Message", errorCode, null);
+ }
+
+ public void throwGeneric(CompositeData userData) throws GenericMBeanException {
+ throw new GenericMBeanException("Message", null, userData);
+ }
+
+ public void throwGeneric(String errorCode, CompositeData userData)
+ throws GenericMBeanException {
+ throw new GenericMBeanException("Message", errorCode, userData);
+ }
+
+ public void throwGeneric(String errorCode, CompositeData userData,
+ Throwable cause) throws GenericMBeanException {
+ throw new GenericMBeanException("Message", errorCode, userData, cause);
+ }
+ }
+
+ public static class Payload {
+ private final int severity;
+ private final String subsystem;
+
+ @ConstructorProperties({"severity", "subsystem"})
+ public Payload(int severity, String subsystem) {
+ this.severity = severity;
+ this.subsystem = subsystem;
+ }
+
+ public int getSeverity() {
+ return severity;
+ }
+
+ public String getSubsystem() {
+ return subsystem;
+ }
+
+ @Override
+ public boolean equals(Object x) {
+ if (!(x instanceof Payload))
+ return false;
+ Payload p = (Payload) x;
+ return (severity == p.severity &&
+ (subsystem == null) ?
+ p.subsystem == null : subsystem.equals(p.subsystem));
+ }
+
+ @Override
+ public int hashCode() {
+ return severity + subsystem.hashCode();
+ }
+
+ @Override
+ public String toString() {
+ return "Payload{severity: " + severity + ", subsystem: " + subsystem + "}";
+ }
+ }
+
+ public static void main(String[] args) throws Exception {
+ MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
+ ObjectName name = new ObjectName("test:type=Thrower");
+ Thrower thrower = new Thrower();
+ mbs.registerMBean(thrower, name);
+
+ if (args.length > 0) {
+ System.out.println("Attach client now, hit return to exit");
+ System.in.read();
+ return;
+ }
+
+ JMXServiceURL url = new JMXServiceURL("service:jmx:rmi://");
+ JMXConnectorServer cs = JMXConnectorServerFactory.newJMXConnectorServer(
+ url, null, mbs);
+ cs.start();
+ JMXServiceURL addr = cs.getAddress();
+
+ JMXConnector cc = JMXConnectorFactory.connect(addr);
+ MBeanServerConnection mbsc = cc.getMBeanServerConnection();
+
+ ThrowerMBean throwerProxy = JMX.newMBeanProxy(mbsc, name, ThrowerMBean.class);
+
+ Payload payload = new Payload(5, "modular modulizer");
+ MXBeanMapping payloadMapping = MXBeanMappingFactory.DEFAULT.mappingForType(
+ Payload.class, MXBeanMappingFactory.DEFAULT);
+ CompositeData userData = (CompositeData)
+ payloadMapping.toOpenValue(payload);
+ Throwable cause = new IllegalArgumentException("Badness");
+
+ Object[][] testCases = {
+ {},
+ {"code1"},
+ {userData},
+ {"code2", userData},
+ {(String) null, userData},
+ {"code99", userData, cause},
+ {(String) null, userData, cause},
+ };
+
+ for (Object[] testCase : testCases) {
+ System.out.println("Test case: " + testCaseString(testCase));
+
+ // Find which ThrowerMBean method it corresponds to
+ Method testMethod = null;
+search:
+ for (Method m : ThrowerMBean.class.getMethods()) {
+ Class>[] paramTypes = m.getParameterTypes();
+ if (paramTypes.length != testCase.length)
+ continue;
+ for (int i = 0; i < paramTypes.length; i++) {
+ if (testCase[i] != null && !paramTypes[i].isInstance(testCase[i]))
+ continue search;
+ }
+ testMethod = m;
+ }
+
+ if (testMethod == null) {
+ throw new Exception("TEST ERROR: no method corresponds: " +
+ testCaseString(testCase));
+ }
+
+ try {
+ testMethod.invoke(throwerProxy, testCase);
+ fail("Did not throw exception", testCase);
+ continue;
+ } catch (InvocationTargetException e) {
+ Throwable iteCause = e.getCause();
+ if (!(iteCause instanceof GenericMBeanException)) {
+ iteCause.printStackTrace(System.out);
+ fail("Threw wrong exception " + iteCause, testCase);
+ continue;
+ }
+ GenericMBeanException ge = (GenericMBeanException) iteCause;
+ if (!ge.getMessage().equals("Message"))
+ fail("Wrong message: " + ge.getMessage(), testCase);
+
+ Class>[] paramTypes = testMethod.getParameterTypes();
+ for (int i = 0; i < paramTypes.length; i++) {
+ Class> paramType = paramTypes[i];
+
+ if (paramType == Throwable.class) { // cause
+ Throwable geCause = ge.getCause();
+ if (!(geCause instanceof IllegalArgumentException))
+ fail("Wrong cause: " + geCause, testCase);
+ else if (!geCause.getMessage().equals("Badness"))
+ fail("Wrong cause message: " + geCause.getMessage(), testCase);
+ } else if (paramType == String.class) { // errorCode
+ String errorCode = ge.getErrorCode();
+ String expectedErrorCode =
+ (testCase[i] == null) ? "" : (String) testCase[i];
+ if (!expectedErrorCode.equals(errorCode))
+ fail("Wrong error code: " + ge.getErrorCode(), testCase);
+ } else if (paramType == CompositeData.class) { // userData
+ CompositeData userData2 = ge.getUserData();
+ if (!userData.equals(userData2))
+ fail("Wrong userData: " + userData2, testCase);
+ Payload payload2 = (Payload) payloadMapping.fromOpenValue(userData2);
+ if (!payload.equals(payload2))
+ fail("Wrong payload: " + payload2, testCase);
+ } else
+ throw new Exception("TEST ERROR: unknown parameter type: " + paramType);
+ }
+ }
+ }
+
+ if (failure == null)
+ System.out.println("TEST PASSED");
+ else
+ throw new Exception("TEST FAILED: " + failure);
+ }
+
+ private static String testCaseString(Object[] testCase) {
+ StringBuilder sb = new StringBuilder("[");
+ String sep = "";
+ for (Object x : testCase) {
+ sb.append(sep);
+ String xs = (x instanceof CompositeData) ?
+ compositeDataString((CompositeData) x) : String.valueOf(x);
+ sb.append(xs);
+ sep = ", ";
+ }
+ sb.append("]");
+ return sb.toString();
+ }
+
+ private static String compositeDataString(CompositeData cd) {
+ StringBuilder sb = new StringBuilder("CompositeData{");
+ CompositeType ct = cd.getCompositeType();
+ String sep = "";
+ for (String key : ct.keySet()) {
+ sb.append(sep).append(key).append(": ").append(cd.get(key));
+ sep = ", ";
+ }
+ sb.append("}");
+ return sb.toString();
+ }
+
+ private static void fail(String why, Object[] testCase) {
+ fail(testCaseString(testCase) + ": " + why);
+ }
+
+ private static void fail(String why) {
+ failure = why;
+ System.out.println("FAIL: " + why);
+ }
+}
From 89fa477ecf236750aed9e017e21f535462ef06f0 Mon Sep 17 00:00:00 2001
From: Xueming Shen
Date: Wed, 10 Dec 2008 14:03:15 -0800
Subject: [PATCH 47/68] 6642323: Speeding up Single Byte Decoders 6642328:
Speeding up Single Byte Encoders
Re-implementation of mapping based sbcs charts
Reviewed-by: alanb
---
jdk/make/java/nio/FILES_java.gmk | 33 +-
jdk/make/java/nio/Makefile | 15 +-
jdk/make/sun/nio/FILES_java.gmk | 76 ++-
jdk/make/sun/nio/Makefile | 16 +-
jdk/make/tools/CharsetMapping/IBM037.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM037.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM037.nr | 1 +
jdk/make/tools/CharsetMapping/IBM1006.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1025.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1025.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1025.nr | 1 +
jdk/make/tools/CharsetMapping/IBM1026.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1026.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1026.nr | 1 +
jdk/make/tools/CharsetMapping/IBM1046.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1047.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1097.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1098.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1112.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1112.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1112.nr | 1 +
jdk/make/tools/CharsetMapping/IBM1122.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1122.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1122.nr | 1 +
jdk/make/tools/CharsetMapping/IBM1123.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1123.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1123.nr | 1 +
jdk/make/tools/CharsetMapping/IBM1124.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1140.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1140.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1141.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1141.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1142.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1142.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1143.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1143.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1144.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1144.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1145.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1145.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1146.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1146.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1147.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1147.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1148.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1148.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM1149.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM1149.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM273.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM273.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM273.nr | 1 +
jdk/make/tools/CharsetMapping/IBM277.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM277.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM277.nr | 1 +
jdk/make/tools/CharsetMapping/IBM278.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM278.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM278.nr | 1 +
jdk/make/tools/CharsetMapping/IBM280.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM280.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM280.nr | 1 +
jdk/make/tools/CharsetMapping/IBM284.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM284.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM284.nr | 1 +
jdk/make/tools/CharsetMapping/IBM285.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM285.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM285.nr | 1 +
jdk/make/tools/CharsetMapping/IBM297.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM297.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM297.nr | 1 +
jdk/make/tools/CharsetMapping/IBM420.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM420.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM420.nr | 1 +
jdk/make/tools/CharsetMapping/IBM424.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM424.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM424.nr | 1 +
jdk/make/tools/CharsetMapping/IBM437.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM500.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM500.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM500.nr | 1 +
jdk/make/tools/CharsetMapping/IBM737.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM775.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM838.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM838.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM838.nr | 6 +
jdk/make/tools/CharsetMapping/IBM850.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM852.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM855.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM856.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM857.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM858.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM860.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM861.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM862.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM863.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM864.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM865.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM866.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM868.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM869.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM870.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM870.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM870.nr | 1 +
jdk/make/tools/CharsetMapping/IBM871.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM871.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM871.nr | 1 +
jdk/make/tools/CharsetMapping/IBM874.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM874.nr | 5 +
jdk/make/tools/CharsetMapping/IBM875.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM875.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM875.nr | 1 +
jdk/make/tools/CharsetMapping/IBM918.c2b | 1 +
jdk/make/tools/CharsetMapping/IBM918.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM918.nr | 1 +
jdk/make/tools/CharsetMapping/IBM921.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/IBM922.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_11.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_13.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_15.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_2.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_3.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_4.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_5.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_6.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_7.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_8.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/ISO_8859_9.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/JIS_X_0201.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/KOI8_R.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/KOI8_U.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1250.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1251.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1252.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1253.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1254.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1255.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1256.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1257.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS1258.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MS874.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacArabic.map | 257 +++++++++++
.../tools/CharsetMapping/MacCentralEurope.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacCroatian.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacCyrillic.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacDingbat.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacGreek.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacHebrew.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacIceland.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacRoman.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacRomania.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacSymbol.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacThai.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacTurkish.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/MacUkraine.map | 257 +++++++++++
.../tools/CharsetMapping/SingleByte-X.java | 83 ++++
jdk/make/tools/CharsetMapping/TIS_620.map | 257 +++++++++++
jdk/make/tools/CharsetMapping/extsbcs | 74 +++
jdk/make/tools/CharsetMapping/sbcs | 28 ++
.../tools/charsetmapping/GenerateMapping.java | 3 +-
.../tools/charsetmapping/GenerateSBCS.java | 262 +++++++++++
.../share/classes/sun/io/ByteToCharCp850.java | 6 +-
.../classes/sun/io/CharToByteJIS0201.java | 16 +-
.../classes/sun/io/CharToByteSingleByte.java | 33 +-
jdk/src/share/classes/sun/nio/cs/IBM437.java | 368 ---------------
jdk/src/share/classes/sun/nio/cs/IBM737.java | 321 -------------
jdk/src/share/classes/sun/nio/cs/IBM775.java | 326 -------------
jdk/src/share/classes/sun/nio/cs/IBM850.java | 299 ------------
jdk/src/share/classes/sun/nio/cs/IBM852.java | 274 -----------
jdk/src/share/classes/sun/nio/cs/IBM855.java | 304 ------------
jdk/src/share/classes/sun/nio/cs/IBM857.java | 263 -----------
jdk/src/share/classes/sun/nio/cs/IBM858.java | 264 -----------
jdk/src/share/classes/sun/nio/cs/IBM862.java | 396 ----------------
jdk/src/share/classes/sun/nio/cs/IBM866.java | 332 --------------
jdk/src/share/classes/sun/nio/cs/IBM874.java | 252 ----------
.../share/classes/sun/nio/cs/ISO_8859_13.java | 266 -----------
.../share/classes/sun/nio/cs/ISO_8859_15.java | 249 ----------
.../share/classes/sun/nio/cs/ISO_8859_2.java | 246 ----------
.../share/classes/sun/nio/cs/ISO_8859_4.java | 244 ----------
.../share/classes/sun/nio/cs/ISO_8859_5.java | 271 -----------
.../share/classes/sun/nio/cs/ISO_8859_7.java | 255 ----------
.../share/classes/sun/nio/cs/ISO_8859_9.java | 233 ----------
jdk/src/share/classes/sun/nio/cs/KOI8_R.java | 344 --------------
jdk/src/share/classes/sun/nio/cs/KOI8_U.java | 323 -------------
jdk/src/share/classes/sun/nio/cs/MS1250.java | 304 ------------
jdk/src/share/classes/sun/nio/cs/MS1251.java | 306 ------------
jdk/src/share/classes/sun/nio/cs/MS1252.java | 304 ------------
jdk/src/share/classes/sun/nio/cs/MS1253.java | 303 ------------
jdk/src/share/classes/sun/nio/cs/MS1254.java | 305 ------------
jdk/src/share/classes/sun/nio/cs/MS1257.java | 304 ------------
.../share/classes/sun/nio/cs/SingleByte.java | 241 ++++++++++
.../share/classes/sun/nio/cs/ext/IBM037.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM1006.java | 336 --------------
.../share/classes/sun/nio/cs/ext/IBM1025.java | 272 -----------
.../share/classes/sun/nio/cs/ext/IBM1026.java | 233 ----------
.../share/classes/sun/nio/cs/ext/IBM1046.java | 335 --------------
.../share/classes/sun/nio/cs/ext/IBM1047.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM1097.java | 342 --------------
.../share/classes/sun/nio/cs/ext/IBM1098.java | 362 ---------------
.../share/classes/sun/nio/cs/ext/IBM1112.java | 266 -----------
.../share/classes/sun/nio/cs/ext/IBM1122.java | 262 -----------
.../share/classes/sun/nio/cs/ext/IBM1123.java | 272 -----------
.../share/classes/sun/nio/cs/ext/IBM1124.java | 272 -----------
.../share/classes/sun/nio/cs/ext/IBM1140.java | 191 --------
.../share/classes/sun/nio/cs/ext/IBM1141.java | 189 --------
.../share/classes/sun/nio/cs/ext/IBM1142.java | 190 --------
.../share/classes/sun/nio/cs/ext/IBM1143.java | 190 --------
.../share/classes/sun/nio/cs/ext/IBM1144.java | 190 --------
.../share/classes/sun/nio/cs/ext/IBM1145.java | 190 --------
.../share/classes/sun/nio/cs/ext/IBM1146.java | 190 --------
.../share/classes/sun/nio/cs/ext/IBM1147.java | 190 --------
.../share/classes/sun/nio/cs/ext/IBM1148.java | 190 --------
.../share/classes/sun/nio/cs/ext/IBM1149.java | 190 --------
.../share/classes/sun/nio/cs/ext/IBM273.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM277.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM278.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM280.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM284.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM285.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM297.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM420.java | 315 -------------
.../share/classes/sun/nio/cs/ext/IBM424.java | 256 -----------
.../share/classes/sun/nio/cs/ext/IBM500.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM838.java | 243 ----------
.../share/classes/sun/nio/cs/ext/IBM856.java | 288 ------------
.../share/classes/sun/nio/cs/ext/IBM860.java | 348 --------------
.../share/classes/sun/nio/cs/ext/IBM861.java | 369 ---------------
.../share/classes/sun/nio/cs/ext/IBM863.java | 373 ---------------
.../share/classes/sun/nio/cs/ext/IBM864.java | 342 --------------
.../share/classes/sun/nio/cs/ext/IBM865.java | 369 ---------------
.../share/classes/sun/nio/cs/ext/IBM868.java | 359 ---------------
.../share/classes/sun/nio/cs/ext/IBM869.java | 290 ------------
.../share/classes/sun/nio/cs/ext/IBM870.java | 244 ----------
.../share/classes/sun/nio/cs/ext/IBM871.java | 221 ---------
.../share/classes/sun/nio/cs/ext/IBM875.java | 258 -----------
.../share/classes/sun/nio/cs/ext/IBM918.java | 336 --------------
.../share/classes/sun/nio/cs/ext/IBM921.java | 266 -----------
.../share/classes/sun/nio/cs/ext/IBM922.java | 262 -----------
.../classes/sun/nio/cs/ext/ISO_8859_11.java | 215 ---------
.../classes/sun/nio/cs/ext/ISO_8859_3.java | 243 ----------
.../classes/sun/nio/cs/ext/ISO_8859_6.java | 246 ----------
.../classes/sun/nio/cs/ext/ISO_8859_8.java | 259 -----------
.../share/classes/sun/nio/cs/ext/MS1255.java | 333 --------------
.../share/classes/sun/nio/cs/ext/MS1256.java | 334 --------------
.../share/classes/sun/nio/cs/ext/MS1258.java | 340 --------------
.../share/classes/sun/nio/cs/ext/MS874.java | 267 -----------
.../classes/sun/nio/cs/ext/MacArabic.java | 279 -----------
.../sun/nio/cs/ext/MacCentralEurope.java | 346 --------------
.../classes/sun/nio/cs/ext/MacCroatian.java | 402 ----------------
.../classes/sun/nio/cs/ext/MacCyrillic.java | 361 ---------------
.../classes/sun/nio/cs/ext/MacDingbat.java | 316 -------------
.../classes/sun/nio/cs/ext/MacGreek.java | 327 -------------
.../classes/sun/nio/cs/ext/MacHebrew.java | 289 ------------
.../classes/sun/nio/cs/ext/MacIceland.java | 402 ----------------
.../classes/sun/nio/cs/ext/MacRoman.java | 434 ------------------
.../classes/sun/nio/cs/ext/MacRomania.java | 402 ----------------
.../classes/sun/nio/cs/ext/MacSymbol.java | 425 -----------------
.../share/classes/sun/nio/cs/ext/MacThai.java | 338 --------------
.../classes/sun/nio/cs/ext/MacTurkish.java | 402 ----------------
.../classes/sun/nio/cs/ext/MacUkraine.java | 361 ---------------
.../share/classes/sun/nio/cs/ext/TIS_620.java | 244 ----------
259 files changed, 25853 insertions(+), 27446 deletions(-)
create mode 100644 jdk/make/tools/CharsetMapping/IBM037.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM037.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM037.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM1006.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1025.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1025.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1025.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM1026.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1026.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1026.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM1046.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1047.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1097.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1098.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1112.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1112.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1112.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM1122.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1122.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1122.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM1123.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1123.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1123.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM1124.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1140.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1140.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1141.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1141.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1142.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1142.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1143.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1143.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1144.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1144.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1145.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1145.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1146.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1146.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1147.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1147.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1148.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1148.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM1149.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM1149.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM273.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM273.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM273.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM277.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM277.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM277.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM278.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM278.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM278.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM280.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM280.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM280.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM284.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM284.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM284.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM285.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM285.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM285.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM297.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM297.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM297.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM420.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM420.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM420.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM424.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM424.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM424.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM437.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM500.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM500.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM500.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM737.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM775.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM838.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM838.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM838.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM850.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM852.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM855.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM856.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM857.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM858.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM860.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM861.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM862.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM863.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM864.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM865.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM866.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM868.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM869.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM870.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM870.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM870.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM871.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM871.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM871.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM874.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM874.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM875.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM875.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM875.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM918.c2b
create mode 100644 jdk/make/tools/CharsetMapping/IBM918.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM918.nr
create mode 100644 jdk/make/tools/CharsetMapping/IBM921.map
create mode 100644 jdk/make/tools/CharsetMapping/IBM922.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_11.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_13.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_15.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_2.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_3.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_4.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_5.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_6.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_7.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_8.map
create mode 100644 jdk/make/tools/CharsetMapping/ISO_8859_9.map
create mode 100644 jdk/make/tools/CharsetMapping/JIS_X_0201.map
create mode 100644 jdk/make/tools/CharsetMapping/KOI8_R.map
create mode 100644 jdk/make/tools/CharsetMapping/KOI8_U.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1250.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1251.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1252.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1253.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1254.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1255.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1256.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1257.map
create mode 100644 jdk/make/tools/CharsetMapping/MS1258.map
create mode 100644 jdk/make/tools/CharsetMapping/MS874.map
create mode 100644 jdk/make/tools/CharsetMapping/MacArabic.map
create mode 100644 jdk/make/tools/CharsetMapping/MacCentralEurope.map
create mode 100644 jdk/make/tools/CharsetMapping/MacCroatian.map
create mode 100644 jdk/make/tools/CharsetMapping/MacCyrillic.map
create mode 100644 jdk/make/tools/CharsetMapping/MacDingbat.map
create mode 100644 jdk/make/tools/CharsetMapping/MacGreek.map
create mode 100644 jdk/make/tools/CharsetMapping/MacHebrew.map
create mode 100644 jdk/make/tools/CharsetMapping/MacIceland.map
create mode 100644 jdk/make/tools/CharsetMapping/MacRoman.map
create mode 100644 jdk/make/tools/CharsetMapping/MacRomania.map
create mode 100644 jdk/make/tools/CharsetMapping/MacSymbol.map
create mode 100644 jdk/make/tools/CharsetMapping/MacThai.map
create mode 100644 jdk/make/tools/CharsetMapping/MacTurkish.map
create mode 100644 jdk/make/tools/CharsetMapping/MacUkraine.map
create mode 100644 jdk/make/tools/CharsetMapping/SingleByte-X.java
create mode 100644 jdk/make/tools/CharsetMapping/TIS_620.map
create mode 100644 jdk/make/tools/CharsetMapping/extsbcs
create mode 100644 jdk/make/tools/CharsetMapping/sbcs
create mode 100644 jdk/make/tools/src/build/tools/charsetmapping/GenerateSBCS.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM437.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM737.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM775.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM850.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM852.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM855.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM857.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM858.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM862.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM866.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/IBM874.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ISO_8859_13.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ISO_8859_15.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ISO_8859_2.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ISO_8859_4.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ISO_8859_5.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ISO_8859_7.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ISO_8859_9.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/KOI8_R.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/KOI8_U.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/MS1250.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/MS1251.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/MS1252.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/MS1253.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/MS1254.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/MS1257.java
create mode 100644 jdk/src/share/classes/sun/nio/cs/SingleByte.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM037.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1006.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1025.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1026.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1046.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1047.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1097.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1098.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1112.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1122.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1123.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1124.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1140.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1141.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1142.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1143.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1144.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1145.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1146.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1147.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1148.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM1149.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM273.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM277.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM278.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM280.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM284.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM285.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM297.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM420.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM424.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM500.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM838.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM856.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM860.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM861.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM863.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM864.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM865.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM868.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM869.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM870.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM871.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM875.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM918.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM921.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/IBM922.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_11.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_3.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_6.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_8.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MS1255.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MS1256.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MS1258.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MS874.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacArabic.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacCentralEurope.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacCroatian.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacCyrillic.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacDingbat.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacGreek.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacHebrew.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacIceland.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacRoman.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacRomania.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacSymbol.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacThai.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacTurkish.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/MacUkraine.java
delete mode 100644 jdk/src/share/classes/sun/nio/cs/ext/TIS_620.java
diff --git a/jdk/make/java/nio/FILES_java.gmk b/jdk/make/java/nio/FILES_java.gmk
index 0e8c70906aa..29f1f8f42c4 100644
--- a/jdk/make/java/nio/FILES_java.gmk
+++ b/jdk/make/java/nio/FILES_java.gmk
@@ -113,8 +113,7 @@ FILES_src = \
sun/nio/cs/FastCharsetProvider.java \
sun/nio/cs/HistoricallyNamedCharset.java \
sun/nio/cs/ISO_8859_1.java \
- sun/nio/cs/ISO_8859_15.java \
- sun/nio/cs/MS1252.java \
+ sun/nio/cs/SingleByte.java \
sun/nio/cs/SingleByteDecoder.java \
sun/nio/cs/SingleByteEncoder.java \
sun/nio/cs/StreamEncoder.java \
@@ -268,6 +267,34 @@ FILES_gen_ex = \
java/nio/charset/IllegalCharsetNameException.java \
java/nio/charset/UnsupportedCharsetException.java
+FILES_gen_sbcs = \
+ sun/nio/cs/ISO_8859_2.java \
+ sun/nio/cs/ISO_8859_4.java \
+ sun/nio/cs/ISO_8859_5.java \
+ sun/nio/cs/ISO_8859_7.java \
+ sun/nio/cs/ISO_8859_9.java \
+ sun/nio/cs/ISO_8859_13.java \
+ sun/nio/cs/ISO_8859_15.java \
+ sun/nio/cs/IBM437.java \
+ sun/nio/cs/IBM737.java \
+ sun/nio/cs/IBM775.java \
+ sun/nio/cs/IBM850.java \
+ sun/nio/cs/IBM852.java \
+ sun/nio/cs/IBM855.java \
+ sun/nio/cs/IBM857.java \
+ sun/nio/cs/IBM858.java \
+ sun/nio/cs/IBM862.java \
+ sun/nio/cs/IBM866.java \
+ sun/nio/cs/IBM874.java \
+ sun/nio/cs/KOI8_R.java \
+ sun/nio/cs/KOI8_U.java \
+ sun/nio/cs/MS1250.java \
+ sun/nio/cs/MS1251.java \
+ sun/nio/cs/MS1252.java \
+ sun/nio/cs/MS1253.java \
+ sun/nio/cs/MS1254.java \
+ sun/nio/cs/MS1257.java
+
FILES_gen_csp = sun/nio/cs/StandardCharsets.java
FILES_gen_sor = sun/nio/ch/SocketOptionRegistry.java
@@ -275,4 +302,4 @@ FILES_gen_sor = sun/nio/ch/SocketOptionRegistry.java
FILES_gen = $(FILES_gen_coder) $(FILES_gen_buffer) $(FILES_gen_ex) \
$(FILES_gen_csp) $(FILES_gen_sor)
-FILES_java = $(FILES_src) $(FILES_gen)
+FILES_java = $(FILES_src) $(FILES_gen) $(FILES_gen_sbcs)
diff --git a/jdk/make/java/nio/Makefile b/jdk/make/java/nio/Makefile
index 26c2f2fc68d..bf7bc2e0236 100644
--- a/jdk/make/java/nio/Makefile
+++ b/jdk/make/java/nio/Makefile
@@ -182,7 +182,9 @@ CS_GEN=$(NIO_GEN)/charset
SCH_GEN=$(SNIO_GEN)/ch
SCS_GEN=$(SNIO_GEN)/cs
-sources: $(SPP_JARFILE) $(FILES_genout)
+FILES_gensbcs_out = $(FILES_gen_sbcs:%.java=$(GENSRCDIR)/%.java)
+
+sources: $(SPP_JARFILE) $(FILES_genout) $(FILES_gensbcs_out)
#
# Generated buffer classes
@@ -657,4 +659,15 @@ $(SCH_GEN)/SocketOptionRegistry.java: $(GENSOR_EXE)
NAWK="$(NAWK)" SH="$(SH)" $(SH) -e addNotices.sh $(SOR_COPYRIGHT_YEARS) > $@
$(GENSOR_EXE) >> $@
+#
+# Generated sun.nio.cs SingleByte classes
+#
+GENCSSRC = $(BUILDDIR)/tools/CharsetMapping
+CHARSETMAPPING_JARFILE = $(BUILDTOOLJARDIR)/charsetmapping.jar
+
+$(FILES_gensbcs_out): $(GENCSSRC)/SingleByte-X.java $(GENCSSRC)/sbcs
+ @$(prep-target)
+ $(BOOT_JAVA_CMD) -cp $(CHARSETMAPPING_JARFILE) build.tools.charsetmapping.GenerateSBCS \
+ $(GENCSSRC) $(SCS_GEN) sbcs
+
.PHONY: sources
diff --git a/jdk/make/sun/nio/FILES_java.gmk b/jdk/make/sun/nio/FILES_java.gmk
index 21a95a8cffd..250c8a812fe 100644
--- a/jdk/make/sun/nio/FILES_java.gmk
+++ b/jdk/make/sun/nio/FILES_java.gmk
@@ -29,7 +29,7 @@
# Core character converters are built from make/java/java.
#
-FILES_java = \
+FILES_src = \
sun/io/ByteToCharDoubleByte.java \
sun/io/ByteToCharDBCS_ASCII.java \
sun/io/ByteToCharDBCS_EBCDIC.java \
@@ -303,3 +303,77 @@ FILES_java = \
sun/io/CharToByteMacTurkish.java \
sun/io/CharToByteMacUkraine.java \
sun/io/CharToByteTIS620.java
+
+FILES_gen_extsbcs = \
+ sun/nio/cs/ext/IBM037.java \
+ sun/nio/cs/ext/IBM1006.java \
+ sun/nio/cs/ext/IBM1025.java \
+ sun/nio/cs/ext/IBM1026.java \
+ sun/nio/cs/ext/IBM1046.java \
+ sun/nio/cs/ext/IBM1047.java \
+ sun/nio/cs/ext/IBM1097.java \
+ sun/nio/cs/ext/IBM1098.java \
+ sun/nio/cs/ext/IBM1112.java \
+ sun/nio/cs/ext/IBM1122.java \
+ sun/nio/cs/ext/IBM1123.java \
+ sun/nio/cs/ext/IBM1124.java \
+ sun/nio/cs/ext/IBM1140.java \
+ sun/nio/cs/ext/IBM1141.java \
+ sun/nio/cs/ext/IBM1142.java \
+ sun/nio/cs/ext/IBM1143.java \
+ sun/nio/cs/ext/IBM1144.java \
+ sun/nio/cs/ext/IBM1145.java \
+ sun/nio/cs/ext/IBM1146.java \
+ sun/nio/cs/ext/IBM1147.java \
+ sun/nio/cs/ext/IBM1148.java \
+ sun/nio/cs/ext/IBM1149.java \
+ sun/nio/cs/ext/IBM273.java \
+ sun/nio/cs/ext/IBM277.java \
+ sun/nio/cs/ext/IBM278.java \
+ sun/nio/cs/ext/IBM280.java \
+ sun/nio/cs/ext/IBM284.java \
+ sun/nio/cs/ext/IBM285.java \
+ sun/nio/cs/ext/IBM297.java \
+ sun/nio/cs/ext/IBM420.java \
+ sun/nio/cs/ext/IBM424.java \
+ sun/nio/cs/ext/IBM500.java \
+ sun/nio/cs/ext/IBM838.java \
+ sun/nio/cs/ext/IBM856.java \
+ sun/nio/cs/ext/IBM860.java \
+ sun/nio/cs/ext/IBM861.java \
+ sun/nio/cs/ext/IBM863.java \
+ sun/nio/cs/ext/IBM864.java \
+ sun/nio/cs/ext/IBM865.java \
+ sun/nio/cs/ext/IBM868.java \
+ sun/nio/cs/ext/IBM869.java \
+ sun/nio/cs/ext/IBM870.java \
+ sun/nio/cs/ext/IBM871.java \
+ sun/nio/cs/ext/IBM875.java \
+ sun/nio/cs/ext/IBM918.java \
+ sun/nio/cs/ext/IBM921.java \
+ sun/nio/cs/ext/IBM922.java \
+ sun/nio/cs/ext/ISO_8859_11.java \
+ sun/nio/cs/ext/ISO_8859_3.java \
+ sun/nio/cs/ext/ISO_8859_6.java \
+ sun/nio/cs/ext/ISO_8859_8.java \
+ sun/nio/cs/ext/MS1255.java \
+ sun/nio/cs/ext/MS1256.java \
+ sun/nio/cs/ext/MS1258.java \
+ sun/nio/cs/ext/MS874.java \
+ sun/nio/cs/ext/MacArabic.java \
+ sun/nio/cs/ext/MacCentralEurope.java \
+ sun/nio/cs/ext/MacCroatian.java \
+ sun/nio/cs/ext/MacCyrillic.java \
+ sun/nio/cs/ext/MacDingbat.java \
+ sun/nio/cs/ext/MacGreek.java \
+ sun/nio/cs/ext/MacHebrew.java \
+ sun/nio/cs/ext/MacIceland.java \
+ sun/nio/cs/ext/MacRoman.java \
+ sun/nio/cs/ext/MacRomania.java \
+ sun/nio/cs/ext/MacSymbol.java \
+ sun/nio/cs/ext/MacThai.java \
+ sun/nio/cs/ext/MacTurkish.java \
+ sun/nio/cs/ext/MacUkraine.java \
+ sun/nio/cs/ext/TIS_620.java
+
+FILES_java = $(FILES_src) $(FILES_gen_extsbcs)
\ No newline at end of file
diff --git a/jdk/make/sun/nio/Makefile b/jdk/make/sun/nio/Makefile
index 8dd1f98ccfb..f149b8510ce 100644
--- a/jdk/make/sun/nio/Makefile
+++ b/jdk/make/sun/nio/Makefile
@@ -60,12 +60,15 @@ endif # PLATFORM
# this define is for the rule:
CHARSETS_JAR = $(LIBDIR)/charsets.jar
+# extsbcs
+FILES_genout_extsbcs = $(FILES_gen_extsbcs:%.java=$(GENSRCDIR)/%.java)
+
#
# Rules
#
include $(BUILDDIR)/common/Classes.gmk
-build: $(CHARSETS_JAR)
+build: $(FILES_genout_extsbcs) $(CHARSETS_JAR)
#
# Extra rules to build character converters.
@@ -74,6 +77,8 @@ SERVICE_DESCRIPTION = java.nio.charset.spi.CharsetProvider
SERVICE_DESCRIPTION_PATH = META-INF/services/$(SERVICE_DESCRIPTION)
GENCSDATASRC = $(BUILDDIR)/tools/CharsetMapping
+GENCSEXT = $(GENSRCDIR)/sun/nio/cs/ext
+
FILES_MAP = $(GENCSDATASRC)/sjis0213.map
FILES_DAT = $(CLASSDESTDIR)/sun/nio/cs/ext/sjis0213.dat
CHARSETMAPPING_JARFILE = $(BUILDTOOLJARDIR)/charsetmapping.jar
@@ -83,6 +88,15 @@ $(FILES_DAT): $(FILES_MAP)
$(BOOT_JAVA_CMD) -jar $(CHARSETMAPPING_JARFILE) \
$(FILES_MAP) $(FILES_DAT)
+
+$(FILES_genout_extsbcs): $(GENCSDATASRC)/SingleByte-X.java $(GENCSDATASRC)/extsbcs
+ @$(prep-target)
+ $(RM) -r $(GENCSEXT)
+ $(MKDIR) -p $(GENCSEXT)
+ $(BOOT_JAVA_CMD) -cp $(CHARSETMAPPING_JARFILE) build.tools.charsetmapping.GenerateSBCS \
+ $(GENCSDATASRC) $(GENCSEXT) extsbcs
+
+
$(CLASSDESTDIR)/$(SERVICE_DESCRIPTION_PATH): \
$(SHARE_SRC)/classes/sun/nio/cs/ext/$(SERVICE_DESCRIPTION_PATH)
$(install-file)
diff --git a/jdk/make/tools/CharsetMapping/IBM037.c2b b/jdk/make/tools/CharsetMapping/IBM037.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM037.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM037.map b/jdk/make/tools/CharsetMapping/IBM037.map
new file mode 100644
index 00000000000..f542aa42d29
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM037.map
@@ -0,0 +1,257 @@
+#Generated from IBM037.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00a2
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+0021
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+005e
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+005b
+0xbb U+005d
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM037.nr b/jdk/make/tools/CharsetMapping/IBM037.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM037.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM1006.map b/jdk/make/tools/CharsetMapping/IBM1006.map
new file mode 100644
index 00000000000..9ae5537d4b3
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1006.map
@@ -0,0 +1,257 @@
+#Generated from IBM1006.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+06f0
+0xa2 U+06f1
+0xa3 U+06f2
+0xa4 U+06f3
+0xa5 U+06f4
+0xa6 U+06f5
+0xa7 U+06f6
+0xa8 U+06f7
+0xa9 U+06f8
+0xaa U+06f9
+0xab U+060c
+0xac U+061b
+0xad U+00ad
+0xae U+061f
+0xaf U+fe81
+0xb0 U+fe8d
+0xb1 U+fe8e
+0xb2 U+f8fb
+0xb3 U+fe8f
+0xb4 U+fe91
+0xb5 U+fb56
+0xb6 U+fb58
+0xb7 U+fe93
+0xb8 U+fe95
+0xb9 U+fe97
+0xba U+fb66
+0xbb U+fb68
+0xbc U+fe99
+0xbd U+fe9b
+0xbe U+fe9d
+0xbf U+fe9f
+0xc0 U+fb7a
+0xc1 U+fb7c
+0xc2 U+fea1
+0xc3 U+fea3
+0xc4 U+fea5
+0xc5 U+fea7
+0xc6 U+fea9
+0xc7 U+fb88
+0xc8 U+feab
+0xc9 U+fead
+0xca U+fb8c
+0xcb U+feaf
+0xcc U+fb8a
+0xcd U+feb1
+0xce U+feb3
+0xcf U+feb5
+0xd0 U+feb7
+0xd1 U+feb9
+0xd2 U+febb
+0xd3 U+febd
+0xd4 U+febf
+0xd5 U+fec3
+0xd6 U+fec7
+0xd7 U+fec9
+0xd8 U+feca
+0xd9 U+fecb
+0xda U+fecc
+0xdb U+fecd
+0xdc U+fece
+0xdd U+fecf
+0xde U+fed0
+0xdf U+fed1
+0xe0 U+fed3
+0xe1 U+fed5
+0xe2 U+fed7
+0xe3 U+fb8e
+0xe4 U+fedb
+0xe5 U+fb92
+0xe6 U+fb94
+0xe7 U+fedd
+0xe8 U+fedf
+0xe9 U+fee0
+0xea U+fee1
+0xeb U+fee3
+0xec U+fb9e
+0xed U+fee5
+0xee U+fee7
+0xef U+fe85
+0xf0 U+feed
+0xf1 U+fba6
+0xf2 U+fba8
+0xf3 U+fba9
+0xf4 U+fbaa
+0xf5 U+fe80
+0xf6 U+fe89
+0xf7 U+fe8a
+0xf8 U+fe8b
+0xf9 U+fbfc
+0xfa U+fbfd
+0xfb U+fbfe
+0xfc U+fbb0
+0xfd U+fbae
+0xfe U+fe7c
+0xff U+fe7d
diff --git a/jdk/make/tools/CharsetMapping/IBM1025.c2b b/jdk/make/tools/CharsetMapping/IBM1025.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1025.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1025.map b/jdk/make/tools/CharsetMapping/IBM1025.map
new file mode 100644
index 00000000000..e56dbe08107
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1025.map
@@ -0,0 +1,257 @@
+#Generated from IBM1025.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+0452
+0x43 U+0453
+0x44 U+0451
+0x45 U+0454
+0x46 U+0455
+0x47 U+0456
+0x48 U+0457
+0x49 U+0458
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+0459
+0x52 U+045a
+0x53 U+045b
+0x54 U+045c
+0x55 U+045e
+0x56 U+045f
+0x57 U+042a
+0x58 U+2116
+0x59 U+0402
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+0403
+0x63 U+0401
+0x64 U+0404
+0x65 U+0405
+0x66 U+0406
+0x67 U+0407
+0x68 U+0408
+0x69 U+0409
+0x6a U+007c
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+040a
+0x71 U+040b
+0x72 U+040c
+0x73 U+00ad
+0x74 U+040e
+0x75 U+040f
+0x76 U+044e
+0x77 U+0430
+0x78 U+0431
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+0446
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+0434
+0x8b U+0435
+0x8c U+0444
+0x8d U+0433
+0x8e U+0445
+0x8f U+0438
+0x90 U+0439
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+043a
+0x9b U+043b
+0x9c U+043c
+0x9d U+043d
+0x9e U+043e
+0x9f U+043f
+0xa0 U+044f
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+0440
+0xab U+0441
+0xac U+0442
+0xad U+0443
+0xae U+0436
+0xaf U+0432
+0xb0 U+044c
+0xb1 U+044b
+0xb2 U+0437
+0xb3 U+0448
+0xb4 U+044d
+0xb5 U+0449
+0xb6 U+0447
+0xb7 U+044a
+0xb8 U+042e
+0xb9 U+0410
+0xba U+0411
+0xbb U+0426
+0xbc U+0414
+0xbd U+0415
+0xbe U+0424
+0xbf U+0413
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+0425
+0xcb U+0418
+0xcc U+0419
+0xcd U+041a
+0xce U+041b
+0xcf U+041c
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+041d
+0xdb U+041e
+0xdc U+041f
+0xdd U+042f
+0xde U+0420
+0xdf U+0421
+0xe0 U+005c
+0xe1 U+00a7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+0422
+0xeb U+0423
+0xec U+0416
+0xed U+0412
+0xee U+042c
+0xef U+042b
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+0417
+0xfb U+0428
+0xfc U+042d
+0xfd U+0429
+0xfe U+0427
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1025.nr b/jdk/make/tools/CharsetMapping/IBM1025.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1025.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM1026.c2b b/jdk/make/tools/CharsetMapping/IBM1026.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1026.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1026.map b/jdk/make/tools/CharsetMapping/IBM1026.map
new file mode 100644
index 00000000000..56fa74a05b3
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1026.map
@@ -0,0 +1,257 @@
+#Generated from IBM1026.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+007b
+0x49 U+00f1
+0x4a U+00c7
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+011e
+0x5b U+0130
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+005b
+0x69 U+00d1
+0x6a U+015f
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0131
+0x7a U+003a
+0x7b U+00d6
+0x7c U+015e
+0x7d U+0027
+0x7e U+003d
+0x7f U+00dc
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+007d
+0x8d U+0060
+0x8e U+00a6
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+00f6
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+005d
+0xad U+0024
+0xae U+0040
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e7
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+007e
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+011f
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+005c
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00fc
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+0023
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+0022
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1026.nr b/jdk/make/tools/CharsetMapping/IBM1026.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1026.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM1046.map b/jdk/make/tools/CharsetMapping/IBM1046.map
new file mode 100644
index 00000000000..28a25d772d0
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1046.map
@@ -0,0 +1,257 @@
+#Generated from IBM1046.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+fe88
+0x81 U+00d7
+0x82 U+00f7
+0x83 U+f8f6
+0x84 U+f8f5
+0x85 U+f8f4
+0x86 U+f8f7
+0x87 U+fe71
+0x88 U+0088
+0x89 U+25a0
+0x8a U+2502
+0x8b U+2500
+0x8c U+2510
+0x8d U+250c
+0x8e U+2514
+0x8f U+2518
+0x90 U+fe79
+0x91 U+fe7b
+0x92 U+fe7d
+0x93 U+fe7f
+0x94 U+fe77
+0x95 U+fe8a
+0x96 U+fef0
+0x97 U+fef3
+0x98 U+fef2
+0x99 U+fece
+0x9a U+fecf
+0x9b U+fed0
+0x9c U+fef6
+0x9d U+fef8
+0x9e U+fefa
+0x9f U+fefc
+0xa0 U+00a0
+0xa1 U+f8fa
+0xa2 U+f8f9
+0xa3 U+f8f8
+0xa4 U+00a4
+0xa5 U+f8fb
+0xa6 U+fe8b
+0xa7 U+fe91
+0xa8 U+fe97
+0xa9 U+fe9b
+0xaa U+fe9f
+0xab U+fea3
+0xac U+060c
+0xad U+00ad
+0xae U+fea7
+0xaf U+feb3
+0xb0 U+0660
+0xb1 U+0661
+0xb2 U+0662
+0xb3 U+0663
+0xb4 U+0664
+0xb5 U+0665
+0xb6 U+0666
+0xb7 U+0667
+0xb8 U+0668
+0xb9 U+0669
+0xba U+feb7
+0xbb U+061b
+0xbc U+febb
+0xbd U+febf
+0xbe U+feca
+0xbf U+061f
+0xc0 U+fecb
+0xc1 U+fe80
+0xc2 U+fe81
+0xc3 U+fe83
+0xc4 U+fe85
+0xc5 U+fe87
+0xc6 U+fe89
+0xc7 U+fe8d
+0xc8 U+fe8f
+0xc9 U+fe93
+0xca U+fe95
+0xcb U+fe99
+0xcc U+fe9d
+0xcd U+fea1
+0xce U+fea5
+0xcf U+fea9
+0xd0 U+feab
+0xd1 U+fead
+0xd2 U+feaf
+0xd3 U+feb1
+0xd4 U+feb5
+0xd5 U+feb9
+0xd6 U+febd
+0xd7 U+fec3
+0xd8 U+fec7
+0xd9 U+fec9
+0xda U+fecd
+0xdb U+fecc
+0xdc U+fe82
+0xdd U+fe84
+0xde U+fe8e
+0xdf U+fed3
+0xe0 U+0640
+0xe1 U+fed1
+0xe2 U+fed5
+0xe3 U+fed9
+0xe4 U+fedd
+0xe5 U+fee1
+0xe6 U+fee5
+0xe7 U+feeb
+0xe8 U+feed
+0xe9 U+feef
+0xea U+fef1
+0xeb U+fe70
+0xec U+fe72
+0xed U+fe74
+0xee U+fe76
+0xef U+fe78
+0xf0 U+fe7a
+0xf1 U+fe7c
+0xf2 U+fe7e
+0xf3 U+fed7
+0xf4 U+fedb
+0xf5 U+fedf
+0xf6 U+f8fc
+0xf7 U+fef5
+0xf8 U+fef7
+0xf9 U+fef9
+0xfa U+fefb
+0xfb U+fee3
+0xfc U+fee7
+0xfd U+feec
+0xfe U+fee9
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/IBM1047.map b/jdk/make/tools/CharsetMapping/IBM1047.map
new file mode 100644
index 00000000000..fcbae725c89
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1047.map
@@ -0,0 +1,257 @@
+#Generated from IBM1047.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+0085
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00a2
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+0021
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+005b
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00ac
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00dd
+0xbb U+00a8
+0xbc U+00af
+0xbd U+005d
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1097.map b/jdk/make/tools/CharsetMapping/IBM1097.map
new file mode 100644
index 00000000000..4bffa824c92
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1097.map
@@ -0,0 +1,257 @@
+#Generated from IBM1097.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+0085
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+060c
+0x43 U+064b
+0x44 U+fe81
+0x45 U+fe82
+0x46 U+f8fa
+0x47 U+fe8d
+0x48 U+fe8e
+0x49 U+f8fb
+0x4a U+00a4
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+fe80
+0x52 U+fe83
+0x53 U+fe84
+0x54 U+f8f9
+0x55 U+fe85
+0x56 U+fe8b
+0x57 U+fe8f
+0x58 U+fe91
+0x59 U+fb56
+0x5a U+0021
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+fb58
+0x63 U+fe95
+0x64 U+fe97
+0x65 U+fe99
+0x66 U+fe9b
+0x67 U+fe9d
+0x68 U+fe9f
+0x69 U+fb7a
+0x6a U+061b
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+fb7c
+0x71 U+fea1
+0x72 U+fea3
+0x73 U+fea5
+0x74 U+fea7
+0x75 U+fea9
+0x76 U+feab
+0x77 U+fead
+0x78 U+feaf
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+fb8a
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+feb1
+0x8d U+feb3
+0x8e U+feb5
+0x8f U+feb7
+0x90 U+feb9
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+febb
+0x9b U+febd
+0x9c U+febf
+0x9d U+fec1
+0x9e U+fec3
+0x9f U+fec5
+0xa0 U+fec7
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+fec9
+0xab U+feca
+0xac U+fecb
+0xad U+fecc
+0xae U+fecd
+0xaf U+fece
+0xb0 U+fecf
+0xb1 U+fed0
+0xb2 U+fed1
+0xb3 U+fed3
+0xb4 U+fed5
+0xb5 U+fed7
+0xb6 U+fb8e
+0xb7 U+fedb
+0xb8 U+fb92
+0xb9 U+fb94
+0xba U+005b
+0xbb U+005d
+0xbc U+fedd
+0xbd U+fedf
+0xbe U+fee1
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+fee3
+0xcc U+fee5
+0xcd U+fee7
+0xce U+feed
+0xcf U+fee9
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+feeb
+0xdb U+feec
+0xdc U+fba4
+0xdd U+fbfc
+0xde U+fbfd
+0xdf U+fbfe
+0xe0 U+005c
+0xe1 U+061f
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+0640
+0xeb U+06f0
+0xec U+06f1
+0xed U+06f2
+0xee U+06f3
+0xef U+06f4
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+06f5
+0xfb U+06f6
+0xfc U+06f7
+0xfd U+06f8
+0xfe U+06f9
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1098.map b/jdk/make/tools/CharsetMapping/IBM1098.map
new file mode 100644
index 00000000000..6996d6ab250
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1098.map
@@ -0,0 +1,257 @@
+#Generated from IBM1098.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+fffd
+0x81 U+fffd
+0x82 U+060c
+0x83 U+061b
+0x84 U+061f
+0x85 U+064b
+0x86 U+fe81
+0x87 U+fe82
+0x88 U+f8fa
+0x89 U+fe8d
+0x8a U+fe8e
+0x8b U+f8fb
+0x8c U+fe80
+0x8d U+fe83
+0x8e U+fe84
+0x8f U+f8f9
+0x90 U+fe85
+0x91 U+fe8b
+0x92 U+fe8f
+0x93 U+fe91
+0x94 U+fb56
+0x95 U+fb58
+0x96 U+fe95
+0x97 U+fe97
+0x98 U+fe99
+0x99 U+fe9b
+0x9a U+fe9d
+0x9b U+fe9f
+0x9c U+fb7a
+0x9d U+fb7c
+0x9e U+00d7
+0x9f U+fea1
+0xa0 U+fea3
+0xa1 U+fea5
+0xa2 U+fea7
+0xa3 U+fea9
+0xa4 U+feab
+0xa5 U+fead
+0xa6 U+feaf
+0xa7 U+fb8a
+0xa8 U+feb1
+0xa9 U+feb3
+0xaa U+feb5
+0xab U+feb7
+0xac U+feb9
+0xad U+febb
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+febd
+0xb6 U+febf
+0xb7 U+fec1
+0xb8 U+fec3
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+00a4
+0xbe U+fec5
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+fec7
+0xc7 U+fec9
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+fffd
+0xd0 U+feca
+0xd1 U+fecb
+0xd2 U+fecc
+0xd3 U+fecd
+0xd4 U+fece
+0xd5 U+fecf
+0xd6 U+fed0
+0xd7 U+fed1
+0xd8 U+fed3
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+fed5
+0xde U+fed7
+0xdf U+2580
+0xe0 U+fb8e
+0xe1 U+fedb
+0xe2 U+fb92
+0xe3 U+fb94
+0xe4 U+fedd
+0xe5 U+fedf
+0xe6 U+fee1
+0xe7 U+fee3
+0xe8 U+fee5
+0xe9 U+fee7
+0xea U+feed
+0xeb U+fee9
+0xec U+feeb
+0xed U+feec
+0xee U+fba4
+0xef U+fbfc
+0xf0 U+00ad
+0xf1 U+fbfd
+0xf2 U+fbfe
+0xf3 U+0640
+0xf4 U+06f0
+0xf5 U+06f1
+0xf6 U+06f2
+0xf7 U+06f3
+0xf8 U+06f4
+0xf9 U+06f5
+0xfa U+06f6
+0xfb U+06f7
+0xfc U+06f8
+0xfd U+06f9
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM1112.c2b b/jdk/make/tools/CharsetMapping/IBM1112.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1112.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1112.map b/jdk/make/tools/CharsetMapping/IBM1112.map
new file mode 100644
index 00000000000..2439ea21c92
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1112.map
@@ -0,0 +1,257 @@
+#Generated from IBM1112.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+0161
+0x43 U+00e4
+0x44 U+0105
+0x45 U+012f
+0x46 U+016b
+0x47 U+00e5
+0x48 U+0113
+0x49 U+017e
+0x4a U+00a2
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+00e9
+0x52 U+0119
+0x53 U+0117
+0x54 U+010d
+0x55 U+0173
+0x56 U+201e
+0x57 U+201c
+0x58 U+0123
+0x59 U+00df
+0x5a U+0021
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+0160
+0x63 U+00c4
+0x64 U+0104
+0x65 U+012e
+0x66 U+016a
+0x67 U+00c5
+0x68 U+0112
+0x69 U+017d
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+0118
+0x73 U+0116
+0x74 U+010c
+0x75 U+0172
+0x76 U+012a
+0x77 U+013b
+0x78 U+0122
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+0101
+0x8d U+017c
+0x8e U+0144
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+0156
+0x9b U+0157
+0x9c U+00e6
+0x9d U+0137
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+201d
+0xab U+017a
+0xac U+0100
+0xad U+017b
+0xae U+0143
+0xaf U+00ae
+0xb0 U+005e
+0xb1 U+00a3
+0xb2 U+012b
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+005b
+0xbb U+005d
+0xbc U+0179
+0xbd U+0136
+0xbe U+013c
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+014d
+0xcc U+00f6
+0xcd U+0146
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+0107
+0xdc U+00fc
+0xdd U+0142
+0xde U+015b
+0xdf U+2019
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+014c
+0xec U+00d6
+0xed U+0145
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+0106
+0xfc U+00dc
+0xfd U+0141
+0xfe U+015a
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1112.nr b/jdk/make/tools/CharsetMapping/IBM1112.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1112.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM1122.c2b b/jdk/make/tools/CharsetMapping/IBM1122.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1122.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1122.map b/jdk/make/tools/CharsetMapping/IBM1122.map
new file mode 100644
index 00000000000..3dfb45f0de5
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1122.map
@@ -0,0 +1,257 @@
+#Generated from IBM1122.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+007b
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+007d
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00a7
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+0060
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+00a4
+0x5b U+00c5
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+0023
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+0024
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+005c
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00e9
+0x7a U+003a
+0x7b U+00c4
+0x7c U+00d6
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+0161
+0x8d U+00fd
+0x8e U+017e
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+005d
+0xa0 U+00b5
+0xa1 U+00fc
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+0160
+0xad U+00dd
+0xae U+017d
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+005b
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+203e
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e4
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00a6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e5
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+007e
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00c9
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+0040
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1122.nr b/jdk/make/tools/CharsetMapping/IBM1122.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1122.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM1123.c2b b/jdk/make/tools/CharsetMapping/IBM1123.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1123.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1123.map b/jdk/make/tools/CharsetMapping/IBM1123.map
new file mode 100644
index 00000000000..16857071ab8
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1123.map
@@ -0,0 +1,257 @@
+#Generated from IBM1123.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+0452
+0x43 U+0491
+0x44 U+0451
+0x45 U+0454
+0x46 U+0455
+0x47 U+0456
+0x48 U+0457
+0x49 U+0458
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+0459
+0x52 U+045a
+0x53 U+045b
+0x54 U+045c
+0x55 U+045e
+0x56 U+045f
+0x57 U+042a
+0x58 U+2116
+0x59 U+0402
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+0490
+0x63 U+0401
+0x64 U+0404
+0x65 U+0405
+0x66 U+0406
+0x67 U+0407
+0x68 U+0408
+0x69 U+0409
+0x6a U+007c
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+040a
+0x71 U+040b
+0x72 U+040c
+0x73 U+00ad
+0x74 U+040e
+0x75 U+040f
+0x76 U+044e
+0x77 U+0430
+0x78 U+0431
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+0446
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+0434
+0x8b U+0435
+0x8c U+0444
+0x8d U+0433
+0x8e U+0445
+0x8f U+0438
+0x90 U+0439
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+043a
+0x9b U+043b
+0x9c U+043c
+0x9d U+043d
+0x9e U+043e
+0x9f U+043f
+0xa0 U+044f
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+0440
+0xab U+0441
+0xac U+0442
+0xad U+0443
+0xae U+0436
+0xaf U+0432
+0xb0 U+044c
+0xb1 U+044b
+0xb2 U+0437
+0xb3 U+0448
+0xb4 U+044d
+0xb5 U+0449
+0xb6 U+0447
+0xb7 U+044a
+0xb8 U+042e
+0xb9 U+0410
+0xba U+0411
+0xbb U+0426
+0xbc U+0414
+0xbd U+0415
+0xbe U+0424
+0xbf U+0413
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+0425
+0xcb U+0418
+0xcc U+0419
+0xcd U+041a
+0xce U+041b
+0xcf U+041c
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+041d
+0xdb U+041e
+0xdc U+041f
+0xdd U+042f
+0xde U+0420
+0xdf U+0421
+0xe0 U+005c
+0xe1 U+00a7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+0422
+0xeb U+0423
+0xec U+0416
+0xed U+0412
+0xee U+042c
+0xef U+042b
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+0417
+0xfb U+0428
+0xfc U+042d
+0xfd U+0429
+0xfe U+0427
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1123.nr b/jdk/make/tools/CharsetMapping/IBM1123.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1123.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM1124.map b/jdk/make/tools/CharsetMapping/IBM1124.map
new file mode 100644
index 00000000000..4cca8021b11
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1124.map
@@ -0,0 +1,257 @@
+#Generated from IBM1124.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+0401
+0xa2 U+0402
+0xa3 U+0490
+0xa4 U+0404
+0xa5 U+0405
+0xa6 U+0406
+0xa7 U+0407
+0xa8 U+0408
+0xa9 U+0409
+0xaa U+040a
+0xab U+040b
+0xac U+040c
+0xad U+00ad
+0xae U+040e
+0xaf U+040f
+0xb0 U+0410
+0xb1 U+0411
+0xb2 U+0412
+0xb3 U+0413
+0xb4 U+0414
+0xb5 U+0415
+0xb6 U+0416
+0xb7 U+0417
+0xb8 U+0418
+0xb9 U+0419
+0xba U+041a
+0xbb U+041b
+0xbc U+041c
+0xbd U+041d
+0xbe U+041e
+0xbf U+041f
+0xc0 U+0420
+0xc1 U+0421
+0xc2 U+0422
+0xc3 U+0423
+0xc4 U+0424
+0xc5 U+0425
+0xc6 U+0426
+0xc7 U+0427
+0xc8 U+0428
+0xc9 U+0429
+0xca U+042a
+0xcb U+042b
+0xcc U+042c
+0xcd U+042d
+0xce U+042e
+0xcf U+042f
+0xd0 U+0430
+0xd1 U+0431
+0xd2 U+0432
+0xd3 U+0433
+0xd4 U+0434
+0xd5 U+0435
+0xd6 U+0436
+0xd7 U+0437
+0xd8 U+0438
+0xd9 U+0439
+0xda U+043a
+0xdb U+043b
+0xdc U+043c
+0xdd U+043d
+0xde U+043e
+0xdf U+043f
+0xe0 U+0440
+0xe1 U+0441
+0xe2 U+0442
+0xe3 U+0443
+0xe4 U+0444
+0xe5 U+0445
+0xe6 U+0446
+0xe7 U+0447
+0xe8 U+0448
+0xe9 U+0449
+0xea U+044a
+0xeb U+044b
+0xec U+044c
+0xed U+044d
+0xee U+044e
+0xef U+044f
+0xf0 U+2116
+0xf1 U+0451
+0xf2 U+0452
+0xf3 U+0491
+0xf4 U+0454
+0xf5 U+0455
+0xf6 U+0456
+0xf7 U+0457
+0xf8 U+0458
+0xf9 U+0459
+0xfa U+045a
+0xfb U+045b
+0xfc U+045c
+0xfd U+00a7
+0xfe U+045e
+0xff U+045f
diff --git a/jdk/make/tools/CharsetMapping/IBM1140.c2b b/jdk/make/tools/CharsetMapping/IBM1140.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1140.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1140.map b/jdk/make/tools/CharsetMapping/IBM1140.map
new file mode 100644
index 00000000000..6a79f6cba5a
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1140.map
@@ -0,0 +1,257 @@
+#Generated from IBM037.java with 0x9f <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00a2
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+0021
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+20ac
+0xa0 U+00b5
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+005e
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+005b
+0xbb U+005d
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1141.c2b b/jdk/make/tools/CharsetMapping/IBM1141.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1141.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1141.map b/jdk/make/tools/CharsetMapping/IBM1141.map
new file mode 100644
index 00000000000..b524b109f2b
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1141.map
@@ -0,0 +1,257 @@
+#Generated from IBM273.java with 0x9f <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+007b
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00c4
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+007e
+0x5a U+00dc
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+005b
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+00a7
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+20ac
+0xa0 U+00b5
+0xa1 U+00df
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+0040
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e4
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00a6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00fc
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+007d
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00d6
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+005c
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+005d
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1142.c2b b/jdk/make/tools/CharsetMapping/IBM1142.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1142.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1142.map b/jdk/make/tools/CharsetMapping/IBM1142.map
new file mode 100644
index 00000000000..8ebdb3b5d6a
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1142.map
@@ -0,0 +1,257 @@
+#Generated from IBM277.java with 0x5a <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+007d
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+0023
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+20ac
+0x5b U+00c5
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+0024
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f8
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00a6
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+00c6
+0x7c U+00d8
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+0040
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+007b
+0x9d U+00b8
+0x9e U+005b
+0x9f U+005d
+0xa0 U+00b5
+0xa1 U+00fc
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e6
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e5
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+007e
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1143.c2b b/jdk/make/tools/CharsetMapping/IBM1143.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1143.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1143.map b/jdk/make/tools/CharsetMapping/IBM1143.map
new file mode 100644
index 00000000000..3bac32ae83e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1143.map
@@ -0,0 +1,257 @@
+#Generated from IBM278.java with 0x5a <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+007b
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+007d
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00a7
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+0060
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+20ac
+0x5b U+00c5
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+0023
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+0024
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+005c
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00e9
+0x7a U+003a
+0x7b U+00c4
+0x7c U+00d6
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+005d
+0xa0 U+00b5
+0xa1 U+00fc
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+005b
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e4
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00a6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e5
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+007e
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00c9
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+0040
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1144.c2b b/jdk/make/tools/CharsetMapping/IBM1144.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1144.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1144.map b/jdk/make/tools/CharsetMapping/IBM1144.map
new file mode 100644
index 00000000000..6c1ea6e5776
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1144.map
@@ -0,0 +1,257 @@
+#Generated from IBM280.java with 0x9f <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+007b
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+005c
+0x49 U+00f1
+0x4a U+00b0
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+005d
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+007d
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+007e
+0x59 U+00df
+0x5a U+00e9
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f2
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00f9
+0x7a U+003a
+0x7b U+00a3
+0x7c U+00a7
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+005b
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+20ac
+0xa0 U+00b5
+0xa1 U+00ec
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+0023
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+0040
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e0
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00a6
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e8
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+0060
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00e7
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1145.c2b b/jdk/make/tools/CharsetMapping/IBM1145.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1145.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1145.map b/jdk/make/tools/CharsetMapping/IBM1145.map
new file mode 100644
index 00000000000..e009383b3d0
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1145.map
@@ -0,0 +1,257 @@
+#Generated from IBM284.java with 0x9f <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00a6
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+0023
+0x6a U+00f1
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+00d1
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+20ac
+0xa0 U+00b5
+0xa1 U+00a8
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+005e
+0xbb U+0021
+0xbc U+00af
+0xbd U+007e
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1146.c2b b/jdk/make/tools/CharsetMapping/IBM1146.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1146.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1146.map b/jdk/make/tools/CharsetMapping/IBM1146.map
new file mode 100644
index 00000000000..8ce57843f40
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1146.map
@@ -0,0 +1,257 @@
+#Generated from IBM285.java with 0x9f <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+0024
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+0021
+0x5b U+00a3
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+20ac
+0xa0 U+00b5
+0xa1 U+00af
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+005b
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+005e
+0xbb U+005d
+0xbc U+007e
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1147.c2b b/jdk/make/tools/CharsetMapping/IBM1147.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1147.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1147.map b/jdk/make/tools/CharsetMapping/IBM1147.map
new file mode 100644
index 00000000000..415628a435b
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1147.map
@@ -0,0 +1,257 @@
+#Generated from IBM297.java 0x9f <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+0040
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+005c
+0x49 U+00f1
+0x4a U+00b0
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+007b
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+007d
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+00a7
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f9
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00b5
+0x7a U+003a
+0x7b U+00a3
+0x7c U+00e0
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+005b
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+20ac
+0xa0 U+0060
+0xa1 U+00a8
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+0023
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+005d
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+007e
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e9
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e8
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00a6
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00e7
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1148.c2b b/jdk/make/tools/CharsetMapping/IBM1148.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1148.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1148.map b/jdk/make/tools/CharsetMapping/IBM1148.map
new file mode 100644
index 00000000000..3f58284847c
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1148.map
@@ -0,0 +1,257 @@
+#Generated from IBM500.java 0x9f <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+20ac
+0xa0 U+00b5
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM1149.c2b b/jdk/make/tools/CharsetMapping/IBM1149.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1149.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM1149.map b/jdk/make/tools/CharsetMapping/IBM1149.map
new file mode 100644
index 00000000000..8d452004860
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM1149.map
@@ -0,0 +1,257 @@
+#Generated from IBM871.java 0x9f <-> u+20ac
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00de
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+00c6
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00d6
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00f0
+0x7a U+003a
+0x7b U+0023
+0x7c U+00d0
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+0060
+0x8d U+00fd
+0x8e U+007b
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+007d
+0x9d U+00b8
+0x9e U+005d
+0x9f U+20ac
+0xa0 U+00b5
+0xa1 U+00f6
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+0040
+0xad U+00dd
+0xae U+005b
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+005c
+0xbf U+00d7
+0xc0 U+00fe
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+007e
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e6
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00b4
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+005e
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM273.c2b b/jdk/make/tools/CharsetMapping/IBM273.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM273.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM273.map b/jdk/make/tools/CharsetMapping/IBM273.map
new file mode 100644
index 00000000000..690858d0263
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM273.map
@@ -0,0 +1,257 @@
+#Generated from IBM273.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+007b
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00c4
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+007e
+0x5a U+00dc
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+005b
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+00a7
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+00df
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+0040
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e4
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00a6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00fc
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+007d
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00d6
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+005c
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+005d
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM273.nr b/jdk/make/tools/CharsetMapping/IBM273.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM273.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM277.c2b b/jdk/make/tools/CharsetMapping/IBM277.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM277.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM277.map b/jdk/make/tools/CharsetMapping/IBM277.map
new file mode 100644
index 00000000000..957f516c3a5
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM277.map
@@ -0,0 +1,257 @@
+#Generated from IBM277.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+007d
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+0023
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+00a4
+0x5b U+00c5
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+0024
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f8
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00a6
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+00c6
+0x7c U+00d8
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+0040
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+007b
+0x9d U+00b8
+0x9e U+005b
+0x9f U+005d
+0xa0 U+00b5
+0xa1 U+00fc
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e6
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e5
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+007e
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM277.nr b/jdk/make/tools/CharsetMapping/IBM277.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM277.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM278.c2b b/jdk/make/tools/CharsetMapping/IBM278.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM278.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM278.map b/jdk/make/tools/CharsetMapping/IBM278.map
new file mode 100644
index 00000000000..51eac1ffa4d
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM278.map
@@ -0,0 +1,257 @@
+#Generated from IBM278.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+007b
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+007d
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00a7
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+0060
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+00a4
+0x5b U+00c5
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+0023
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+0024
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+005c
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00e9
+0x7a U+003a
+0x7b U+00c4
+0x7c U+00d6
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+005d
+0xa0 U+00b5
+0xa1 U+00fc
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+005b
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e4
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00a6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e5
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+007e
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00c9
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+0040
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM278.nr b/jdk/make/tools/CharsetMapping/IBM278.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM278.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM280.c2b b/jdk/make/tools/CharsetMapping/IBM280.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM280.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM280.map b/jdk/make/tools/CharsetMapping/IBM280.map
new file mode 100644
index 00000000000..77fe94f5e8c
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM280.map
@@ -0,0 +1,257 @@
+#Generated from IBM280.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+007b
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+005c
+0x49 U+00f1
+0x4a U+00b0
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+005d
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+007d
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+007e
+0x59 U+00df
+0x5a U+00e9
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f2
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00f9
+0x7a U+003a
+0x7b U+00a3
+0x7c U+00a7
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+005b
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+00ec
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+0023
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+0040
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e0
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00a6
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e8
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+0060
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00e7
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM280.nr b/jdk/make/tools/CharsetMapping/IBM280.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM280.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM284.c2b b/jdk/make/tools/CharsetMapping/IBM284.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM284.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM284.map b/jdk/make/tools/CharsetMapping/IBM284.map
new file mode 100644
index 00000000000..c3be08c8475
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM284.map
@@ -0,0 +1,257 @@
+#Generated from IBM284.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00a6
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+0023
+0x6a U+00f1
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+00d1
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+00a8
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+005e
+0xbb U+0021
+0xbc U+00af
+0xbd U+007e
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM284.nr b/jdk/make/tools/CharsetMapping/IBM284.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM284.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM285.c2b b/jdk/make/tools/CharsetMapping/IBM285.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM285.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM285.map b/jdk/make/tools/CharsetMapping/IBM285.map
new file mode 100644
index 00000000000..3fca86cd558
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM285.map
@@ -0,0 +1,257 @@
+#Generated from IBM285.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+0024
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+0021
+0x5b U+00a3
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+00af
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+005b
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+005e
+0xbb U+005d
+0xbc U+007e
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM285.nr b/jdk/make/tools/CharsetMapping/IBM285.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM285.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM297.c2b b/jdk/make/tools/CharsetMapping/IBM297.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM297.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM297.map b/jdk/make/tools/CharsetMapping/IBM297.map
new file mode 100644
index 00000000000..148087df03b
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM297.map
@@ -0,0 +1,257 @@
+#Generated from IBM297.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+0040
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+005c
+0x49 U+00f1
+0x4a U+00b0
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+007b
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+007d
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+00a7
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00f9
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00b5
+0x7a U+003a
+0x7b U+00a3
+0x7c U+00e0
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+005b
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+0060
+0xa1 U+00a8
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+0023
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+005d
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+007e
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+00e9
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e8
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00a6
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00e7
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM297.nr b/jdk/make/tools/CharsetMapping/IBM297.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM297.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM420.c2b b/jdk/make/tools/CharsetMapping/IBM420.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM420.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM420.map b/jdk/make/tools/CharsetMapping/IBM420.map
new file mode 100644
index 00000000000..d4ce19249b3
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM420.map
@@ -0,0 +1,257 @@
+#Generated from IBM420.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+fe7c
+0x43 U+fe7d
+0x44 U+0640
+0x45 U+f8fc
+0x46 U+fe80
+0x47 U+fe81
+0x48 U+fe82
+0x49 U+fe83
+0x4a U+00a2
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+fe84
+0x52 U+fe85
+0x53 U+fffd
+0x54 U+fffd
+0x55 U+fe8b
+0x56 U+fe8d
+0x57 U+fe8e
+0x58 U+fe8f
+0x59 U+fe91
+0x5a U+0021
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+fe93
+0x63 U+fe95
+0x64 U+fe97
+0x65 U+fe99
+0x66 U+fe9b
+0x67 U+fe9d
+0x68 U+fe9f
+0x69 U+fea1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+fea3
+0x71 U+fea5
+0x72 U+fea7
+0x73 U+fea9
+0x74 U+feab
+0x75 U+fead
+0x76 U+feaf
+0x77 U+f8f6
+0x78 U+feb3
+0x79 U+060c
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+f8f5
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+feb7
+0x8b U+f8f4
+0x8c U+febb
+0x8d U+f8f7
+0x8e U+febf
+0x8f U+fec3
+0x90 U+fec7
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+fec9
+0x9b U+feca
+0x9c U+fecb
+0x9d U+fecc
+0x9e U+fecd
+0x9f U+fece
+0xa0 U+fecf
+0xa1 U+00f7
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+fed0
+0xab U+fed1
+0xac U+fed3
+0xad U+fed5
+0xae U+fed7
+0xaf U+fed9
+0xb0 U+fedb
+0xb1 U+fedd
+0xb2 U+fef5
+0xb3 U+fef6
+0xb4 U+fef7
+0xb5 U+fef8
+0xb6 U+fffd
+0xb7 U+fffd
+0xb8 U+fefb
+0xb9 U+fefc
+0xba U+fedf
+0xbb U+fee1
+0xbc U+fee3
+0xbd U+fee5
+0xbe U+fee7
+0xbf U+fee9
+0xc0 U+061b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+feeb
+0xcc U+fffd
+0xcd U+feec
+0xce U+fffd
+0xcf U+feed
+0xd0 U+061f
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+feef
+0xdb U+fef0
+0xdc U+fef1
+0xdd U+fef2
+0xde U+fef3
+0xdf U+0660
+0xe0 U+00d7
+0xe1 U+2007
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+0661
+0xeb U+0662
+0xec U+fffd
+0xed U+0663
+0xee U+0664
+0xef U+0665
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+fffd
+0xfb U+0666
+0xfc U+0667
+0xfd U+0668
+0xfe U+0669
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM420.nr b/jdk/make/tools/CharsetMapping/IBM420.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM420.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM424.c2b b/jdk/make/tools/CharsetMapping/IBM424.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM424.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM424.map b/jdk/make/tools/CharsetMapping/IBM424.map
new file mode 100644
index 00000000000..da580c5d232
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM424.map
@@ -0,0 +1,257 @@
+#Generated from IBM424.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+05d0
+0x42 U+05d1
+0x43 U+05d2
+0x44 U+05d3
+0x45 U+05d4
+0x46 U+05d5
+0x47 U+05d6
+0x48 U+05d7
+0x49 U+05d8
+0x4a U+00a2
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+05d9
+0x52 U+05da
+0x53 U+05db
+0x54 U+05dc
+0x55 U+05dd
+0x56 U+05de
+0x57 U+05df
+0x58 U+05e0
+0x59 U+05e1
+0x5a U+0021
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+05e2
+0x63 U+05e3
+0x64 U+05e4
+0x65 U+05e5
+0x66 U+05e6
+0x67 U+05e7
+0x68 U+05e8
+0x69 U+05e9
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+fffd
+0x71 U+05ea
+0x72 U+fffd
+0x73 U+fffd
+0x74 U+00a0
+0x75 U+fffd
+0x76 U+fffd
+0x77 U+fffd
+0x78 U+2017
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+fffd
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+fffd
+0x9b U+fffd
+0x9c U+fffd
+0x9d U+00b8
+0x9e U+fffd
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+fffd
+0xab U+fffd
+0xac U+fffd
+0xad U+fffd
+0xae U+fffd
+0xaf U+00ae
+0xb0 U+005e
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+2022
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+005b
+0xbb U+005d
+0xbc U+203e
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+fffd
+0xcc U+fffd
+0xcd U+fffd
+0xce U+fffd
+0xcf U+fffd
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+fffd
+0xdc U+fffd
+0xdd U+fffd
+0xde U+fffd
+0xdf U+fffd
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+fffd
+0xec U+fffd
+0xed U+fffd
+0xee U+fffd
+0xef U+fffd
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+fffd
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM424.nr b/jdk/make/tools/CharsetMapping/IBM424.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM424.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM437.map b/jdk/make/tools/CharsetMapping/IBM437.map
new file mode 100644
index 00000000000..2ef0f79cd3b
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM437.map
@@ -0,0 +1,257 @@
+#Generated from IBM437.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00e4
+0x85 U+00e0
+0x86 U+00e5
+0x87 U+00e7
+0x88 U+00ea
+0x89 U+00eb
+0x8a U+00e8
+0x8b U+00ef
+0x8c U+00ee
+0x8d U+00ec
+0x8e U+00c4
+0x8f U+00c5
+0x90 U+00c9
+0x91 U+00e6
+0x92 U+00c6
+0x93 U+00f4
+0x94 U+00f6
+0x95 U+00f2
+0x96 U+00fb
+0x97 U+00f9
+0x98 U+00ff
+0x99 U+00d6
+0x9a U+00dc
+0x9b U+00a2
+0x9c U+00a3
+0x9d U+00a5
+0x9e U+20a7
+0x9f U+0192
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00f1
+0xa5 U+00d1
+0xa6 U+00aa
+0xa7 U+00ba
+0xa8 U+00bf
+0xa9 U+2310
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00a1
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+2561
+0xb6 U+2562
+0xb7 U+2556
+0xb8 U+2555
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+255c
+0xbe U+255b
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+255e
+0xc7 U+255f
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+2567
+0xd0 U+2568
+0xd1 U+2564
+0xd2 U+2565
+0xd3 U+2559
+0xd4 U+2558
+0xd5 U+2552
+0xd6 U+2553
+0xd7 U+256b
+0xd8 U+256a
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+03b1
+0xe1 U+00df
+0xe2 U+0393
+0xe3 U+03c0
+0xe4 U+03a3
+0xe5 U+03c3
+0xe6 U+00b5
+0xe7 U+03c4
+0xe8 U+03a6
+0xe9 U+0398
+0xea U+03a9
+0xeb U+03b4
+0xec U+221e
+0xed U+03c6
+0xee U+03b5
+0xef U+2229
+0xf0 U+2261
+0xf1 U+00b1
+0xf2 U+2265
+0xf3 U+2264
+0xf4 U+2320
+0xf5 U+2321
+0xf6 U+00f7
+0xf7 U+2248
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+221a
+0xfc U+207f
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM500.c2b b/jdk/make/tools/CharsetMapping/IBM500.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM500.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM500.map b/jdk/make/tools/CharsetMapping/IBM500.map
new file mode 100644
index 00000000000..31d11e2d10e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM500.map
@@ -0,0 +1,257 @@
+#Generated from IBM500.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+00f0
+0x8d U+00fd
+0x8e U+00fe
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+00e6
+0x9d U+00b8
+0x9e U+00c6
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+00d0
+0xad U+00dd
+0xae U+00de
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+00d6
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM500.nr b/jdk/make/tools/CharsetMapping/IBM500.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM500.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM737.map b/jdk/make/tools/CharsetMapping/IBM737.map
new file mode 100644
index 00000000000..c171b421f4e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM737.map
@@ -0,0 +1,257 @@
+#Generated from IBM737.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0391
+0x81 U+0392
+0x82 U+0393
+0x83 U+0394
+0x84 U+0395
+0x85 U+0396
+0x86 U+0397
+0x87 U+0398
+0x88 U+0399
+0x89 U+039a
+0x8a U+039b
+0x8b U+039c
+0x8c U+039d
+0x8d U+039e
+0x8e U+039f
+0x8f U+03a0
+0x90 U+03a1
+0x91 U+03a3
+0x92 U+03a4
+0x93 U+03a5
+0x94 U+03a6
+0x95 U+03a7
+0x96 U+03a8
+0x97 U+03a9
+0x98 U+03b1
+0x99 U+03b2
+0x9a U+03b3
+0x9b U+03b4
+0x9c U+03b5
+0x9d U+03b6
+0x9e U+03b7
+0x9f U+03b8
+0xa0 U+03b9
+0xa1 U+03ba
+0xa2 U+03bb
+0xa3 U+03bc
+0xa4 U+03bd
+0xa5 U+03be
+0xa6 U+03bf
+0xa7 U+03c0
+0xa8 U+03c1
+0xa9 U+03c3
+0xaa U+03c2
+0xab U+03c4
+0xac U+03c5
+0xad U+03c6
+0xae U+03c7
+0xaf U+03c8
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+2561
+0xb6 U+2562
+0xb7 U+2556
+0xb8 U+2555
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+255c
+0xbe U+255b
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+255e
+0xc7 U+255f
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+2567
+0xd0 U+2568
+0xd1 U+2564
+0xd2 U+2565
+0xd3 U+2559
+0xd4 U+2558
+0xd5 U+2552
+0xd6 U+2553
+0xd7 U+256b
+0xd8 U+256a
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+03c9
+0xe1 U+03ac
+0xe2 U+03ad
+0xe3 U+03ae
+0xe4 U+03ca
+0xe5 U+03af
+0xe6 U+03cc
+0xe7 U+03cd
+0xe8 U+03cb
+0xe9 U+03ce
+0xea U+0386
+0xeb U+0388
+0xec U+0389
+0xed U+038a
+0xee U+038c
+0xef U+038e
+0xf0 U+038f
+0xf1 U+00b1
+0xf2 U+2265
+0xf3 U+2264
+0xf4 U+03aa
+0xf5 U+03ab
+0xf6 U+00f7
+0xf7 U+2248
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+221a
+0xfc U+207f
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM775.map b/jdk/make/tools/CharsetMapping/IBM775.map
new file mode 100644
index 00000000000..a023d0e1bf1
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM775.map
@@ -0,0 +1,257 @@
+#Generated from IBM775.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0106
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+0101
+0x84 U+00e4
+0x85 U+0123
+0x86 U+00e5
+0x87 U+0107
+0x88 U+0142
+0x89 U+0113
+0x8a U+0156
+0x8b U+0157
+0x8c U+012b
+0x8d U+0179
+0x8e U+00c4
+0x8f U+00c5
+0x90 U+00c9
+0x91 U+00e6
+0x92 U+00c6
+0x93 U+014d
+0x94 U+00f6
+0x95 U+0122
+0x96 U+00a2
+0x97 U+015a
+0x98 U+015b
+0x99 U+00d6
+0x9a U+00dc
+0x9b U+00f8
+0x9c U+00a3
+0x9d U+00d8
+0x9e U+00d7
+0x9f U+00a4
+0xa0 U+0100
+0xa1 U+012a
+0xa2 U+00f3
+0xa3 U+017b
+0xa4 U+017c
+0xa5 U+017a
+0xa6 U+201d
+0xa7 U+00a6
+0xa8 U+00a9
+0xa9 U+00ae
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+0141
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+0104
+0xb6 U+010c
+0xb7 U+0118
+0xb8 U+0116
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+012e
+0xbe U+0160
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+0172
+0xc7 U+016a
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+017d
+0xd0 U+0105
+0xd1 U+010d
+0xd2 U+0119
+0xd3 U+0117
+0xd4 U+012f
+0xd5 U+0161
+0xd6 U+0173
+0xd7 U+016b
+0xd8 U+017e
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+00d3
+0xe1 U+00df
+0xe2 U+014c
+0xe3 U+0143
+0xe4 U+00f5
+0xe5 U+00d5
+0xe6 U+00b5
+0xe7 U+0144
+0xe8 U+0136
+0xe9 U+0137
+0xea U+013b
+0xeb U+013c
+0xec U+0146
+0xed U+0112
+0xee U+0145
+0xef U+2019
+0xf0 U+00ad
+0xf1 U+00b1
+0xf2 U+201c
+0xf3 U+00be
+0xf4 U+00b6
+0xf5 U+00a7
+0xf6 U+00f7
+0xf7 U+201e
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+00b9
+0xfc U+00b3
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM838.c2b b/jdk/make/tools/CharsetMapping/IBM838.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM838.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM838.map b/jdk/make/tools/CharsetMapping/IBM838.map
new file mode 100644
index 00000000000..eb587e71fc8
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM838.map
@@ -0,0 +1,257 @@
+#Generated from IBM838.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+0e01
+0x43 U+0e02
+0x44 U+0e03
+0x45 U+0e04
+0x46 U+0e05
+0x47 U+0e06
+0x48 U+0e07
+0x49 U+005b
+0x4a U+00a2
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+007c
+0x50 U+0026
+0x51 U+0e48
+0x52 U+0e08
+0x53 U+0e09
+0x54 U+0e0a
+0x55 U+0e0b
+0x56 U+0e0c
+0x57 U+0e0d
+0x58 U+0e0e
+0x59 U+005d
+0x5a U+0021
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00ac
+0x60 U+002d
+0x61 U+002f
+0x62 U+0e0f
+0x63 U+0e10
+0x64 U+0e11
+0x65 U+0e12
+0x66 U+0e13
+0x67 U+0e14
+0x68 U+0e15
+0x69 U+005e
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+0e3f
+0x71 U+0e4e
+0x72 U+0e16
+0x73 U+0e17
+0x74 U+0e18
+0x75 U+0e19
+0x76 U+0e1a
+0x77 U+0e1b
+0x78 U+0e1c
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+0e4f
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+0e1d
+0x8b U+0e1e
+0x8c U+0e1f
+0x8d U+0e20
+0x8e U+0e21
+0x8f U+0e22
+0x90 U+0e5a
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+0e23
+0x9b U+0e24
+0x9c U+0e25
+0x9d U+0e26
+0x9e U+0e27
+0x9f U+0e28
+0xa0 U+0e5b
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+0e29
+0xab U+0e2a
+0xac U+0e2b
+0xad U+0e2c
+0xae U+0e2d
+0xaf U+0e2e
+0xb0 U+0e50
+0xb1 U+0e51
+0xb2 U+0e52
+0xb3 U+0e53
+0xb4 U+0e54
+0xb5 U+0e55
+0xb6 U+0e56
+0xb7 U+0e57
+0xb8 U+0e58
+0xb9 U+0e59
+0xba U+0e2f
+0xbb U+0e30
+0xbc U+0e31
+0xbd U+0e32
+0xbe U+0e33
+0xbf U+0e34
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+0e49
+0xcb U+0e35
+0xcc U+0e36
+0xcd U+0e37
+0xce U+0e38
+0xcf U+0e39
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+0e3a
+0xdb U+0e40
+0xdc U+0e41
+0xdd U+0e42
+0xde U+0e43
+0xdf U+0e44
+0xe0 U+005c
+0xe1 U+0e4a
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+0e45
+0xeb U+0e46
+0xec U+0e47
+0xed U+0e48
+0xee U+0e49
+0xef U+0e4a
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+0e4b
+0xfb U+0e4c
+0xfc U+0e4d
+0xfd U+0e4b
+0xfe U+0e4c
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM838.nr b/jdk/make/tools/CharsetMapping/IBM838.nr
new file mode 100644
index 00000000000..3b3d08b0d16
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM838.nr
@@ -0,0 +1,6 @@
+0x25 U+000a
+0x51 U+0e48
+0xca U+0e49
+0xe1 U+0e4a
+0xfd U+0e4b
+0xfe U+0e4c
diff --git a/jdk/make/tools/CharsetMapping/IBM850.map b/jdk/make/tools/CharsetMapping/IBM850.map
new file mode 100644
index 00000000000..981356f85b2
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM850.map
@@ -0,0 +1,257 @@
+#Generated from IBM850.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00e4
+0x85 U+00e0
+0x86 U+00e5
+0x87 U+00e7
+0x88 U+00ea
+0x89 U+00eb
+0x8a U+00e8
+0x8b U+00ef
+0x8c U+00ee
+0x8d U+00ec
+0x8e U+00c4
+0x8f U+00c5
+0x90 U+00c9
+0x91 U+00e6
+0x92 U+00c6
+0x93 U+00f4
+0x94 U+00f6
+0x95 U+00f2
+0x96 U+00fb
+0x97 U+00f9
+0x98 U+00ff
+0x99 U+00d6
+0x9a U+00dc
+0x9b U+00f8
+0x9c U+00a3
+0x9d U+00d8
+0x9e U+00d7
+0x9f U+0192
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00f1
+0xa5 U+00d1
+0xa6 U+00aa
+0xa7 U+00ba
+0xa8 U+00bf
+0xa9 U+00ae
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00a1
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+00c1
+0xb6 U+00c2
+0xb7 U+00c0
+0xb8 U+00a9
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+00a2
+0xbe U+00a5
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+00e3
+0xc7 U+00c3
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+00a4
+0xd0 U+00f0
+0xd1 U+00d0
+0xd2 U+00ca
+0xd3 U+00cb
+0xd4 U+00c8
+0xd5 U+0131
+0xd6 U+00cd
+0xd7 U+00ce
+0xd8 U+00cf
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+00a6
+0xde U+00cc
+0xdf U+2580
+0xe0 U+00d3
+0xe1 U+00df
+0xe2 U+00d4
+0xe3 U+00d2
+0xe4 U+00f5
+0xe5 U+00d5
+0xe6 U+00b5
+0xe7 U+00fe
+0xe8 U+00de
+0xe9 U+00da
+0xea U+00db
+0xeb U+00d9
+0xec U+00fd
+0xed U+00dd
+0xee U+00af
+0xef U+00b4
+0xf0 U+00ad
+0xf1 U+00b1
+0xf2 U+2017
+0xf3 U+00be
+0xf4 U+00b6
+0xf5 U+00a7
+0xf6 U+00f7
+0xf7 U+00b8
+0xf8 U+00b0
+0xf9 U+00a8
+0xfa U+00b7
+0xfb U+00b9
+0xfc U+00b3
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM852.map b/jdk/make/tools/CharsetMapping/IBM852.map
new file mode 100644
index 00000000000..1c5768a01b6
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM852.map
@@ -0,0 +1,257 @@
+#Generated from IBM852.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00e4
+0x85 U+016f
+0x86 U+0107
+0x87 U+00e7
+0x88 U+0142
+0x89 U+00eb
+0x8a U+0150
+0x8b U+0151
+0x8c U+00ee
+0x8d U+0179
+0x8e U+00c4
+0x8f U+0106
+0x90 U+00c9
+0x91 U+0139
+0x92 U+013a
+0x93 U+00f4
+0x94 U+00f6
+0x95 U+013d
+0x96 U+013e
+0x97 U+015a
+0x98 U+015b
+0x99 U+00d6
+0x9a U+00dc
+0x9b U+0164
+0x9c U+0165
+0x9d U+0141
+0x9e U+00d7
+0x9f U+010d
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+0104
+0xa5 U+0105
+0xa6 U+017d
+0xa7 U+017e
+0xa8 U+0118
+0xa9 U+0119
+0xaa U+00ac
+0xab U+017a
+0xac U+010c
+0xad U+015f
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+00c1
+0xb6 U+00c2
+0xb7 U+011a
+0xb8 U+015e
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+017b
+0xbe U+017c
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+0102
+0xc7 U+0103
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+00a4
+0xd0 U+0111
+0xd1 U+0110
+0xd2 U+010e
+0xd3 U+00cb
+0xd4 U+010f
+0xd5 U+0147
+0xd6 U+00cd
+0xd7 U+00ce
+0xd8 U+011b
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+0162
+0xde U+016e
+0xdf U+2580
+0xe0 U+00d3
+0xe1 U+00df
+0xe2 U+00d4
+0xe3 U+0143
+0xe4 U+0144
+0xe5 U+0148
+0xe6 U+0160
+0xe7 U+0161
+0xe8 U+0154
+0xe9 U+00da
+0xea U+0155
+0xeb U+0170
+0xec U+00fd
+0xed U+00dd
+0xee U+0163
+0xef U+00b4
+0xf0 U+00ad
+0xf1 U+02dd
+0xf2 U+02db
+0xf3 U+02c7
+0xf4 U+02d8
+0xf5 U+00a7
+0xf6 U+00f7
+0xf7 U+00b8
+0xf8 U+00b0
+0xf9 U+00a8
+0xfa U+02d9
+0xfb U+0171
+0xfc U+0158
+0xfd U+0159
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM855.map b/jdk/make/tools/CharsetMapping/IBM855.map
new file mode 100644
index 00000000000..4efc220a97c
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM855.map
@@ -0,0 +1,257 @@
+#Generated from IBM855.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0452
+0x81 U+0402
+0x82 U+0453
+0x83 U+0403
+0x84 U+0451
+0x85 U+0401
+0x86 U+0454
+0x87 U+0404
+0x88 U+0455
+0x89 U+0405
+0x8a U+0456
+0x8b U+0406
+0x8c U+0457
+0x8d U+0407
+0x8e U+0458
+0x8f U+0408
+0x90 U+0459
+0x91 U+0409
+0x92 U+045a
+0x93 U+040a
+0x94 U+045b
+0x95 U+040b
+0x96 U+045c
+0x97 U+040c
+0x98 U+045e
+0x99 U+040e
+0x9a U+045f
+0x9b U+040f
+0x9c U+044e
+0x9d U+042e
+0x9e U+044a
+0x9f U+042a
+0xa0 U+0430
+0xa1 U+0410
+0xa2 U+0431
+0xa3 U+0411
+0xa4 U+0446
+0xa5 U+0426
+0xa6 U+0434
+0xa7 U+0414
+0xa8 U+0435
+0xa9 U+0415
+0xaa U+0444
+0xab U+0424
+0xac U+0433
+0xad U+0413
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+0445
+0xb6 U+0425
+0xb7 U+0438
+0xb8 U+0418
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+0439
+0xbe U+0419
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+043a
+0xc7 U+041a
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+00a4
+0xd0 U+043b
+0xd1 U+041b
+0xd2 U+043c
+0xd3 U+041c
+0xd4 U+043d
+0xd5 U+041d
+0xd6 U+043e
+0xd7 U+041e
+0xd8 U+043f
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+041f
+0xde U+044f
+0xdf U+2580
+0xe0 U+042f
+0xe1 U+0440
+0xe2 U+0420
+0xe3 U+0441
+0xe4 U+0421
+0xe5 U+0442
+0xe6 U+0422
+0xe7 U+0443
+0xe8 U+0423
+0xe9 U+0436
+0xea U+0416
+0xeb U+0432
+0xec U+0412
+0xed U+044c
+0xee U+042c
+0xef U+2116
+0xf0 U+00ad
+0xf1 U+044b
+0xf2 U+042b
+0xf3 U+0437
+0xf4 U+0417
+0xf5 U+0448
+0xf6 U+0428
+0xf7 U+044d
+0xf8 U+042d
+0xf9 U+0449
+0xfa U+0429
+0xfb U+0447
+0xfc U+0427
+0xfd U+00a7
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM856.map b/jdk/make/tools/CharsetMapping/IBM856.map
new file mode 100644
index 00000000000..8e703c6e53e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM856.map
@@ -0,0 +1,257 @@
+#Generated from IBM856.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+05d0
+0x81 U+05d1
+0x82 U+05d2
+0x83 U+05d3
+0x84 U+05d4
+0x85 U+05d5
+0x86 U+05d6
+0x87 U+05d7
+0x88 U+05d8
+0x89 U+05d9
+0x8a U+05da
+0x8b U+05db
+0x8c U+05dc
+0x8d U+05dd
+0x8e U+05de
+0x8f U+05df
+0x90 U+05e0
+0x91 U+05e1
+0x92 U+05e2
+0x93 U+05e3
+0x94 U+05e4
+0x95 U+05e5
+0x96 U+05e6
+0x97 U+05e7
+0x98 U+05e8
+0x99 U+05e9
+0x9a U+05ea
+0x9b U+fffd
+0x9c U+00a3
+0x9d U+fffd
+0x9e U+00d7
+0x9f U+fffd
+0xa0 U+fffd
+0xa1 U+fffd
+0xa2 U+fffd
+0xa3 U+fffd
+0xa4 U+fffd
+0xa5 U+fffd
+0xa6 U+fffd
+0xa7 U+fffd
+0xa8 U+fffd
+0xa9 U+00ae
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+fffd
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+fffd
+0xb6 U+fffd
+0xb7 U+fffd
+0xb8 U+00a9
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+00a2
+0xbe U+00a5
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+fffd
+0xc7 U+fffd
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+00a4
+0xd0 U+fffd
+0xd1 U+fffd
+0xd2 U+fffd
+0xd3 U+fffd
+0xd4 U+fffd
+0xd5 U+fffd
+0xd6 U+fffd
+0xd7 U+fffd
+0xd8 U+fffd
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+00a6
+0xde U+fffd
+0xdf U+2580
+0xe0 U+fffd
+0xe1 U+fffd
+0xe2 U+fffd
+0xe3 U+fffd
+0xe4 U+fffd
+0xe5 U+fffd
+0xe6 U+00b5
+0xe7 U+fffd
+0xe8 U+fffd
+0xe9 U+fffd
+0xea U+fffd
+0xeb U+fffd
+0xec U+fffd
+0xed U+fffd
+0xee U+203e
+0xef U+00b4
+0xf0 U+00ad
+0xf1 U+00b1
+0xf2 U+2017
+0xf3 U+00be
+0xf4 U+00b6
+0xf5 U+00a7
+0xf6 U+00f7
+0xf7 U+00b8
+0xf8 U+00b0
+0xf9 U+00a8
+0xfa U+2022
+0xfb U+00b9
+0xfc U+00b3
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM857.map b/jdk/make/tools/CharsetMapping/IBM857.map
new file mode 100644
index 00000000000..e85b12bc7fd
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM857.map
@@ -0,0 +1,257 @@
+#Generated from IBM857.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00e4
+0x85 U+00e0
+0x86 U+00e5
+0x87 U+00e7
+0x88 U+00ea
+0x89 U+00eb
+0x8a U+00e8
+0x8b U+00ef
+0x8c U+00ee
+0x8d U+0131
+0x8e U+00c4
+0x8f U+00c5
+0x90 U+00c9
+0x91 U+00e6
+0x92 U+00c6
+0x93 U+00f4
+0x94 U+00f6
+0x95 U+00f2
+0x96 U+00fb
+0x97 U+00f9
+0x98 U+0130
+0x99 U+00d6
+0x9a U+00dc
+0x9b U+00f8
+0x9c U+00a3
+0x9d U+00d8
+0x9e U+015e
+0x9f U+015f
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00f1
+0xa5 U+00d1
+0xa6 U+011e
+0xa7 U+011f
+0xa8 U+00bf
+0xa9 U+00ae
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00a1
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+00c1
+0xb6 U+00c2
+0xb7 U+00c0
+0xb8 U+00a9
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+00a2
+0xbe U+00a5
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+00e3
+0xc7 U+00c3
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+00a4
+0xd0 U+00ba
+0xd1 U+00aa
+0xd2 U+00ca
+0xd3 U+00cb
+0xd4 U+00c8
+0xd5 U+fffd
+0xd6 U+00cd
+0xd7 U+00ce
+0xd8 U+00cf
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+00a6
+0xde U+00cc
+0xdf U+2580
+0xe0 U+00d3
+0xe1 U+00df
+0xe2 U+00d4
+0xe3 U+00d2
+0xe4 U+00f5
+0xe5 U+00d5
+0xe6 U+00b5
+0xe7 U+fffd
+0xe8 U+00d7
+0xe9 U+00da
+0xea U+00db
+0xeb U+00d9
+0xec U+00ec
+0xed U+00ff
+0xee U+00af
+0xef U+00b4
+0xf0 U+00ad
+0xf1 U+00b1
+0xf2 U+fffd
+0xf3 U+00be
+0xf4 U+00b6
+0xf5 U+00a7
+0xf6 U+00f7
+0xf7 U+00b8
+0xf8 U+00b0
+0xf9 U+00a8
+0xfa U+00b7
+0xfb U+00b9
+0xfc U+00b3
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM858.map b/jdk/make/tools/CharsetMapping/IBM858.map
new file mode 100644
index 00000000000..c2878044020
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM858.map
@@ -0,0 +1,257 @@
+#Generated from IBM858.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00e4
+0x85 U+00e0
+0x86 U+00e5
+0x87 U+00e7
+0x88 U+00ea
+0x89 U+00eb
+0x8a U+00e8
+0x8b U+00ef
+0x8c U+00ee
+0x8d U+00ec
+0x8e U+00c4
+0x8f U+00c5
+0x90 U+00c9
+0x91 U+00e6
+0x92 U+00c6
+0x93 U+00f4
+0x94 U+00f6
+0x95 U+00f2
+0x96 U+00fb
+0x97 U+00f9
+0x98 U+00ff
+0x99 U+00d6
+0x9a U+00dc
+0x9b U+00f8
+0x9c U+00a3
+0x9d U+00d8
+0x9e U+00d7
+0x9f U+0192
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00f1
+0xa5 U+00d1
+0xa6 U+00aa
+0xa7 U+00ba
+0xa8 U+00bf
+0xa9 U+00ae
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00a1
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+00c1
+0xb6 U+00c2
+0xb7 U+00c0
+0xb8 U+00a9
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+00a2
+0xbe U+00a5
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+00e3
+0xc7 U+00c3
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+00a4
+0xd0 U+00f0
+0xd1 U+00d0
+0xd2 U+00ca
+0xd3 U+00cb
+0xd4 U+00c8
+0xd5 U+20ac
+0xd6 U+00cd
+0xd7 U+00ce
+0xd8 U+00cf
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+00a6
+0xde U+00cc
+0xdf U+2580
+0xe0 U+00d3
+0xe1 U+00df
+0xe2 U+00d4
+0xe3 U+00d2
+0xe4 U+00f5
+0xe5 U+00d5
+0xe6 U+00b5
+0xe7 U+00fe
+0xe8 U+00de
+0xe9 U+00da
+0xea U+00db
+0xeb U+00d9
+0xec U+00fd
+0xed U+00dd
+0xee U+00af
+0xef U+00b4
+0xf0 U+00ad
+0xf1 U+00b1
+0xf2 U+2017
+0xf3 U+00be
+0xf4 U+00b6
+0xf5 U+00a7
+0xf6 U+00f7
+0xf7 U+00b8
+0xf8 U+00b0
+0xf9 U+00a8
+0xfa U+00b7
+0xfb U+00b9
+0xfc U+00b3
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM860.map b/jdk/make/tools/CharsetMapping/IBM860.map
new file mode 100644
index 00000000000..88ddee06894
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM860.map
@@ -0,0 +1,257 @@
+#Generated from IBM860.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00e3
+0x85 U+00e0
+0x86 U+00c1
+0x87 U+00e7
+0x88 U+00ea
+0x89 U+00ca
+0x8a U+00e8
+0x8b U+00cd
+0x8c U+00d4
+0x8d U+00ec
+0x8e U+00c3
+0x8f U+00c2
+0x90 U+00c9
+0x91 U+00c0
+0x92 U+00c8
+0x93 U+00f4
+0x94 U+00f5
+0x95 U+00f2
+0x96 U+00da
+0x97 U+00f9
+0x98 U+00cc
+0x99 U+00d5
+0x9a U+00dc
+0x9b U+00a2
+0x9c U+00a3
+0x9d U+00d9
+0x9e U+20a7
+0x9f U+00d3
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00f1
+0xa5 U+00d1
+0xa6 U+00aa
+0xa7 U+00ba
+0xa8 U+00bf
+0xa9 U+00d2
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00a1
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+2561
+0xb6 U+2562
+0xb7 U+2556
+0xb8 U+2555
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+255c
+0xbe U+255b
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+255e
+0xc7 U+255f
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+2567
+0xd0 U+2568
+0xd1 U+2564
+0xd2 U+2565
+0xd3 U+2559
+0xd4 U+2558
+0xd5 U+2552
+0xd6 U+2553
+0xd7 U+256b
+0xd8 U+256a
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+03b1
+0xe1 U+00df
+0xe2 U+0393
+0xe3 U+03c0
+0xe4 U+03a3
+0xe5 U+03c3
+0xe6 U+00b5
+0xe7 U+03c4
+0xe8 U+03a6
+0xe9 U+0398
+0xea U+03a9
+0xeb U+03b4
+0xec U+221e
+0xed U+03c6
+0xee U+03b5
+0xef U+2229
+0xf0 U+2261
+0xf1 U+00b1
+0xf2 U+2265
+0xf3 U+2264
+0xf4 U+2320
+0xf5 U+2321
+0xf6 U+00f7
+0xf7 U+2248
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+221a
+0xfc U+207f
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM861.map b/jdk/make/tools/CharsetMapping/IBM861.map
new file mode 100644
index 00000000000..05a1f5b0bb9
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM861.map
@@ -0,0 +1,257 @@
+#Generated from IBM861.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00e4
+0x85 U+00e0
+0x86 U+00e5
+0x87 U+00e7
+0x88 U+00ea
+0x89 U+00eb
+0x8a U+00e8
+0x8b U+00d0
+0x8c U+00f0
+0x8d U+00de
+0x8e U+00c4
+0x8f U+00c5
+0x90 U+00c9
+0x91 U+00e6
+0x92 U+00c6
+0x93 U+00f4
+0x94 U+00f6
+0x95 U+00fe
+0x96 U+00fb
+0x97 U+00dd
+0x98 U+00fd
+0x99 U+00d6
+0x9a U+00dc
+0x9b U+00f8
+0x9c U+00a3
+0x9d U+00d8
+0x9e U+20a7
+0x9f U+0192
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00c1
+0xa5 U+00cd
+0xa6 U+00d3
+0xa7 U+00da
+0xa8 U+00bf
+0xa9 U+2310
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00a1
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+2561
+0xb6 U+2562
+0xb7 U+2556
+0xb8 U+2555
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+255c
+0xbe U+255b
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+255e
+0xc7 U+255f
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+2567
+0xd0 U+2568
+0xd1 U+2564
+0xd2 U+2565
+0xd3 U+2559
+0xd4 U+2558
+0xd5 U+2552
+0xd6 U+2553
+0xd7 U+256b
+0xd8 U+256a
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+03b1
+0xe1 U+00df
+0xe2 U+0393
+0xe3 U+03c0
+0xe4 U+03a3
+0xe5 U+03c3
+0xe6 U+00b5
+0xe7 U+03c4
+0xe8 U+03a6
+0xe9 U+0398
+0xea U+03a9
+0xeb U+03b4
+0xec U+221e
+0xed U+03c6
+0xee U+03b5
+0xef U+2229
+0xf0 U+2261
+0xf1 U+00b1
+0xf2 U+2265
+0xf3 U+2264
+0xf4 U+2320
+0xf5 U+2321
+0xf6 U+00f7
+0xf7 U+2248
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+221a
+0xfc U+207f
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM862.map b/jdk/make/tools/CharsetMapping/IBM862.map
new file mode 100644
index 00000000000..de3c0d16b5a
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM862.map
@@ -0,0 +1,257 @@
+#Generated from IBM862.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+05d0
+0x81 U+05d1
+0x82 U+05d2
+0x83 U+05d3
+0x84 U+05d4
+0x85 U+05d5
+0x86 U+05d6
+0x87 U+05d7
+0x88 U+05d8
+0x89 U+05d9
+0x8a U+05da
+0x8b U+05db
+0x8c U+05dc
+0x8d U+05dd
+0x8e U+05de
+0x8f U+05df
+0x90 U+05e0
+0x91 U+05e1
+0x92 U+05e2
+0x93 U+05e3
+0x94 U+05e4
+0x95 U+05e5
+0x96 U+05e6
+0x97 U+05e7
+0x98 U+05e8
+0x99 U+05e9
+0x9a U+05ea
+0x9b U+00a2
+0x9c U+00a3
+0x9d U+00a5
+0x9e U+20a7
+0x9f U+0192
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00f1
+0xa5 U+00d1
+0xa6 U+00aa
+0xa7 U+00ba
+0xa8 U+00bf
+0xa9 U+2310
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00a1
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+2561
+0xb6 U+2562
+0xb7 U+2556
+0xb8 U+2555
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+255c
+0xbe U+255b
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+255e
+0xc7 U+255f
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+2567
+0xd0 U+2568
+0xd1 U+2564
+0xd2 U+2565
+0xd3 U+2559
+0xd4 U+2558
+0xd5 U+2552
+0xd6 U+2553
+0xd7 U+256b
+0xd8 U+256a
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+03b1
+0xe1 U+00df
+0xe2 U+0393
+0xe3 U+03c0
+0xe4 U+03a3
+0xe5 U+03c3
+0xe6 U+00b5
+0xe7 U+03c4
+0xe8 U+03a6
+0xe9 U+0398
+0xea U+03a9
+0xeb U+03b4
+0xec U+221e
+0xed U+03c6
+0xee U+03b5
+0xef U+2229
+0xf0 U+2261
+0xf1 U+00b1
+0xf2 U+2265
+0xf3 U+2264
+0xf4 U+2320
+0xf5 U+2321
+0xf6 U+00f7
+0xf7 U+2248
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+221a
+0xfc U+207f
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM863.map b/jdk/make/tools/CharsetMapping/IBM863.map
new file mode 100644
index 00000000000..e6bd5e77d80
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM863.map
@@ -0,0 +1,257 @@
+#Generated from IBM863.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00c2
+0x85 U+00e0
+0x86 U+00b6
+0x87 U+00e7
+0x88 U+00ea
+0x89 U+00eb
+0x8a U+00e8
+0x8b U+00ef
+0x8c U+00ee
+0x8d U+2017
+0x8e U+00c0
+0x8f U+00a7
+0x90 U+00c9
+0x91 U+00c8
+0x92 U+00ca
+0x93 U+00f4
+0x94 U+00cb
+0x95 U+00cf
+0x96 U+00fb
+0x97 U+00f9
+0x98 U+00a4
+0x99 U+00d4
+0x9a U+00dc
+0x9b U+00a2
+0x9c U+00a3
+0x9d U+00d9
+0x9e U+00db
+0x9f U+0192
+0xa0 U+00a6
+0xa1 U+00b4
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00a8
+0xa5 U+00b8
+0xa6 U+00b3
+0xa7 U+00af
+0xa8 U+00ce
+0xa9 U+2310
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00be
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+2561
+0xb6 U+2562
+0xb7 U+2556
+0xb8 U+2555
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+255c
+0xbe U+255b
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+255e
+0xc7 U+255f
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+2567
+0xd0 U+2568
+0xd1 U+2564
+0xd2 U+2565
+0xd3 U+2559
+0xd4 U+2558
+0xd5 U+2552
+0xd6 U+2553
+0xd7 U+256b
+0xd8 U+256a
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+03b1
+0xe1 U+00df
+0xe2 U+0393
+0xe3 U+03c0
+0xe4 U+03a3
+0xe5 U+03c3
+0xe6 U+00b5
+0xe7 U+03c4
+0xe8 U+03a6
+0xe9 U+0398
+0xea U+03a9
+0xeb U+03b4
+0xec U+221e
+0xed U+03c6
+0xee U+03b5
+0xef U+2229
+0xf0 U+2261
+0xf1 U+00b1
+0xf2 U+2265
+0xf3 U+2264
+0xf4 U+2320
+0xf5 U+2321
+0xf6 U+00f7
+0xf7 U+2248
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+221a
+0xfc U+207f
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM864.map b/jdk/make/tools/CharsetMapping/IBM864.map
new file mode 100644
index 00000000000..9ca27253c10
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM864.map
@@ -0,0 +1,257 @@
+#Generated from IBM864.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+066a
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00b0
+0x81 U+00b7
+0x82 U+2219
+0x83 U+221a
+0x84 U+2592
+0x85 U+2500
+0x86 U+2502
+0x87 U+253c
+0x88 U+2524
+0x89 U+252c
+0x8a U+251c
+0x8b U+2534
+0x8c U+2510
+0x8d U+250c
+0x8e U+2514
+0x8f U+2518
+0x90 U+03b2
+0x91 U+221e
+0x92 U+03c6
+0x93 U+00b1
+0x94 U+00bd
+0x95 U+00bc
+0x96 U+2248
+0x97 U+00ab
+0x98 U+00bb
+0x99 U+fef7
+0x9a U+fef8
+0x9b U+fffd
+0x9c U+fffd
+0x9d U+fefb
+0x9e U+fefc
+0x9f U+fffd
+0xa0 U+00a0
+0xa1 U+00ad
+0xa2 U+fe82
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+fe84
+0xa6 U+fffd
+0xa7 U+fffd
+0xa8 U+fe8e
+0xa9 U+fe8f
+0xaa U+fe95
+0xab U+fe99
+0xac U+060c
+0xad U+fe9d
+0xae U+fea1
+0xaf U+fea5
+0xb0 U+0660
+0xb1 U+0661
+0xb2 U+0662
+0xb3 U+0663
+0xb4 U+0664
+0xb5 U+0665
+0xb6 U+0666
+0xb7 U+0667
+0xb8 U+0668
+0xb9 U+0669
+0xba U+fed1
+0xbb U+061b
+0xbc U+feb1
+0xbd U+feb5
+0xbe U+feb9
+0xbf U+061f
+0xc0 U+00a2
+0xc1 U+fe80
+0xc2 U+fe81
+0xc3 U+fe83
+0xc4 U+fe85
+0xc5 U+feca
+0xc6 U+fe8b
+0xc7 U+fe8d
+0xc8 U+fe91
+0xc9 U+fe93
+0xca U+fe97
+0xcb U+fe9b
+0xcc U+fe9f
+0xcd U+fea3
+0xce U+fea7
+0xcf U+fea9
+0xd0 U+feab
+0xd1 U+fead
+0xd2 U+feaf
+0xd3 U+feb3
+0xd4 U+feb7
+0xd5 U+febb
+0xd6 U+febf
+0xd7 U+fec1
+0xd8 U+fec5
+0xd9 U+fecb
+0xda U+fecf
+0xdb U+00a6
+0xdc U+00ac
+0xdd U+00f7
+0xde U+00d7
+0xdf U+fec9
+0xe0 U+0640
+0xe1 U+fed3
+0xe2 U+fed7
+0xe3 U+fedb
+0xe4 U+fedf
+0xe5 U+fee3
+0xe6 U+fee7
+0xe7 U+feeb
+0xe8 U+feed
+0xe9 U+feef
+0xea U+fef3
+0xeb U+febd
+0xec U+fecc
+0xed U+fece
+0xee U+fecd
+0xef U+fee1
+0xf0 U+fe7d
+0xf1 U+0651
+0xf2 U+fee5
+0xf3 U+fee9
+0xf4 U+feec
+0xf5 U+fef0
+0xf6 U+fef2
+0xf7 U+fed0
+0xf8 U+fed5
+0xf9 U+fef5
+0xfa U+fef6
+0xfb U+fedd
+0xfc U+fed9
+0xfd U+fef1
+0xfe U+25a0
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/IBM865.map b/jdk/make/tools/CharsetMapping/IBM865.map
new file mode 100644
index 00000000000..7271013f0f5
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM865.map
@@ -0,0 +1,257 @@
+#Generated from IBM865.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c7
+0x81 U+00fc
+0x82 U+00e9
+0x83 U+00e2
+0x84 U+00e4
+0x85 U+00e0
+0x86 U+00e5
+0x87 U+00e7
+0x88 U+00ea
+0x89 U+00eb
+0x8a U+00e8
+0x8b U+00ef
+0x8c U+00ee
+0x8d U+00ec
+0x8e U+00c4
+0x8f U+00c5
+0x90 U+00c9
+0x91 U+00e6
+0x92 U+00c6
+0x93 U+00f4
+0x94 U+00f6
+0x95 U+00f2
+0x96 U+00fb
+0x97 U+00f9
+0x98 U+00ff
+0x99 U+00d6
+0x9a U+00dc
+0x9b U+00f8
+0x9c U+00a3
+0x9d U+00d8
+0x9e U+20a7
+0x9f U+0192
+0xa0 U+00e1
+0xa1 U+00ed
+0xa2 U+00f3
+0xa3 U+00fa
+0xa4 U+00f1
+0xa5 U+00d1
+0xa6 U+00aa
+0xa7 U+00ba
+0xa8 U+00bf
+0xa9 U+2310
+0xaa U+00ac
+0xab U+00bd
+0xac U+00bc
+0xad U+00a1
+0xae U+00ab
+0xaf U+00a4
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+2561
+0xb6 U+2562
+0xb7 U+2556
+0xb8 U+2555
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+255c
+0xbe U+255b
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+255e
+0xc7 U+255f
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+2567
+0xd0 U+2568
+0xd1 U+2564
+0xd2 U+2565
+0xd3 U+2559
+0xd4 U+2558
+0xd5 U+2552
+0xd6 U+2553
+0xd7 U+256b
+0xd8 U+256a
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+03b1
+0xe1 U+00df
+0xe2 U+0393
+0xe3 U+03c0
+0xe4 U+03a3
+0xe5 U+03c3
+0xe6 U+00b5
+0xe7 U+03c4
+0xe8 U+03a6
+0xe9 U+0398
+0xea U+03a9
+0xeb U+03b4
+0xec U+221e
+0xed U+03c6
+0xee U+03b5
+0xef U+2229
+0xf0 U+2261
+0xf1 U+00b1
+0xf2 U+2265
+0xf3 U+2264
+0xf4 U+2320
+0xf5 U+2321
+0xf6 U+00f7
+0xf7 U+2248
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+221a
+0xfc U+207f
+0xfd U+00b2
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM866.map b/jdk/make/tools/CharsetMapping/IBM866.map
new file mode 100644
index 00000000000..1e28b46764e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM866.map
@@ -0,0 +1,257 @@
+#Generated from IBM866.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0410
+0x81 U+0411
+0x82 U+0412
+0x83 U+0413
+0x84 U+0414
+0x85 U+0415
+0x86 U+0416
+0x87 U+0417
+0x88 U+0418
+0x89 U+0419
+0x8a U+041a
+0x8b U+041b
+0x8c U+041c
+0x8d U+041d
+0x8e U+041e
+0x8f U+041f
+0x90 U+0420
+0x91 U+0421
+0x92 U+0422
+0x93 U+0423
+0x94 U+0424
+0x95 U+0425
+0x96 U+0426
+0x97 U+0427
+0x98 U+0428
+0x99 U+0429
+0x9a U+042a
+0x9b U+042b
+0x9c U+042c
+0x9d U+042d
+0x9e U+042e
+0x9f U+042f
+0xa0 U+0430
+0xa1 U+0431
+0xa2 U+0432
+0xa3 U+0433
+0xa4 U+0434
+0xa5 U+0435
+0xa6 U+0436
+0xa7 U+0437
+0xa8 U+0438
+0xa9 U+0439
+0xaa U+043a
+0xab U+043b
+0xac U+043c
+0xad U+043d
+0xae U+043e
+0xaf U+043f
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+2561
+0xb6 U+2562
+0xb7 U+2556
+0xb8 U+2555
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+255c
+0xbe U+255b
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+255e
+0xc7 U+255f
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+2567
+0xd0 U+2568
+0xd1 U+2564
+0xd2 U+2565
+0xd3 U+2559
+0xd4 U+2558
+0xd5 U+2552
+0xd6 U+2553
+0xd7 U+256b
+0xd8 U+256a
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+258c
+0xde U+2590
+0xdf U+2580
+0xe0 U+0440
+0xe1 U+0441
+0xe2 U+0442
+0xe3 U+0443
+0xe4 U+0444
+0xe5 U+0445
+0xe6 U+0446
+0xe7 U+0447
+0xe8 U+0448
+0xe9 U+0449
+0xea U+044a
+0xeb U+044b
+0xec U+044c
+0xed U+044d
+0xee U+044e
+0xef U+044f
+0xf0 U+0401
+0xf1 U+0451
+0xf2 U+0404
+0xf3 U+0454
+0xf4 U+0407
+0xf5 U+0457
+0xf6 U+040e
+0xf7 U+045e
+0xf8 U+00b0
+0xf9 U+2219
+0xfa U+00b7
+0xfb U+221a
+0xfc U+2116
+0xfd U+00a4
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM868.map b/jdk/make/tools/CharsetMapping/IBM868.map
new file mode 100644
index 00000000000..cb5a1737c19
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM868.map
@@ -0,0 +1,257 @@
+#Generated from IBM868.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+06f0
+0x81 U+06f1
+0x82 U+06f2
+0x83 U+06f3
+0x84 U+06f4
+0x85 U+06f5
+0x86 U+06f6
+0x87 U+06f7
+0x88 U+06f8
+0x89 U+06f9
+0x8a U+060c
+0x8b U+061b
+0x8c U+061f
+0x8d U+fe81
+0x8e U+fe8d
+0x8f U+fe8e
+0x90 U+f8fb
+0x91 U+fe8f
+0x92 U+fe91
+0x93 U+fb56
+0x94 U+fb58
+0x95 U+fe93
+0x96 U+fe95
+0x97 U+fe97
+0x98 U+fb66
+0x99 U+fb68
+0x9a U+fe99
+0x9b U+fe9b
+0x9c U+fe9d
+0x9d U+fe9f
+0x9e U+fb7a
+0x9f U+fb7c
+0xa0 U+fea1
+0xa1 U+fea3
+0xa2 U+fea5
+0xa3 U+fea7
+0xa4 U+fea9
+0xa5 U+fb88
+0xa6 U+feab
+0xa7 U+fead
+0xa8 U+fb8c
+0xa9 U+feaf
+0xaa U+fb8a
+0xab U+feb1
+0xac U+feb3
+0xad U+feb5
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+feb7
+0xb6 U+feb9
+0xb7 U+febb
+0xb8 U+febd
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+febf
+0xbe U+fec3
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+fec7
+0xc7 U+fec9
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+feca
+0xd0 U+fecb
+0xd1 U+fecc
+0xd2 U+fecd
+0xd3 U+fece
+0xd4 U+fecf
+0xd5 U+fed0
+0xd6 U+fed1
+0xd7 U+fed3
+0xd8 U+fed5
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+fed7
+0xde U+fb8e
+0xdf U+2580
+0xe0 U+fedb
+0xe1 U+fb92
+0xe2 U+fb94
+0xe3 U+fedd
+0xe4 U+fedf
+0xe5 U+fee0
+0xe6 U+fee1
+0xe7 U+fee3
+0xe8 U+fb9e
+0xe9 U+fee5
+0xea U+fee7
+0xeb U+fe85
+0xec U+feed
+0xed U+fba6
+0xee U+fba8
+0xef U+fba9
+0xf0 U+00ad
+0xf1 U+fbaa
+0xf2 U+fe80
+0xf3 U+fe89
+0xf4 U+fe8a
+0xf5 U+fe8b
+0xf6 U+fbfc
+0xf7 U+fbfd
+0xf8 U+fbfe
+0xf9 U+fbb0
+0xfa U+fbae
+0xfb U+fe7c
+0xfc U+fe7d
+0xfd U+fffd
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM869.map b/jdk/make/tools/CharsetMapping/IBM869.map
new file mode 100644
index 00000000000..097967484f4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM869.map
@@ -0,0 +1,257 @@
+#Generated from IBM869.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+fffd
+0x81 U+fffd
+0x82 U+fffd
+0x83 U+fffd
+0x84 U+fffd
+0x85 U+fffd
+0x86 U+0386
+0x87 U+fffd
+0x88 U+00b7
+0x89 U+00ac
+0x8a U+00a6
+0x8b U+2018
+0x8c U+2019
+0x8d U+0388
+0x8e U+2015
+0x8f U+0389
+0x90 U+038a
+0x91 U+03aa
+0x92 U+038c
+0x93 U+fffd
+0x94 U+fffd
+0x95 U+038e
+0x96 U+03ab
+0x97 U+00a9
+0x98 U+038f
+0x99 U+00b2
+0x9a U+00b3
+0x9b U+03ac
+0x9c U+00a3
+0x9d U+03ad
+0x9e U+03ae
+0x9f U+03af
+0xa0 U+03ca
+0xa1 U+0390
+0xa2 U+03cc
+0xa3 U+03cd
+0xa4 U+0391
+0xa5 U+0392
+0xa6 U+0393
+0xa7 U+0394
+0xa8 U+0395
+0xa9 U+0396
+0xaa U+0397
+0xab U+00bd
+0xac U+0398
+0xad U+0399
+0xae U+00ab
+0xaf U+00bb
+0xb0 U+2591
+0xb1 U+2592
+0xb2 U+2593
+0xb3 U+2502
+0xb4 U+2524
+0xb5 U+039a
+0xb6 U+039b
+0xb7 U+039c
+0xb8 U+039d
+0xb9 U+2563
+0xba U+2551
+0xbb U+2557
+0xbc U+255d
+0xbd U+039e
+0xbe U+039f
+0xbf U+2510
+0xc0 U+2514
+0xc1 U+2534
+0xc2 U+252c
+0xc3 U+251c
+0xc4 U+2500
+0xc5 U+253c
+0xc6 U+03a0
+0xc7 U+03a1
+0xc8 U+255a
+0xc9 U+2554
+0xca U+2569
+0xcb U+2566
+0xcc U+2560
+0xcd U+2550
+0xce U+256c
+0xcf U+03a3
+0xd0 U+03a4
+0xd1 U+03a5
+0xd2 U+03a6
+0xd3 U+03a7
+0xd4 U+03a8
+0xd5 U+03a9
+0xd6 U+03b1
+0xd7 U+03b2
+0xd8 U+03b3
+0xd9 U+2518
+0xda U+250c
+0xdb U+2588
+0xdc U+2584
+0xdd U+03b4
+0xde U+03b5
+0xdf U+2580
+0xe0 U+03b6
+0xe1 U+03b7
+0xe2 U+03b8
+0xe3 U+03b9
+0xe4 U+03ba
+0xe5 U+03bb
+0xe6 U+03bc
+0xe7 U+03bd
+0xe8 U+03be
+0xe9 U+03bf
+0xea U+03c0
+0xeb U+03c1
+0xec U+03c3
+0xed U+03c2
+0xee U+03c4
+0xef U+0384
+0xf0 U+00ad
+0xf1 U+00b1
+0xf2 U+03c5
+0xf3 U+03c6
+0xf4 U+03c7
+0xf5 U+00a7
+0xf6 U+03c8
+0xf7 U+0385
+0xf8 U+00b0
+0xf9 U+00a8
+0xfa U+03c9
+0xfb U+03cb
+0xfc U+03b0
+0xfd U+03ce
+0xfe U+25a0
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM870.c2b b/jdk/make/tools/CharsetMapping/IBM870.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM870.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM870.map b/jdk/make/tools/CharsetMapping/IBM870.map
new file mode 100644
index 00000000000..a6b1a2dd24c
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM870.map
@@ -0,0 +1,257 @@
+#Generated from IBM870.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+0163
+0x45 U+00e1
+0x46 U+0103
+0x47 U+010d
+0x48 U+00e7
+0x49 U+0107
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+0119
+0x53 U+00eb
+0x54 U+016f
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+013e
+0x58 U+013a
+0x59 U+00df
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+02dd
+0x65 U+00c1
+0x66 U+0102
+0x67 U+010c
+0x68 U+00c7
+0x69 U+0106
+0x6a U+007c
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+02c7
+0x71 U+00c9
+0x72 U+0118
+0x73 U+00cb
+0x74 U+016e
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+013d
+0x78 U+0139
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+02d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+015b
+0x8b U+0148
+0x8c U+0111
+0x8d U+00fd
+0x8e U+0159
+0x8f U+015f
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+0142
+0x9b U+0144
+0x9c U+0161
+0x9d U+00b8
+0x9e U+02db
+0x9f U+00a4
+0xa0 U+0105
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+015a
+0xab U+0147
+0xac U+0110
+0xad U+00dd
+0xae U+0158
+0xaf U+015e
+0xb0 U+02d9
+0xb1 U+0104
+0xb2 U+017c
+0xb3 U+0162
+0xb4 U+017b
+0xb5 U+00a7
+0xb6 U+017e
+0xb7 U+017a
+0xb8 U+017d
+0xb9 U+0179
+0xba U+0141
+0xbb U+0143
+0xbc U+0160
+0xbd U+00a8
+0xbe U+00b4
+0xbf U+00d7
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+00f6
+0xcd U+0155
+0xce U+00f3
+0xcf U+0151
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+011a
+0xdb U+0171
+0xdc U+00fc
+0xdd U+0165
+0xde U+00fa
+0xdf U+011b
+0xe0 U+005c
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+010f
+0xeb U+00d4
+0xec U+00d6
+0xed U+0154
+0xee U+00d3
+0xef U+0150
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+010e
+0xfb U+0170
+0xfc U+00dc
+0xfd U+0164
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM870.nr b/jdk/make/tools/CharsetMapping/IBM870.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM870.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM871.c2b b/jdk/make/tools/CharsetMapping/IBM871.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM871.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM871.map b/jdk/make/tools/CharsetMapping/IBM871.map
new file mode 100644
index 00000000000..0227f335d64
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM871.map
@@ -0,0 +1,257 @@
+#Generated from IBM871.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+00e2
+0x43 U+00e4
+0x44 U+00e0
+0x45 U+00e1
+0x46 U+00e3
+0x47 U+00e5
+0x48 U+00e7
+0x49 U+00f1
+0x4a U+00de
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+00e9
+0x52 U+00ea
+0x53 U+00eb
+0x54 U+00e8
+0x55 U+00ed
+0x56 U+00ee
+0x57 U+00ef
+0x58 U+00ec
+0x59 U+00df
+0x5a U+00c6
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+00d6
+0x60 U+002d
+0x61 U+002f
+0x62 U+00c2
+0x63 U+00c4
+0x64 U+00c0
+0x65 U+00c1
+0x66 U+00c3
+0x67 U+00c5
+0x68 U+00c7
+0x69 U+00d1
+0x6a U+00a6
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00f8
+0x71 U+00c9
+0x72 U+00ca
+0x73 U+00cb
+0x74 U+00c8
+0x75 U+00cd
+0x76 U+00ce
+0x77 U+00cf
+0x78 U+00cc
+0x79 U+00f0
+0x7a U+003a
+0x7b U+0023
+0x7c U+00d0
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+00d8
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+00ab
+0x8b U+00bb
+0x8c U+0060
+0x8d U+00fd
+0x8e U+007b
+0x8f U+00b1
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+00aa
+0x9b U+00ba
+0x9c U+007d
+0x9d U+00b8
+0x9e U+005d
+0x9f U+00a4
+0xa0 U+00b5
+0xa1 U+00f6
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+00a1
+0xab U+00bf
+0xac U+0040
+0xad U+00dd
+0xae U+005b
+0xaf U+00ae
+0xb0 U+00a2
+0xb1 U+00a3
+0xb2 U+00a5
+0xb3 U+00b7
+0xb4 U+00a9
+0xb5 U+00a7
+0xb6 U+00b6
+0xb7 U+00bc
+0xb8 U+00bd
+0xb9 U+00be
+0xba U+00ac
+0xbb U+007c
+0xbc U+00af
+0xbd U+00a8
+0xbe U+005c
+0xbf U+00d7
+0xc0 U+00fe
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+00f4
+0xcc U+007e
+0xcd U+00f2
+0xce U+00f3
+0xcf U+00f5
+0xd0 U+00e6
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b9
+0xdb U+00fb
+0xdc U+00fc
+0xdd U+00f9
+0xde U+00fa
+0xdf U+00ff
+0xe0 U+00b4
+0xe1 U+00f7
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00d4
+0xec U+005e
+0xed U+00d2
+0xee U+00d3
+0xef U+00d5
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00db
+0xfc U+00dc
+0xfd U+00d9
+0xfe U+00da
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM871.nr b/jdk/make/tools/CharsetMapping/IBM871.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM871.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM874.map b/jdk/make/tools/CharsetMapping/IBM874.map
new file mode 100644
index 00000000000..403e9ba70f5
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM874.map
@@ -0,0 +1,257 @@
+#Generated from IBM874.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+fffd
+0x83 U+fffd
+0x84 U+fffd
+0x85 U+fffd
+0x86 U+fffd
+0x87 U+fffd
+0x88 U+fffd
+0x89 U+fffd
+0x8a U+fffd
+0x8b U+fffd
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+fffd
+0x92 U+fffd
+0x93 U+fffd
+0x94 U+fffd
+0x95 U+fffd
+0x96 U+fffd
+0x97 U+fffd
+0x98 U+fffd
+0x99 U+fffd
+0x9a U+fffd
+0x9b U+fffd
+0x9c U+fffd
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+fffd
+0xa0 U+0e48
+0xa1 U+0e01
+0xa2 U+0e02
+0xa3 U+0e03
+0xa4 U+0e04
+0xa5 U+0e05
+0xa6 U+0e06
+0xa7 U+0e07
+0xa8 U+0e08
+0xa9 U+0e09
+0xaa U+0e0a
+0xab U+0e0b
+0xac U+0e0c
+0xad U+0e0d
+0xae U+0e0e
+0xaf U+0e0f
+0xb0 U+0e10
+0xb1 U+0e11
+0xb2 U+0e12
+0xb3 U+0e13
+0xb4 U+0e14
+0xb5 U+0e15
+0xb6 U+0e16
+0xb7 U+0e17
+0xb8 U+0e18
+0xb9 U+0e19
+0xba U+0e1a
+0xbb U+0e1b
+0xbc U+0e1c
+0xbd U+0e1d
+0xbe U+0e1e
+0xbf U+0e1f
+0xc0 U+0e20
+0xc1 U+0e21
+0xc2 U+0e22
+0xc3 U+0e23
+0xc4 U+0e24
+0xc5 U+0e25
+0xc6 U+0e26
+0xc7 U+0e27
+0xc8 U+0e28
+0xc9 U+0e29
+0xca U+0e2a
+0xcb U+0e2b
+0xcc U+0e2c
+0xcd U+0e2d
+0xce U+0e2e
+0xcf U+0e2f
+0xd0 U+0e30
+0xd1 U+0e31
+0xd2 U+0e32
+0xd3 U+0e33
+0xd4 U+0e34
+0xd5 U+0e35
+0xd6 U+0e36
+0xd7 U+0e37
+0xd8 U+0e38
+0xd9 U+0e39
+0xda U+0e3a
+0xdb U+0e49
+0xdc U+0e4a
+0xdd U+0e4b
+0xde U+0e4c
+0xdf U+0e3f
+0xe0 U+0e40
+0xe1 U+0e41
+0xe2 U+0e42
+0xe3 U+0e43
+0xe4 U+0e44
+0xe5 U+0e45
+0xe6 U+0e46
+0xe7 U+0e47
+0xe8 U+0e48
+0xe9 U+0e49
+0xea U+0e4a
+0xeb U+0e4b
+0xec U+0e4c
+0xed U+0e4d
+0xee U+0e4e
+0xef U+0e4f
+0xf0 U+0e50
+0xf1 U+0e51
+0xf2 U+0e52
+0xf3 U+0e53
+0xf4 U+0e54
+0xf5 U+0e55
+0xf6 U+0e56
+0xf7 U+0e57
+0xf8 U+0e58
+0xf9 U+0e59
+0xfa U+0e5a
+0xfb U+0e5b
+0xfc U+00a2
+0xfd U+00ac
+0xfe U+00a6
+0xff U+00a0
diff --git a/jdk/make/tools/CharsetMapping/IBM874.nr b/jdk/make/tools/CharsetMapping/IBM874.nr
new file mode 100644
index 00000000000..88afffb6f22
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM874.nr
@@ -0,0 +1,5 @@
+0xa0 U+0e48
+0xdb U+0e49
+0xdc U+0e4a
+0xdd U+0e4b
+0xde U+0e4c
diff --git a/jdk/make/tools/CharsetMapping/IBM875.c2b b/jdk/make/tools/CharsetMapping/IBM875.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM875.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM875.map b/jdk/make/tools/CharsetMapping/IBM875.map
new file mode 100644
index 00000000000..35f7d5a1a04
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM875.map
@@ -0,0 +1,257 @@
+#Generated from IBM875.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+0391
+0x42 U+0392
+0x43 U+0393
+0x44 U+0394
+0x45 U+0395
+0x46 U+0396
+0x47 U+0397
+0x48 U+0398
+0x49 U+0399
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+039a
+0x52 U+039b
+0x53 U+039c
+0x54 U+039d
+0x55 U+039e
+0x56 U+039f
+0x57 U+03a0
+0x58 U+03a1
+0x59 U+03a3
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+03a4
+0x63 U+03a5
+0x64 U+03a6
+0x65 U+03a7
+0x66 U+03a8
+0x67 U+03a9
+0x68 U+03aa
+0x69 U+03ab
+0x6a U+007c
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+00a8
+0x71 U+0386
+0x72 U+0388
+0x73 U+0389
+0x74 U+00a0
+0x75 U+038a
+0x76 U+038c
+0x77 U+038e
+0x78 U+038f
+0x79 U+0060
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+0385
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+03b1
+0x8b U+03b2
+0x8c U+03b3
+0x8d U+03b4
+0x8e U+03b5
+0x8f U+03b6
+0x90 U+00b0
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+03b7
+0x9b U+03b8
+0x9c U+03b9
+0x9d U+03ba
+0x9e U+03bb
+0x9f U+03bc
+0xa0 U+00b4
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+03bd
+0xab U+03be
+0xac U+03bf
+0xad U+03c0
+0xae U+03c1
+0xaf U+03c3
+0xb0 U+00a3
+0xb1 U+03ac
+0xb2 U+03ad
+0xb3 U+03ae
+0xb4 U+03ca
+0xb5 U+03af
+0xb6 U+03cc
+0xb7 U+03cd
+0xb8 U+03cb
+0xb9 U+03ce
+0xba U+03c2
+0xbb U+03c4
+0xbc U+03c5
+0xbd U+03c6
+0xbe U+03c7
+0xbf U+03c8
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+03c9
+0xcc U+0390
+0xcd U+03b0
+0xce U+2018
+0xcf U+2015
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+00b1
+0xdb U+00bd
+0xdc U+fffd
+0xdd U+0387
+0xde U+2019
+0xdf U+00a6
+0xe0 U+005c
+0xe1 U+fffd
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+00b2
+0xeb U+00a7
+0xec U+fffd
+0xed U+fffd
+0xee U+00ab
+0xef U+00ac
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+00b3
+0xfb U+00a9
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+00bb
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM875.nr b/jdk/make/tools/CharsetMapping/IBM875.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM875.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM918.c2b b/jdk/make/tools/CharsetMapping/IBM918.c2b
new file mode 100644
index 00000000000..6cb38028124
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM918.c2b
@@ -0,0 +1 @@
+0x15 U+0085
diff --git a/jdk/make/tools/CharsetMapping/IBM918.map b/jdk/make/tools/CharsetMapping/IBM918.map
new file mode 100644
index 00000000000..23739314781
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM918.map
@@ -0,0 +1,257 @@
+#Generated from IBM918.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+009c
+0x05 U+0009
+0x06 U+0086
+0x07 U+007f
+0x08 U+0097
+0x09 U+008d
+0x0a U+008e
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+009d
+0x15 U+000a
+0x16 U+0008
+0x17 U+0087
+0x18 U+0018
+0x19 U+0019
+0x1a U+0092
+0x1b U+008f
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0080
+0x21 U+0081
+0x22 U+0082
+0x23 U+0083
+0x24 U+0084
+0x25 U+000a
+0x26 U+0017
+0x27 U+001b
+0x28 U+0088
+0x29 U+0089
+0x2a U+008a
+0x2b U+008b
+0x2c U+008c
+0x2d U+0005
+0x2e U+0006
+0x2f U+0007
+0x30 U+0090
+0x31 U+0091
+0x32 U+0016
+0x33 U+0093
+0x34 U+0094
+0x35 U+0095
+0x36 U+0096
+0x37 U+0004
+0x38 U+0098
+0x39 U+0099
+0x3a U+009a
+0x3b U+009b
+0x3c U+0014
+0x3d U+0015
+0x3e U+009e
+0x3f U+001a
+0x40 U+0020
+0x41 U+00a0
+0x42 U+060c
+0x43 U+061b
+0x44 U+061f
+0x45 U+fe81
+0x46 U+fe8d
+0x47 U+fe8e
+0x48 U+f8fb
+0x49 U+fe8f
+0x4a U+005b
+0x4b U+002e
+0x4c U+003c
+0x4d U+0028
+0x4e U+002b
+0x4f U+0021
+0x50 U+0026
+0x51 U+fe91
+0x52 U+fb56
+0x53 U+fb58
+0x54 U+fe93
+0x55 U+fe95
+0x56 U+fe97
+0x57 U+fb66
+0x58 U+fb68
+0x59 U+fe99
+0x5a U+005d
+0x5b U+0024
+0x5c U+002a
+0x5d U+0029
+0x5e U+003b
+0x5f U+005e
+0x60 U+002d
+0x61 U+002f
+0x62 U+fe9b
+0x63 U+fe9d
+0x64 U+fe9f
+0x65 U+fb7a
+0x66 U+fb7c
+0x67 U+fea1
+0x68 U+fea3
+0x69 U+fea5
+0x6a U+0060
+0x6b U+002c
+0x6c U+0025
+0x6d U+005f
+0x6e U+003e
+0x6f U+003f
+0x70 U+06f0
+0x71 U+06f1
+0x72 U+06f2
+0x73 U+06f3
+0x74 U+06f4
+0x75 U+06f5
+0x76 U+06f6
+0x77 U+06f7
+0x78 U+06f8
+0x79 U+06f9
+0x7a U+003a
+0x7b U+0023
+0x7c U+0040
+0x7d U+0027
+0x7e U+003d
+0x7f U+0022
+0x80 U+fea7
+0x81 U+0061
+0x82 U+0062
+0x83 U+0063
+0x84 U+0064
+0x85 U+0065
+0x86 U+0066
+0x87 U+0067
+0x88 U+0068
+0x89 U+0069
+0x8a U+fea9
+0x8b U+fb88
+0x8c U+feab
+0x8d U+fead
+0x8e U+fb8c
+0x8f U+feaf
+0x90 U+fb8a
+0x91 U+006a
+0x92 U+006b
+0x93 U+006c
+0x94 U+006d
+0x95 U+006e
+0x96 U+006f
+0x97 U+0070
+0x98 U+0071
+0x99 U+0072
+0x9a U+feb1
+0x9b U+feb3
+0x9c U+feb5
+0x9d U+feb7
+0x9e U+feb9
+0x9f U+febb
+0xa0 U+febd
+0xa1 U+007e
+0xa2 U+0073
+0xa3 U+0074
+0xa4 U+0075
+0xa5 U+0076
+0xa6 U+0077
+0xa7 U+0078
+0xa8 U+0079
+0xa9 U+007a
+0xaa U+febf
+0xab U+fec3
+0xac U+fec7
+0xad U+fec9
+0xae U+feca
+0xaf U+fecb
+0xb0 U+fecc
+0xb1 U+fecd
+0xb2 U+fece
+0xb3 U+fecf
+0xb4 U+fed0
+0xb5 U+fed1
+0xb6 U+fed3
+0xb7 U+fed5
+0xb8 U+fed7
+0xb9 U+fb8e
+0xba U+fedb
+0xbb U+007c
+0xbc U+fb92
+0xbd U+fb94
+0xbe U+fedd
+0xbf U+fedf
+0xc0 U+007b
+0xc1 U+0041
+0xc2 U+0042
+0xc3 U+0043
+0xc4 U+0044
+0xc5 U+0045
+0xc6 U+0046
+0xc7 U+0047
+0xc8 U+0048
+0xc9 U+0049
+0xca U+00ad
+0xcb U+fee0
+0xcc U+fee1
+0xcd U+fee3
+0xce U+fb9e
+0xcf U+fee5
+0xd0 U+007d
+0xd1 U+004a
+0xd2 U+004b
+0xd3 U+004c
+0xd4 U+004d
+0xd5 U+004e
+0xd6 U+004f
+0xd7 U+0050
+0xd8 U+0051
+0xd9 U+0052
+0xda U+fee7
+0xdb U+fe85
+0xdc U+feed
+0xdd U+fba6
+0xde U+fba8
+0xdf U+fba9
+0xe0 U+005c
+0xe1 U+fbaa
+0xe2 U+0053
+0xe3 U+0054
+0xe4 U+0055
+0xe5 U+0056
+0xe6 U+0057
+0xe7 U+0058
+0xe8 U+0059
+0xe9 U+005a
+0xea U+fe80
+0xeb U+fe89
+0xec U+fe8a
+0xed U+fe8b
+0xee U+fbfc
+0xef U+fbfd
+0xf0 U+0030
+0xf1 U+0031
+0xf2 U+0032
+0xf3 U+0033
+0xf4 U+0034
+0xf5 U+0035
+0xf6 U+0036
+0xf7 U+0037
+0xf8 U+0038
+0xf9 U+0039
+0xfa U+fbfe
+0xfb U+fbb0
+0xfc U+fbae
+0xfd U+fe7c
+0xfe U+fe7d
+0xff U+009f
diff --git a/jdk/make/tools/CharsetMapping/IBM918.nr b/jdk/make/tools/CharsetMapping/IBM918.nr
new file mode 100644
index 00000000000..675451906d4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM918.nr
@@ -0,0 +1 @@
+0x25 U+000a
diff --git a/jdk/make/tools/CharsetMapping/IBM921.map b/jdk/make/tools/CharsetMapping/IBM921.map
new file mode 100644
index 00000000000..48487754d94
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM921.map
@@ -0,0 +1,257 @@
+#Generated from IBM921.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+201d
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+201e
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00d8
+0xa9 U+00a9
+0xaa U+0156
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00c6
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+201c
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00f8
+0xb9 U+00b9
+0xba U+0157
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00e6
+0xc0 U+0104
+0xc1 U+012e
+0xc2 U+0100
+0xc3 U+0106
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+0118
+0xc7 U+0112
+0xc8 U+010c
+0xc9 U+00c9
+0xca U+0179
+0xcb U+0116
+0xcc U+0122
+0xcd U+0136
+0xce U+012a
+0xcf U+013b
+0xd0 U+0160
+0xd1 U+0143
+0xd2 U+0145
+0xd3 U+00d3
+0xd4 U+014c
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+0172
+0xd9 U+0141
+0xda U+015a
+0xdb U+016a
+0xdc U+00dc
+0xdd U+017b
+0xde U+017d
+0xdf U+00df
+0xe0 U+0105
+0xe1 U+012f
+0xe2 U+0101
+0xe3 U+0107
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+0119
+0xe7 U+0113
+0xe8 U+010d
+0xe9 U+00e9
+0xea U+017a
+0xeb U+0117
+0xec U+0123
+0xed U+0137
+0xee U+012b
+0xef U+013c
+0xf0 U+0161
+0xf1 U+0144
+0xf2 U+0146
+0xf3 U+00f3
+0xf4 U+014d
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+0173
+0xf9 U+0142
+0xfa U+015b
+0xfb U+016b
+0xfc U+00fc
+0xfd U+017c
+0xfe U+017e
+0xff U+2019
diff --git a/jdk/make/tools/CharsetMapping/IBM922.map b/jdk/make/tools/CharsetMapping/IBM922.map
new file mode 100644
index 00000000000..bda95197706
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/IBM922.map
@@ -0,0 +1,257 @@
+#Generated from IBM922.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+00a1
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+00aa
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+203e
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+00b9
+0xba U+00ba
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00bf
+0xc0 U+00c0
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+00c3
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+00c6
+0xc7 U+00c7
+0xc8 U+00c8
+0xc9 U+00c9
+0xca U+00ca
+0xcb U+00cb
+0xcc U+00cc
+0xcd U+00cd
+0xce U+00ce
+0xcf U+00cf
+0xd0 U+0160
+0xd1 U+00d1
+0xd2 U+00d2
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+00d8
+0xd9 U+00d9
+0xda U+00da
+0xdb U+00db
+0xdc U+00dc
+0xdd U+00dd
+0xde U+017d
+0xdf U+00df
+0xe0 U+00e0
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+00e3
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+00e6
+0xe7 U+00e7
+0xe8 U+00e8
+0xe9 U+00e9
+0xea U+00ea
+0xeb U+00eb
+0xec U+00ec
+0xed U+00ed
+0xee U+00ee
+0xef U+00ef
+0xf0 U+0161
+0xf1 U+00f1
+0xf2 U+00f2
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+00f8
+0xf9 U+00f9
+0xfa U+00fa
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+00fd
+0xfe U+017e
+0xff U+00ff
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_11.map b/jdk/make/tools/CharsetMapping/ISO_8859_11.map
new file mode 100644
index 00000000000..67f75d851cf
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_11.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_11.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+0e01
+0xa2 U+0e02
+0xa3 U+0e03
+0xa4 U+0e04
+0xa5 U+0e05
+0xa6 U+0e06
+0xa7 U+0e07
+0xa8 U+0e08
+0xa9 U+0e09
+0xaa U+0e0a
+0xab U+0e0b
+0xac U+0e0c
+0xad U+0e0d
+0xae U+0e0e
+0xaf U+0e0f
+0xb0 U+0e10
+0xb1 U+0e11
+0xb2 U+0e12
+0xb3 U+0e13
+0xb4 U+0e14
+0xb5 U+0e15
+0xb6 U+0e16
+0xb7 U+0e17
+0xb8 U+0e18
+0xb9 U+0e19
+0xba U+0e1a
+0xbb U+0e1b
+0xbc U+0e1c
+0xbd U+0e1d
+0xbe U+0e1e
+0xbf U+0e1f
+0xc0 U+0e20
+0xc1 U+0e21
+0xc2 U+0e22
+0xc3 U+0e23
+0xc4 U+0e24
+0xc5 U+0e25
+0xc6 U+0e26
+0xc7 U+0e27
+0xc8 U+0e28
+0xc9 U+0e29
+0xca U+0e2a
+0xcb U+0e2b
+0xcc U+0e2c
+0xcd U+0e2d
+0xce U+0e2e
+0xcf U+0e2f
+0xd0 U+0e30
+0xd1 U+0e31
+0xd2 U+0e32
+0xd3 U+0e33
+0xd4 U+0e34
+0xd5 U+0e35
+0xd6 U+0e36
+0xd7 U+0e37
+0xd8 U+0e38
+0xd9 U+0e39
+0xda U+0e3a
+0xdb U+fffd
+0xdc U+fffd
+0xdd U+fffd
+0xde U+fffd
+0xdf U+0e3f
+0xe0 U+0e40
+0xe1 U+0e41
+0xe2 U+0e42
+0xe3 U+0e43
+0xe4 U+0e44
+0xe5 U+0e45
+0xe6 U+0e46
+0xe7 U+0e47
+0xe8 U+0e48
+0xe9 U+0e49
+0xea U+0e4a
+0xeb U+0e4b
+0xec U+0e4c
+0xed U+0e4d
+0xee U+0e4e
+0xef U+0e4f
+0xf0 U+0e50
+0xf1 U+0e51
+0xf2 U+0e52
+0xf3 U+0e53
+0xf4 U+0e54
+0xf5 U+0e55
+0xf6 U+0e56
+0xf7 U+0e57
+0xf8 U+0e58
+0xf9 U+0e59
+0xfa U+0e5a
+0xfb U+0e5b
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_13.map b/jdk/make/tools/CharsetMapping/ISO_8859_13.map
new file mode 100644
index 00000000000..b06dc749c29
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_13.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_13.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+201d
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+201e
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00d8
+0xa9 U+00a9
+0xaa U+0156
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00c6
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+201c
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00f8
+0xb9 U+00b9
+0xba U+0157
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00e6
+0xc0 U+0104
+0xc1 U+012e
+0xc2 U+0100
+0xc3 U+0106
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+0118
+0xc7 U+0112
+0xc8 U+010c
+0xc9 U+00c9
+0xca U+0179
+0xcb U+0116
+0xcc U+0122
+0xcd U+0136
+0xce U+012a
+0xcf U+013b
+0xd0 U+0160
+0xd1 U+0143
+0xd2 U+0145
+0xd3 U+00d3
+0xd4 U+014c
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+0172
+0xd9 U+0141
+0xda U+015a
+0xdb U+016a
+0xdc U+00dc
+0xdd U+017b
+0xde U+017d
+0xdf U+00df
+0xe0 U+0105
+0xe1 U+012f
+0xe2 U+0101
+0xe3 U+0107
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+0119
+0xe7 U+0113
+0xe8 U+010d
+0xe9 U+00e9
+0xea U+017a
+0xeb U+0117
+0xec U+0123
+0xed U+0137
+0xee U+012b
+0xef U+013c
+0xf0 U+0161
+0xf1 U+0144
+0xf2 U+0146
+0xf3 U+00f3
+0xf4 U+014d
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+0173
+0xf9 U+0142
+0xfa U+015b
+0xfb U+016b
+0xfc U+00fc
+0xfd U+017c
+0xfe U+017e
+0xff U+2019
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_15.map b/jdk/make/tools/CharsetMapping/ISO_8859_15.map
new file mode 100644
index 00000000000..b75e3c6a342
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_15.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_15.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+00a1
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+20ac
+0xa5 U+00a5
+0xa6 U+0160
+0xa7 U+00a7
+0xa8 U+0161
+0xa9 U+00a9
+0xaa U+00aa
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+017d
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+017e
+0xb9 U+00b9
+0xba U+00ba
+0xbb U+00bb
+0xbc U+0152
+0xbd U+0153
+0xbe U+0178
+0xbf U+00bf
+0xc0 U+00c0
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+00c3
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+00c6
+0xc7 U+00c7
+0xc8 U+00c8
+0xc9 U+00c9
+0xca U+00ca
+0xcb U+00cb
+0xcc U+00cc
+0xcd U+00cd
+0xce U+00ce
+0xcf U+00cf
+0xd0 U+00d0
+0xd1 U+00d1
+0xd2 U+00d2
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+00d8
+0xd9 U+00d9
+0xda U+00da
+0xdb U+00db
+0xdc U+00dc
+0xdd U+00dd
+0xde U+00de
+0xdf U+00df
+0xe0 U+00e0
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+00e3
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+00e6
+0xe7 U+00e7
+0xe8 U+00e8
+0xe9 U+00e9
+0xea U+00ea
+0xeb U+00eb
+0xec U+00ec
+0xed U+00ed
+0xee U+00ee
+0xef U+00ef
+0xf0 U+00f0
+0xf1 U+00f1
+0xf2 U+00f2
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+00f8
+0xf9 U+00f9
+0xfa U+00fa
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+00fd
+0xfe U+00fe
+0xff U+00ff
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_2.map b/jdk/make/tools/CharsetMapping/ISO_8859_2.map
new file mode 100644
index 00000000000..e3c264b0141
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_2.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_2.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+0104
+0xa2 U+02d8
+0xa3 U+0141
+0xa4 U+00a4
+0xa5 U+013d
+0xa6 U+015a
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+0160
+0xaa U+015e
+0xab U+0164
+0xac U+0179
+0xad U+00ad
+0xae U+017d
+0xaf U+017b
+0xb0 U+00b0
+0xb1 U+0105
+0xb2 U+02db
+0xb3 U+0142
+0xb4 U+00b4
+0xb5 U+013e
+0xb6 U+015b
+0xb7 U+02c7
+0xb8 U+00b8
+0xb9 U+0161
+0xba U+015f
+0xbb U+0165
+0xbc U+017a
+0xbd U+02dd
+0xbe U+017e
+0xbf U+017c
+0xc0 U+0154
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+0102
+0xc4 U+00c4
+0xc5 U+0139
+0xc6 U+0106
+0xc7 U+00c7
+0xc8 U+010c
+0xc9 U+00c9
+0xca U+0118
+0xcb U+00cb
+0xcc U+011a
+0xcd U+00cd
+0xce U+00ce
+0xcf U+010e
+0xd0 U+0110
+0xd1 U+0143
+0xd2 U+0147
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+0150
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+0158
+0xd9 U+016e
+0xda U+00da
+0xdb U+0170
+0xdc U+00dc
+0xdd U+00dd
+0xde U+0162
+0xdf U+00df
+0xe0 U+0155
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+0103
+0xe4 U+00e4
+0xe5 U+013a
+0xe6 U+0107
+0xe7 U+00e7
+0xe8 U+010d
+0xe9 U+00e9
+0xea U+0119
+0xeb U+00eb
+0xec U+011b
+0xed U+00ed
+0xee U+00ee
+0xef U+010f
+0xf0 U+0111
+0xf1 U+0144
+0xf2 U+0148
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+0151
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+0159
+0xf9 U+016f
+0xfa U+00fa
+0xfb U+0171
+0xfc U+00fc
+0xfd U+00fd
+0xfe U+0163
+0xff U+02d9
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_3.map b/jdk/make/tools/CharsetMapping/ISO_8859_3.map
new file mode 100644
index 00000000000..748bd267f90
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_3.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_3.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+0126
+0xa2 U+02d8
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+fffd
+0xa6 U+0124
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+0130
+0xaa U+015e
+0xab U+011e
+0xac U+0134
+0xad U+00ad
+0xae U+fffd
+0xaf U+017b
+0xb0 U+00b0
+0xb1 U+0127
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+0125
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+0131
+0xba U+015f
+0xbb U+011f
+0xbc U+0135
+0xbd U+00bd
+0xbe U+fffd
+0xbf U+017c
+0xc0 U+00c0
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+fffd
+0xc4 U+00c4
+0xc5 U+010a
+0xc6 U+0108
+0xc7 U+00c7
+0xc8 U+00c8
+0xc9 U+00c9
+0xca U+00ca
+0xcb U+00cb
+0xcc U+00cc
+0xcd U+00cd
+0xce U+00ce
+0xcf U+00cf
+0xd0 U+fffd
+0xd1 U+00d1
+0xd2 U+00d2
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+0120
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+011c
+0xd9 U+00d9
+0xda U+00da
+0xdb U+00db
+0xdc U+00dc
+0xdd U+016c
+0xde U+015c
+0xdf U+00df
+0xe0 U+00e0
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+fffd
+0xe4 U+00e4
+0xe5 U+010b
+0xe6 U+0109
+0xe7 U+00e7
+0xe8 U+00e8
+0xe9 U+00e9
+0xea U+00ea
+0xeb U+00eb
+0xec U+00ec
+0xed U+00ed
+0xee U+00ee
+0xef U+00ef
+0xf0 U+fffd
+0xf1 U+00f1
+0xf2 U+00f2
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+0121
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+011d
+0xf9 U+00f9
+0xfa U+00fa
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+016d
+0xfe U+015d
+0xff U+02d9
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_4.map b/jdk/make/tools/CharsetMapping/ISO_8859_4.map
new file mode 100644
index 00000000000..fe485427c46
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_4.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_4.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+0104
+0xa2 U+0138
+0xa3 U+0156
+0xa4 U+00a4
+0xa5 U+0128
+0xa6 U+013b
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+0160
+0xaa U+0112
+0xab U+0122
+0xac U+0166
+0xad U+00ad
+0xae U+017d
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+0105
+0xb2 U+02db
+0xb3 U+0157
+0xb4 U+00b4
+0xb5 U+0129
+0xb6 U+013c
+0xb7 U+02c7
+0xb8 U+00b8
+0xb9 U+0161
+0xba U+0113
+0xbb U+0123
+0xbc U+0167
+0xbd U+014a
+0xbe U+017e
+0xbf U+014b
+0xc0 U+0100
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+00c3
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+00c6
+0xc7 U+012e
+0xc8 U+010c
+0xc9 U+00c9
+0xca U+0118
+0xcb U+00cb
+0xcc U+0116
+0xcd U+00cd
+0xce U+00ce
+0xcf U+012a
+0xd0 U+0110
+0xd1 U+0145
+0xd2 U+014c
+0xd3 U+0136
+0xd4 U+00d4
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+00d8
+0xd9 U+0172
+0xda U+00da
+0xdb U+00db
+0xdc U+00dc
+0xdd U+0168
+0xde U+016a
+0xdf U+00df
+0xe0 U+0101
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+00e3
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+00e6
+0xe7 U+012f
+0xe8 U+010d
+0xe9 U+00e9
+0xea U+0119
+0xeb U+00eb
+0xec U+0117
+0xed U+00ed
+0xee U+00ee
+0xef U+012b
+0xf0 U+0111
+0xf1 U+0146
+0xf2 U+014d
+0xf3 U+0137
+0xf4 U+00f4
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+00f8
+0xf9 U+0173
+0xfa U+00fa
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+0169
+0xfe U+016b
+0xff U+02d9
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_5.map b/jdk/make/tools/CharsetMapping/ISO_8859_5.map
new file mode 100644
index 00000000000..d7f80137ffb
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_5.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_5.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+0401
+0xa2 U+0402
+0xa3 U+0403
+0xa4 U+0404
+0xa5 U+0405
+0xa6 U+0406
+0xa7 U+0407
+0xa8 U+0408
+0xa9 U+0409
+0xaa U+040a
+0xab U+040b
+0xac U+040c
+0xad U+00ad
+0xae U+040e
+0xaf U+040f
+0xb0 U+0410
+0xb1 U+0411
+0xb2 U+0412
+0xb3 U+0413
+0xb4 U+0414
+0xb5 U+0415
+0xb6 U+0416
+0xb7 U+0417
+0xb8 U+0418
+0xb9 U+0419
+0xba U+041a
+0xbb U+041b
+0xbc U+041c
+0xbd U+041d
+0xbe U+041e
+0xbf U+041f
+0xc0 U+0420
+0xc1 U+0421
+0xc2 U+0422
+0xc3 U+0423
+0xc4 U+0424
+0xc5 U+0425
+0xc6 U+0426
+0xc7 U+0427
+0xc8 U+0428
+0xc9 U+0429
+0xca U+042a
+0xcb U+042b
+0xcc U+042c
+0xcd U+042d
+0xce U+042e
+0xcf U+042f
+0xd0 U+0430
+0xd1 U+0431
+0xd2 U+0432
+0xd3 U+0433
+0xd4 U+0434
+0xd5 U+0435
+0xd6 U+0436
+0xd7 U+0437
+0xd8 U+0438
+0xd9 U+0439
+0xda U+043a
+0xdb U+043b
+0xdc U+043c
+0xdd U+043d
+0xde U+043e
+0xdf U+043f
+0xe0 U+0440
+0xe1 U+0441
+0xe2 U+0442
+0xe3 U+0443
+0xe4 U+0444
+0xe5 U+0445
+0xe6 U+0446
+0xe7 U+0447
+0xe8 U+0448
+0xe9 U+0449
+0xea U+044a
+0xeb U+044b
+0xec U+044c
+0xed U+044d
+0xee U+044e
+0xef U+044f
+0xf0 U+2116
+0xf1 U+0451
+0xf2 U+0452
+0xf3 U+0453
+0xf4 U+0454
+0xf5 U+0455
+0xf6 U+0456
+0xf7 U+0457
+0xf8 U+0458
+0xf9 U+0459
+0xfa U+045a
+0xfb U+045b
+0xfc U+045c
+0xfd U+00a7
+0xfe U+045e
+0xff U+045f
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_6.map b/jdk/make/tools/CharsetMapping/ISO_8859_6.map
new file mode 100644
index 00000000000..ade727b84e5
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_6.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_6.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+fffd
+0xa2 U+fffd
+0xa3 U+fffd
+0xa4 U+00a4
+0xa5 U+fffd
+0xa6 U+fffd
+0xa7 U+fffd
+0xa8 U+fffd
+0xa9 U+fffd
+0xaa U+fffd
+0xab U+fffd
+0xac U+060c
+0xad U+00ad
+0xae U+fffd
+0xaf U+fffd
+0xb0 U+fffd
+0xb1 U+fffd
+0xb2 U+fffd
+0xb3 U+fffd
+0xb4 U+fffd
+0xb5 U+fffd
+0xb6 U+fffd
+0xb7 U+fffd
+0xb8 U+fffd
+0xb9 U+fffd
+0xba U+fffd
+0xbb U+061b
+0xbc U+fffd
+0xbd U+fffd
+0xbe U+fffd
+0xbf U+061f
+0xc0 U+fffd
+0xc1 U+0621
+0xc2 U+0622
+0xc3 U+0623
+0xc4 U+0624
+0xc5 U+0625
+0xc6 U+0626
+0xc7 U+0627
+0xc8 U+0628
+0xc9 U+0629
+0xca U+062a
+0xcb U+062b
+0xcc U+062c
+0xcd U+062d
+0xce U+062e
+0xcf U+062f
+0xd0 U+0630
+0xd1 U+0631
+0xd2 U+0632
+0xd3 U+0633
+0xd4 U+0634
+0xd5 U+0635
+0xd6 U+0636
+0xd7 U+0637
+0xd8 U+0638
+0xd9 U+0639
+0xda U+063a
+0xdb U+fffd
+0xdc U+fffd
+0xdd U+fffd
+0xde U+fffd
+0xdf U+fffd
+0xe0 U+0640
+0xe1 U+0641
+0xe2 U+0642
+0xe3 U+0643
+0xe4 U+0644
+0xe5 U+0645
+0xe6 U+0646
+0xe7 U+0647
+0xe8 U+0648
+0xe9 U+0649
+0xea U+064a
+0xeb U+064b
+0xec U+064c
+0xed U+064d
+0xee U+064e
+0xef U+064f
+0xf0 U+0650
+0xf1 U+0651
+0xf2 U+0652
+0xf3 U+fffd
+0xf4 U+fffd
+0xf5 U+fffd
+0xf6 U+fffd
+0xf7 U+fffd
+0xf8 U+fffd
+0xf9 U+fffd
+0xfa U+fffd
+0xfb U+fffd
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_7.map b/jdk/make/tools/CharsetMapping/ISO_8859_7.map
new file mode 100644
index 00000000000..673902d99ec
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_7.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_7.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+2018
+0xa2 U+2019
+0xa3 U+00a3
+0xa4 U+20ac
+0xa5 U+20af
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+037a
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+fffd
+0xaf U+2015
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+0384
+0xb5 U+0385
+0xb6 U+0386
+0xb7 U+00b7
+0xb8 U+0388
+0xb9 U+0389
+0xba U+038a
+0xbb U+00bb
+0xbc U+038c
+0xbd U+00bd
+0xbe U+038e
+0xbf U+038f
+0xc0 U+0390
+0xc1 U+0391
+0xc2 U+0392
+0xc3 U+0393
+0xc4 U+0394
+0xc5 U+0395
+0xc6 U+0396
+0xc7 U+0397
+0xc8 U+0398
+0xc9 U+0399
+0xca U+039a
+0xcb U+039b
+0xcc U+039c
+0xcd U+039d
+0xce U+039e
+0xcf U+039f
+0xd0 U+03a0
+0xd1 U+03a1
+0xd2 U+fffd
+0xd3 U+03a3
+0xd4 U+03a4
+0xd5 U+03a5
+0xd6 U+03a6
+0xd7 U+03a7
+0xd8 U+03a8
+0xd9 U+03a9
+0xda U+03aa
+0xdb U+03ab
+0xdc U+03ac
+0xdd U+03ad
+0xde U+03ae
+0xdf U+03af
+0xe0 U+03b0
+0xe1 U+03b1
+0xe2 U+03b2
+0xe3 U+03b3
+0xe4 U+03b4
+0xe5 U+03b5
+0xe6 U+03b6
+0xe7 U+03b7
+0xe8 U+03b8
+0xe9 U+03b9
+0xea U+03ba
+0xeb U+03bb
+0xec U+03bc
+0xed U+03bd
+0xee U+03be
+0xef U+03bf
+0xf0 U+03c0
+0xf1 U+03c1
+0xf2 U+03c2
+0xf3 U+03c3
+0xf4 U+03c4
+0xf5 U+03c5
+0xf6 U+03c6
+0xf7 U+03c7
+0xf8 U+03c8
+0xf9 U+03c9
+0xfa U+03ca
+0xfb U+03cb
+0xfc U+03cc
+0xfd U+03cd
+0xfe U+03ce
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_8.map b/jdk/make/tools/CharsetMapping/ISO_8859_8.map
new file mode 100644
index 00000000000..aa05d5cbfa9
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_8.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_8.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+fffd
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+00d7
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+00b9
+0xba U+00f7
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+fffd
+0xc0 U+fffd
+0xc1 U+fffd
+0xc2 U+fffd
+0xc3 U+fffd
+0xc4 U+fffd
+0xc5 U+fffd
+0xc6 U+fffd
+0xc7 U+fffd
+0xc8 U+fffd
+0xc9 U+fffd
+0xca U+fffd
+0xcb U+fffd
+0xcc U+fffd
+0xcd U+fffd
+0xce U+fffd
+0xcf U+fffd
+0xd0 U+fffd
+0xd1 U+fffd
+0xd2 U+fffd
+0xd3 U+fffd
+0xd4 U+fffd
+0xd5 U+fffd
+0xd6 U+fffd
+0xd7 U+fffd
+0xd8 U+fffd
+0xd9 U+fffd
+0xda U+fffd
+0xdb U+fffd
+0xdc U+fffd
+0xdd U+fffd
+0xde U+fffd
+0xdf U+2017
+0xe0 U+05d0
+0xe1 U+05d1
+0xe2 U+05d2
+0xe3 U+05d3
+0xe4 U+05d4
+0xe5 U+05d5
+0xe6 U+05d6
+0xe7 U+05d7
+0xe8 U+05d8
+0xe9 U+05d9
+0xea U+05da
+0xeb U+05db
+0xec U+05dc
+0xed U+05dd
+0xee U+05de
+0xef U+05df
+0xf0 U+05e0
+0xf1 U+05e1
+0xf2 U+05e2
+0xf3 U+05e3
+0xf4 U+05e4
+0xf5 U+05e5
+0xf6 U+05e6
+0xf7 U+05e7
+0xf8 U+05e8
+0xf9 U+05e9
+0xfa U+05ea
+0xfb U+fffd
+0xfc U+fffd
+0xfd U+200e
+0xfe U+200f
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/ISO_8859_9.map b/jdk/make/tools/CharsetMapping/ISO_8859_9.map
new file mode 100644
index 00000000000..e3a8afb3d85
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/ISO_8859_9.map
@@ -0,0 +1,257 @@
+#Generated from ISO_8859_9.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0080
+0x81 U+0081
+0x82 U+0082
+0x83 U+0083
+0x84 U+0084
+0x85 U+0085
+0x86 U+0086
+0x87 U+0087
+0x88 U+0088
+0x89 U+0089
+0x8a U+008a
+0x8b U+008b
+0x8c U+008c
+0x8d U+008d
+0x8e U+008e
+0x8f U+008f
+0x90 U+0090
+0x91 U+0091
+0x92 U+0092
+0x93 U+0093
+0x94 U+0094
+0x95 U+0095
+0x96 U+0096
+0x97 U+0097
+0x98 U+0098
+0x99 U+0099
+0x9a U+009a
+0x9b U+009b
+0x9c U+009c
+0x9d U+009d
+0x9e U+009e
+0x9f U+009f
+0xa0 U+00a0
+0xa1 U+00a1
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+00aa
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+00b9
+0xba U+00ba
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00bf
+0xc0 U+00c0
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+00c3
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+00c6
+0xc7 U+00c7
+0xc8 U+00c8
+0xc9 U+00c9
+0xca U+00ca
+0xcb U+00cb
+0xcc U+00cc
+0xcd U+00cd
+0xce U+00ce
+0xcf U+00cf
+0xd0 U+011e
+0xd1 U+00d1
+0xd2 U+00d2
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+00d8
+0xd9 U+00d9
+0xda U+00da
+0xdb U+00db
+0xdc U+00dc
+0xdd U+0130
+0xde U+015e
+0xdf U+00df
+0xe0 U+00e0
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+00e3
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+00e6
+0xe7 U+00e7
+0xe8 U+00e8
+0xe9 U+00e9
+0xea U+00ea
+0xeb U+00eb
+0xec U+00ec
+0xed U+00ed
+0xee U+00ee
+0xef U+00ef
+0xf0 U+011f
+0xf1 U+00f1
+0xf2 U+00f2
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+00f8
+0xf9 U+00f9
+0xfa U+00fa
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+0131
+0xfe U+015f
+0xff U+00ff
diff --git a/jdk/make/tools/CharsetMapping/JIS_X_0201.map b/jdk/make/tools/CharsetMapping/JIS_X_0201.map
new file mode 100644
index 00000000000..aaa8f1150a3
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/JIS_X_0201.map
@@ -0,0 +1,257 @@
+#Generated from JIS_X_0201.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+fffd
+0x81 U+fffd
+0x82 U+fffd
+0x83 U+fffd
+0x84 U+fffd
+0x85 U+fffd
+0x86 U+fffd
+0x87 U+fffd
+0x88 U+fffd
+0x89 U+fffd
+0x8a U+fffd
+0x8b U+fffd
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+fffd
+0x92 U+fffd
+0x93 U+fffd
+0x94 U+fffd
+0x95 U+fffd
+0x96 U+fffd
+0x97 U+fffd
+0x98 U+fffd
+0x99 U+fffd
+0x9a U+fffd
+0x9b U+fffd
+0x9c U+fffd
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+fffd
+0xa0 U+fffd
+0xa1 U+ff61
+0xa2 U+ff62
+0xa3 U+ff63
+0xa4 U+ff64
+0xa5 U+ff65
+0xa6 U+ff66
+0xa7 U+ff67
+0xa8 U+ff68
+0xa9 U+ff69
+0xaa U+ff6a
+0xab U+ff6b
+0xac U+ff6c
+0xad U+ff6d
+0xae U+ff6e
+0xaf U+ff6f
+0xb0 U+ff70
+0xb1 U+ff71
+0xb2 U+ff72
+0xb3 U+ff73
+0xb4 U+ff74
+0xb5 U+ff75
+0xb6 U+ff76
+0xb7 U+ff77
+0xb8 U+ff78
+0xb9 U+ff79
+0xba U+ff7a
+0xbb U+ff7b
+0xbc U+ff7c
+0xbd U+ff7d
+0xbe U+ff7e
+0xbf U+ff7f
+0xc0 U+ff80
+0xc1 U+ff81
+0xc2 U+ff82
+0xc3 U+ff83
+0xc4 U+ff84
+0xc5 U+ff85
+0xc6 U+ff86
+0xc7 U+ff87
+0xc8 U+ff88
+0xc9 U+ff89
+0xca U+ff8a
+0xcb U+ff8b
+0xcc U+ff8c
+0xcd U+ff8d
+0xce U+ff8e
+0xcf U+ff8f
+0xd0 U+ff90
+0xd1 U+ff91
+0xd2 U+ff92
+0xd3 U+ff93
+0xd4 U+ff94
+0xd5 U+ff95
+0xd6 U+ff96
+0xd7 U+ff97
+0xd8 U+ff98
+0xd9 U+ff99
+0xda U+ff9a
+0xdb U+ff9b
+0xdc U+ff9c
+0xdd U+ff9d
+0xde U+ff9e
+0xdf U+ff9f
+0xe0 U+fffd
+0xe1 U+fffd
+0xe2 U+fffd
+0xe3 U+fffd
+0xe4 U+fffd
+0xe5 U+fffd
+0xe6 U+fffd
+0xe7 U+fffd
+0xe8 U+fffd
+0xe9 U+fffd
+0xea U+fffd
+0xeb U+fffd
+0xec U+fffd
+0xed U+fffd
+0xee U+fffd
+0xef U+fffd
+0xf0 U+fffd
+0xf1 U+fffd
+0xf2 U+fffd
+0xf3 U+fffd
+0xf4 U+fffd
+0xf5 U+fffd
+0xf6 U+fffd
+0xf7 U+fffd
+0xf8 U+fffd
+0xf9 U+fffd
+0xfa U+fffd
+0xfb U+fffd
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/KOI8_R.map b/jdk/make/tools/CharsetMapping/KOI8_R.map
new file mode 100644
index 00000000000..c13c38de4b3
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/KOI8_R.map
@@ -0,0 +1,257 @@
+#Generated from KOI8_R.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+2500
+0x81 U+2502
+0x82 U+250c
+0x83 U+2510
+0x84 U+2514
+0x85 U+2518
+0x86 U+251c
+0x87 U+2524
+0x88 U+252c
+0x89 U+2534
+0x8a U+253c
+0x8b U+2580
+0x8c U+2584
+0x8d U+2588
+0x8e U+258c
+0x8f U+2590
+0x90 U+2591
+0x91 U+2592
+0x92 U+2593
+0x93 U+2320
+0x94 U+25a0
+0x95 U+2219
+0x96 U+221a
+0x97 U+2248
+0x98 U+2264
+0x99 U+2265
+0x9a U+00a0
+0x9b U+2321
+0x9c U+00b0
+0x9d U+00b2
+0x9e U+00b7
+0x9f U+00f7
+0xa0 U+2550
+0xa1 U+2551
+0xa2 U+2552
+0xa3 U+0451
+0xa4 U+2553
+0xa5 U+2554
+0xa6 U+2555
+0xa7 U+2556
+0xa8 U+2557
+0xa9 U+2558
+0xaa U+2559
+0xab U+255a
+0xac U+255b
+0xad U+255c
+0xae U+255d
+0xaf U+255e
+0xb0 U+255f
+0xb1 U+2560
+0xb2 U+2561
+0xb3 U+0401
+0xb4 U+2562
+0xb5 U+2563
+0xb6 U+2564
+0xb7 U+2565
+0xb8 U+2566
+0xb9 U+2567
+0xba U+2568
+0xbb U+2569
+0xbc U+256a
+0xbd U+256b
+0xbe U+256c
+0xbf U+00a9
+0xc0 U+044e
+0xc1 U+0430
+0xc2 U+0431
+0xc3 U+0446
+0xc4 U+0434
+0xc5 U+0435
+0xc6 U+0444
+0xc7 U+0433
+0xc8 U+0445
+0xc9 U+0438
+0xca U+0439
+0xcb U+043a
+0xcc U+043b
+0xcd U+043c
+0xce U+043d
+0xcf U+043e
+0xd0 U+043f
+0xd1 U+044f
+0xd2 U+0440
+0xd3 U+0441
+0xd4 U+0442
+0xd5 U+0443
+0xd6 U+0436
+0xd7 U+0432
+0xd8 U+044c
+0xd9 U+044b
+0xda U+0437
+0xdb U+0448
+0xdc U+044d
+0xdd U+0449
+0xde U+0447
+0xdf U+044a
+0xe0 U+042e
+0xe1 U+0410
+0xe2 U+0411
+0xe3 U+0426
+0xe4 U+0414
+0xe5 U+0415
+0xe6 U+0424
+0xe7 U+0413
+0xe8 U+0425
+0xe9 U+0418
+0xea U+0419
+0xeb U+041a
+0xec U+041b
+0xed U+041c
+0xee U+041d
+0xef U+041e
+0xf0 U+041f
+0xf1 U+042f
+0xf2 U+0420
+0xf3 U+0421
+0xf4 U+0422
+0xf5 U+0423
+0xf6 U+0416
+0xf7 U+0412
+0xf8 U+042c
+0xf9 U+042b
+0xfa U+0417
+0xfb U+0428
+0xfc U+042d
+0xfd U+0429
+0xfe U+0427
+0xff U+042a
diff --git a/jdk/make/tools/CharsetMapping/KOI8_U.map b/jdk/make/tools/CharsetMapping/KOI8_U.map
new file mode 100644
index 00000000000..1f91e8f832d
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/KOI8_U.map
@@ -0,0 +1,257 @@
+#Generated from KOI8_U.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+2500
+0x81 U+2502
+0x82 U+250c
+0x83 U+2510
+0x84 U+2514
+0x85 U+2518
+0x86 U+251c
+0x87 U+2524
+0x88 U+252c
+0x89 U+2534
+0x8a U+253c
+0x8b U+2580
+0x8c U+2584
+0x8d U+2588
+0x8e U+258c
+0x8f U+2590
+0x90 U+2591
+0x91 U+2592
+0x92 U+2593
+0x93 U+2320
+0x94 U+25a0
+0x95 U+2219
+0x96 U+221a
+0x97 U+2248
+0x98 U+2264
+0x99 U+2265
+0x9a U+00a0
+0x9b U+2321
+0x9c U+00b0
+0x9d U+00b2
+0x9e U+00b7
+0x9f U+00f7
+0xa0 U+2550
+0xa1 U+2551
+0xa2 U+2552
+0xa3 U+0451
+0xa4 U+0454
+0xa5 U+2554
+0xa6 U+0456
+0xa7 U+0457
+0xa8 U+2557
+0xa9 U+2558
+0xaa U+2559
+0xab U+255a
+0xac U+255b
+0xad U+0491
+0xae U+255d
+0xaf U+255e
+0xb0 U+255f
+0xb1 U+2560
+0xb2 U+2561
+0xb3 U+0401
+0xb4 U+0404
+0xb5 U+2563
+0xb6 U+0406
+0xb7 U+0407
+0xb8 U+2566
+0xb9 U+2567
+0xba U+2568
+0xbb U+2569
+0xbc U+256a
+0xbd U+0490
+0xbe U+256c
+0xbf U+00a9
+0xc0 U+044e
+0xc1 U+0430
+0xc2 U+0431
+0xc3 U+0446
+0xc4 U+0434
+0xc5 U+0435
+0xc6 U+0444
+0xc7 U+0433
+0xc8 U+0445
+0xc9 U+0438
+0xca U+0439
+0xcb U+043a
+0xcc U+043b
+0xcd U+043c
+0xce U+043d
+0xcf U+043e
+0xd0 U+043f
+0xd1 U+044f
+0xd2 U+0440
+0xd3 U+0441
+0xd4 U+0442
+0xd5 U+0443
+0xd6 U+0436
+0xd7 U+0432
+0xd8 U+044c
+0xd9 U+044b
+0xda U+0437
+0xdb U+0448
+0xdc U+044d
+0xdd U+0449
+0xde U+0447
+0xdf U+044a
+0xe0 U+042e
+0xe1 U+0410
+0xe2 U+0411
+0xe3 U+0426
+0xe4 U+0414
+0xe5 U+0415
+0xe6 U+0424
+0xe7 U+0413
+0xe8 U+0425
+0xe9 U+0418
+0xea U+0419
+0xeb U+041a
+0xec U+041b
+0xed U+041c
+0xee U+041d
+0xef U+041e
+0xf0 U+041f
+0xf1 U+042f
+0xf2 U+0420
+0xf3 U+0421
+0xf4 U+0422
+0xf5 U+0423
+0xf6 U+0416
+0xf7 U+0412
+0xf8 U+042c
+0xf9 U+042b
+0xfa U+0417
+0xfb U+0428
+0xfc U+042d
+0xfd U+0429
+0xfe U+0427
+0xff U+042a
diff --git a/jdk/make/tools/CharsetMapping/MS1250.map b/jdk/make/tools/CharsetMapping/MS1250.map
new file mode 100644
index 00000000000..b88030738d7
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1250.map
@@ -0,0 +1,257 @@
+#Generated from MS1250.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+201a
+0x83 U+fffd
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+fffd
+0x89 U+2030
+0x8a U+0160
+0x8b U+2039
+0x8c U+015a
+0x8d U+0164
+0x8e U+017d
+0x8f U+0179
+0x90 U+fffd
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+fffd
+0x99 U+2122
+0x9a U+0161
+0x9b U+203a
+0x9c U+015b
+0x9d U+0165
+0x9e U+017e
+0x9f U+017a
+0xa0 U+00a0
+0xa1 U+02c7
+0xa2 U+02d8
+0xa3 U+0141
+0xa4 U+00a4
+0xa5 U+0104
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+015e
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+017b
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+02db
+0xb3 U+0142
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+0105
+0xba U+015f
+0xbb U+00bb
+0xbc U+013d
+0xbd U+02dd
+0xbe U+013e
+0xbf U+017c
+0xc0 U+0154
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+0102
+0xc4 U+00c4
+0xc5 U+0139
+0xc6 U+0106
+0xc7 U+00c7
+0xc8 U+010c
+0xc9 U+00c9
+0xca U+0118
+0xcb U+00cb
+0xcc U+011a
+0xcd U+00cd
+0xce U+00ce
+0xcf U+010e
+0xd0 U+0110
+0xd1 U+0143
+0xd2 U+0147
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+0150
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+0158
+0xd9 U+016e
+0xda U+00da
+0xdb U+0170
+0xdc U+00dc
+0xdd U+00dd
+0xde U+0162
+0xdf U+00df
+0xe0 U+0155
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+0103
+0xe4 U+00e4
+0xe5 U+013a
+0xe6 U+0107
+0xe7 U+00e7
+0xe8 U+010d
+0xe9 U+00e9
+0xea U+0119
+0xeb U+00eb
+0xec U+011b
+0xed U+00ed
+0xee U+00ee
+0xef U+010f
+0xf0 U+0111
+0xf1 U+0144
+0xf2 U+0148
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+0151
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+0159
+0xf9 U+016f
+0xfa U+00fa
+0xfb U+0171
+0xfc U+00fc
+0xfd U+00fd
+0xfe U+0163
+0xff U+02d9
diff --git a/jdk/make/tools/CharsetMapping/MS1251.map b/jdk/make/tools/CharsetMapping/MS1251.map
new file mode 100644
index 00000000000..97937f2d08e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1251.map
@@ -0,0 +1,257 @@
+#Generated from MS1251.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0402
+0x81 U+0403
+0x82 U+201a
+0x83 U+0453
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+20ac
+0x89 U+2030
+0x8a U+0409
+0x8b U+2039
+0x8c U+040a
+0x8d U+040c
+0x8e U+040b
+0x8f U+040f
+0x90 U+0452
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+fffd
+0x99 U+2122
+0x9a U+0459
+0x9b U+203a
+0x9c U+045a
+0x9d U+045c
+0x9e U+045b
+0x9f U+045f
+0xa0 U+00a0
+0xa1 U+040e
+0xa2 U+045e
+0xa3 U+0408
+0xa4 U+00a4
+0xa5 U+0490
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+0401
+0xa9 U+00a9
+0xaa U+0404
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+0407
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+0406
+0xb3 U+0456
+0xb4 U+0491
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+0451
+0xb9 U+2116
+0xba U+0454
+0xbb U+00bb
+0xbc U+0458
+0xbd U+0405
+0xbe U+0455
+0xbf U+0457
+0xc0 U+0410
+0xc1 U+0411
+0xc2 U+0412
+0xc3 U+0413
+0xc4 U+0414
+0xc5 U+0415
+0xc6 U+0416
+0xc7 U+0417
+0xc8 U+0418
+0xc9 U+0419
+0xca U+041a
+0xcb U+041b
+0xcc U+041c
+0xcd U+041d
+0xce U+041e
+0xcf U+041f
+0xd0 U+0420
+0xd1 U+0421
+0xd2 U+0422
+0xd3 U+0423
+0xd4 U+0424
+0xd5 U+0425
+0xd6 U+0426
+0xd7 U+0427
+0xd8 U+0428
+0xd9 U+0429
+0xda U+042a
+0xdb U+042b
+0xdc U+042c
+0xdd U+042d
+0xde U+042e
+0xdf U+042f
+0xe0 U+0430
+0xe1 U+0431
+0xe2 U+0432
+0xe3 U+0433
+0xe4 U+0434
+0xe5 U+0435
+0xe6 U+0436
+0xe7 U+0437
+0xe8 U+0438
+0xe9 U+0439
+0xea U+043a
+0xeb U+043b
+0xec U+043c
+0xed U+043d
+0xee U+043e
+0xef U+043f
+0xf0 U+0440
+0xf1 U+0441
+0xf2 U+0442
+0xf3 U+0443
+0xf4 U+0444
+0xf5 U+0445
+0xf6 U+0446
+0xf7 U+0447
+0xf8 U+0448
+0xf9 U+0449
+0xfa U+044a
+0xfb U+044b
+0xfc U+044c
+0xfd U+044d
+0xfe U+044e
+0xff U+044f
diff --git a/jdk/make/tools/CharsetMapping/MS1252.map b/jdk/make/tools/CharsetMapping/MS1252.map
new file mode 100644
index 00000000000..d339bc4988e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1252.map
@@ -0,0 +1,257 @@
+#Generated from MS1252.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+201a
+0x83 U+0192
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+02c6
+0x89 U+2030
+0x8a U+0160
+0x8b U+2039
+0x8c U+0152
+0x8d U+fffd
+0x8e U+017d
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+02dc
+0x99 U+2122
+0x9a U+0161
+0x9b U+203a
+0x9c U+0153
+0x9d U+fffd
+0x9e U+017e
+0x9f U+0178
+0xa0 U+00a0
+0xa1 U+00a1
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+00aa
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+00b9
+0xba U+00ba
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00bf
+0xc0 U+00c0
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+00c3
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+00c6
+0xc7 U+00c7
+0xc8 U+00c8
+0xc9 U+00c9
+0xca U+00ca
+0xcb U+00cb
+0xcc U+00cc
+0xcd U+00cd
+0xce U+00ce
+0xcf U+00cf
+0xd0 U+00d0
+0xd1 U+00d1
+0xd2 U+00d2
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+00d8
+0xd9 U+00d9
+0xda U+00da
+0xdb U+00db
+0xdc U+00dc
+0xdd U+00dd
+0xde U+00de
+0xdf U+00df
+0xe0 U+00e0
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+00e3
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+00e6
+0xe7 U+00e7
+0xe8 U+00e8
+0xe9 U+00e9
+0xea U+00ea
+0xeb U+00eb
+0xec U+00ec
+0xed U+00ed
+0xee U+00ee
+0xef U+00ef
+0xf0 U+00f0
+0xf1 U+00f1
+0xf2 U+00f2
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+00f8
+0xf9 U+00f9
+0xfa U+00fa
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+00fd
+0xfe U+00fe
+0xff U+00ff
diff --git a/jdk/make/tools/CharsetMapping/MS1253.map b/jdk/make/tools/CharsetMapping/MS1253.map
new file mode 100644
index 00000000000..714e5cd8a9e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1253.map
@@ -0,0 +1,257 @@
+#Generated from MS1253.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+201a
+0x83 U+0192
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+fffd
+0x89 U+2030
+0x8a U+fffd
+0x8b U+2039
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+fffd
+0x99 U+2122
+0x9a U+fffd
+0x9b U+203a
+0x9c U+fffd
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+fffd
+0xa0 U+00a0
+0xa1 U+0385
+0xa2 U+0386
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+fffd
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+2015
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+0384
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+0388
+0xb9 U+0389
+0xba U+038a
+0xbb U+00bb
+0xbc U+038c
+0xbd U+00bd
+0xbe U+038e
+0xbf U+038f
+0xc0 U+0390
+0xc1 U+0391
+0xc2 U+0392
+0xc3 U+0393
+0xc4 U+0394
+0xc5 U+0395
+0xc6 U+0396
+0xc7 U+0397
+0xc8 U+0398
+0xc9 U+0399
+0xca U+039a
+0xcb U+039b
+0xcc U+039c
+0xcd U+039d
+0xce U+039e
+0xcf U+039f
+0xd0 U+03a0
+0xd1 U+03a1
+0xd2 U+fffd
+0xd3 U+03a3
+0xd4 U+03a4
+0xd5 U+03a5
+0xd6 U+03a6
+0xd7 U+03a7
+0xd8 U+03a8
+0xd9 U+03a9
+0xda U+03aa
+0xdb U+03ab
+0xdc U+03ac
+0xdd U+03ad
+0xde U+03ae
+0xdf U+03af
+0xe0 U+03b0
+0xe1 U+03b1
+0xe2 U+03b2
+0xe3 U+03b3
+0xe4 U+03b4
+0xe5 U+03b5
+0xe6 U+03b6
+0xe7 U+03b7
+0xe8 U+03b8
+0xe9 U+03b9
+0xea U+03ba
+0xeb U+03bb
+0xec U+03bc
+0xed U+03bd
+0xee U+03be
+0xef U+03bf
+0xf0 U+03c0
+0xf1 U+03c1
+0xf2 U+03c2
+0xf3 U+03c3
+0xf4 U+03c4
+0xf5 U+03c5
+0xf6 U+03c6
+0xf7 U+03c7
+0xf8 U+03c8
+0xf9 U+03c9
+0xfa U+03ca
+0xfb U+03cb
+0xfc U+03cc
+0xfd U+03cd
+0xfe U+03ce
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/MS1254.map b/jdk/make/tools/CharsetMapping/MS1254.map
new file mode 100644
index 00000000000..d28277579b3
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1254.map
@@ -0,0 +1,257 @@
+#Generated from MS1254.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+201a
+0x83 U+0192
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+02c6
+0x89 U+2030
+0x8a U+0160
+0x8b U+2039
+0x8c U+0152
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+02dc
+0x99 U+2122
+0x9a U+0161
+0x9b U+203a
+0x9c U+0153
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+0178
+0xa0 U+00a0
+0xa1 U+00a1
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+00aa
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+00b9
+0xba U+00ba
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00bf
+0xc0 U+00c0
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+00c3
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+00c6
+0xc7 U+00c7
+0xc8 U+00c8
+0xc9 U+00c9
+0xca U+00ca
+0xcb U+00cb
+0xcc U+00cc
+0xcd U+00cd
+0xce U+00ce
+0xcf U+00cf
+0xd0 U+011e
+0xd1 U+00d1
+0xd2 U+00d2
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+00d8
+0xd9 U+00d9
+0xda U+00da
+0xdb U+00db
+0xdc U+00dc
+0xdd U+0130
+0xde U+015e
+0xdf U+00df
+0xe0 U+00e0
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+00e3
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+00e6
+0xe7 U+00e7
+0xe8 U+00e8
+0xe9 U+00e9
+0xea U+00ea
+0xeb U+00eb
+0xec U+00ec
+0xed U+00ed
+0xee U+00ee
+0xef U+00ef
+0xf0 U+011f
+0xf1 U+00f1
+0xf2 U+00f2
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+00f8
+0xf9 U+00f9
+0xfa U+00fa
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+0131
+0xfe U+015f
+0xff U+00ff
diff --git a/jdk/make/tools/CharsetMapping/MS1255.map b/jdk/make/tools/CharsetMapping/MS1255.map
new file mode 100644
index 00000000000..e2d2d3531a0
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1255.map
@@ -0,0 +1,257 @@
+#Generated from MS1255.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+201a
+0x83 U+0192
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+02c6
+0x89 U+2030
+0x8a U+fffd
+0x8b U+2039
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+02dc
+0x99 U+2122
+0x9a U+fffd
+0x9b U+203a
+0x9c U+fffd
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+fffd
+0xa0 U+00a0
+0xa1 U+00a1
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+20aa
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+00d7
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+00b9
+0xba U+00f7
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00bf
+0xc0 U+05b0
+0xc1 U+05b1
+0xc2 U+05b2
+0xc3 U+05b3
+0xc4 U+05b4
+0xc5 U+05b5
+0xc6 U+05b6
+0xc7 U+05b7
+0xc8 U+05b8
+0xc9 U+05b9
+0xca U+fffd
+0xcb U+05bb
+0xcc U+05bc
+0xcd U+05bd
+0xce U+05be
+0xcf U+05bf
+0xd0 U+05c0
+0xd1 U+05c1
+0xd2 U+05c2
+0xd3 U+05c3
+0xd4 U+05f0
+0xd5 U+05f1
+0xd6 U+05f2
+0xd7 U+05f3
+0xd8 U+05f4
+0xd9 U+fffd
+0xda U+fffd
+0xdb U+fffd
+0xdc U+fffd
+0xdd U+fffd
+0xde U+fffd
+0xdf U+fffd
+0xe0 U+05d0
+0xe1 U+05d1
+0xe2 U+05d2
+0xe3 U+05d3
+0xe4 U+05d4
+0xe5 U+05d5
+0xe6 U+05d6
+0xe7 U+05d7
+0xe8 U+05d8
+0xe9 U+05d9
+0xea U+05da
+0xeb U+05db
+0xec U+05dc
+0xed U+05dd
+0xee U+05de
+0xef U+05df
+0xf0 U+05e0
+0xf1 U+05e1
+0xf2 U+05e2
+0xf3 U+05e3
+0xf4 U+05e4
+0xf5 U+05e5
+0xf6 U+05e6
+0xf7 U+05e7
+0xf8 U+05e8
+0xf9 U+05e9
+0xfa U+05ea
+0xfb U+fffd
+0xfc U+fffd
+0xfd U+200e
+0xfe U+200f
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/MS1256.map b/jdk/make/tools/CharsetMapping/MS1256.map
new file mode 100644
index 00000000000..6e0142c4d18
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1256.map
@@ -0,0 +1,257 @@
+#Generated from MS1256.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+067e
+0x82 U+201a
+0x83 U+0192
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+02c6
+0x89 U+2030
+0x8a U+0679
+0x8b U+2039
+0x8c U+0152
+0x8d U+0686
+0x8e U+0698
+0x8f U+0688
+0x90 U+06af
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+06a9
+0x99 U+2122
+0x9a U+0691
+0x9b U+203a
+0x9c U+0153
+0x9d U+200c
+0x9e U+200d
+0x9f U+06ba
+0xa0 U+00a0
+0xa1 U+060c
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+06be
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+00b9
+0xba U+061b
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+061f
+0xc0 U+06c1
+0xc1 U+0621
+0xc2 U+0622
+0xc3 U+0623
+0xc4 U+0624
+0xc5 U+0625
+0xc6 U+0626
+0xc7 U+0627
+0xc8 U+0628
+0xc9 U+0629
+0xca U+062a
+0xcb U+062b
+0xcc U+062c
+0xcd U+062d
+0xce U+062e
+0xcf U+062f
+0xd0 U+0630
+0xd1 U+0631
+0xd2 U+0632
+0xd3 U+0633
+0xd4 U+0634
+0xd5 U+0635
+0xd6 U+0636
+0xd7 U+00d7
+0xd8 U+0637
+0xd9 U+0638
+0xda U+0639
+0xdb U+063a
+0xdc U+0640
+0xdd U+0641
+0xde U+0642
+0xdf U+0643
+0xe0 U+00e0
+0xe1 U+0644
+0xe2 U+00e2
+0xe3 U+0645
+0xe4 U+0646
+0xe5 U+0647
+0xe6 U+0648
+0xe7 U+00e7
+0xe8 U+00e8
+0xe9 U+00e9
+0xea U+00ea
+0xeb U+00eb
+0xec U+0649
+0xed U+064a
+0xee U+00ee
+0xef U+00ef
+0xf0 U+064b
+0xf1 U+064c
+0xf2 U+064d
+0xf3 U+064e
+0xf4 U+00f4
+0xf5 U+064f
+0xf6 U+0650
+0xf7 U+00f7
+0xf8 U+0651
+0xf9 U+00f9
+0xfa U+0652
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+200e
+0xfe U+200f
+0xff U+06d2
diff --git a/jdk/make/tools/CharsetMapping/MS1257.map b/jdk/make/tools/CharsetMapping/MS1257.map
new file mode 100644
index 00000000000..9315f2450f4
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1257.map
@@ -0,0 +1,257 @@
+#Generated from MS1257.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+201a
+0x83 U+fffd
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+fffd
+0x89 U+2030
+0x8a U+fffd
+0x8b U+2039
+0x8c U+fffd
+0x8d U+00a8
+0x8e U+02c7
+0x8f U+00b8
+0x90 U+fffd
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+fffd
+0x99 U+2122
+0x9a U+fffd
+0x9b U+203a
+0x9c U+fffd
+0x9d U+00af
+0x9e U+02db
+0x9f U+fffd
+0xa0 U+00a0
+0xa1 U+fffd
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+fffd
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00d8
+0xa9 U+00a9
+0xaa U+0156
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00c6
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00f8
+0xb9 U+00b9
+0xba U+0157
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00e6
+0xc0 U+0104
+0xc1 U+012e
+0xc2 U+0100
+0xc3 U+0106
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+0118
+0xc7 U+0112
+0xc8 U+010c
+0xc9 U+00c9
+0xca U+0179
+0xcb U+0116
+0xcc U+0122
+0xcd U+0136
+0xce U+012a
+0xcf U+013b
+0xd0 U+0160
+0xd1 U+0143
+0xd2 U+0145
+0xd3 U+00d3
+0xd4 U+014c
+0xd5 U+00d5
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+0172
+0xd9 U+0141
+0xda U+015a
+0xdb U+016a
+0xdc U+00dc
+0xdd U+017b
+0xde U+017d
+0xdf U+00df
+0xe0 U+0105
+0xe1 U+012f
+0xe2 U+0101
+0xe3 U+0107
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+0119
+0xe7 U+0113
+0xe8 U+010d
+0xe9 U+00e9
+0xea U+017a
+0xeb U+0117
+0xec U+0123
+0xed U+0137
+0xee U+012b
+0xef U+013c
+0xf0 U+0161
+0xf1 U+0144
+0xf2 U+0146
+0xf3 U+00f3
+0xf4 U+014d
+0xf5 U+00f5
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+0173
+0xf9 U+0142
+0xfa U+015b
+0xfb U+016b
+0xfc U+00fc
+0xfd U+017c
+0xfe U+017e
+0xff U+02d9
diff --git a/jdk/make/tools/CharsetMapping/MS1258.map b/jdk/make/tools/CharsetMapping/MS1258.map
new file mode 100644
index 00000000000..b557cedeaa1
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS1258.map
@@ -0,0 +1,257 @@
+#Generated from MS1258.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+201a
+0x83 U+0192
+0x84 U+201e
+0x85 U+2026
+0x86 U+2020
+0x87 U+2021
+0x88 U+02c6
+0x89 U+2030
+0x8a U+fffd
+0x8b U+2039
+0x8c U+0152
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+02dc
+0x99 U+2122
+0x9a U+fffd
+0x9b U+203a
+0x9c U+0153
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+0178
+0xa0 U+00a0
+0xa1 U+00a1
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a4
+0xa5 U+00a5
+0xa6 U+00a6
+0xa7 U+00a7
+0xa8 U+00a8
+0xa9 U+00a9
+0xaa U+00aa
+0xab U+00ab
+0xac U+00ac
+0xad U+00ad
+0xae U+00ae
+0xaf U+00af
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+00b2
+0xb3 U+00b3
+0xb4 U+00b4
+0xb5 U+00b5
+0xb6 U+00b6
+0xb7 U+00b7
+0xb8 U+00b8
+0xb9 U+00b9
+0xba U+00ba
+0xbb U+00bb
+0xbc U+00bc
+0xbd U+00bd
+0xbe U+00be
+0xbf U+00bf
+0xc0 U+00c0
+0xc1 U+00c1
+0xc2 U+00c2
+0xc3 U+0102
+0xc4 U+00c4
+0xc5 U+00c5
+0xc6 U+00c6
+0xc7 U+00c7
+0xc8 U+00c8
+0xc9 U+00c9
+0xca U+00ca
+0xcb U+00cb
+0xcc U+0300
+0xcd U+00cd
+0xce U+00ce
+0xcf U+00cf
+0xd0 U+0110
+0xd1 U+00d1
+0xd2 U+0309
+0xd3 U+00d3
+0xd4 U+00d4
+0xd5 U+01a0
+0xd6 U+00d6
+0xd7 U+00d7
+0xd8 U+00d8
+0xd9 U+00d9
+0xda U+00da
+0xdb U+00db
+0xdc U+00dc
+0xdd U+01af
+0xde U+0303
+0xdf U+00df
+0xe0 U+00e0
+0xe1 U+00e1
+0xe2 U+00e2
+0xe3 U+0103
+0xe4 U+00e4
+0xe5 U+00e5
+0xe6 U+00e6
+0xe7 U+00e7
+0xe8 U+00e8
+0xe9 U+00e9
+0xea U+00ea
+0xeb U+00eb
+0xec U+0301
+0xed U+00ed
+0xee U+00ee
+0xef U+00ef
+0xf0 U+0111
+0xf1 U+00f1
+0xf2 U+0323
+0xf3 U+00f3
+0xf4 U+00f4
+0xf5 U+01a1
+0xf6 U+00f6
+0xf7 U+00f7
+0xf8 U+00f8
+0xf9 U+00f9
+0xfa U+00fa
+0xfb U+00fb
+0xfc U+00fc
+0xfd U+01b0
+0xfe U+20ab
+0xff U+00ff
diff --git a/jdk/make/tools/CharsetMapping/MS874.map b/jdk/make/tools/CharsetMapping/MS874.map
new file mode 100644
index 00000000000..2e59d0c0ab7
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MS874.map
@@ -0,0 +1,257 @@
+#Generated from MS874.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+20ac
+0x81 U+fffd
+0x82 U+fffd
+0x83 U+fffd
+0x84 U+fffd
+0x85 U+2026
+0x86 U+fffd
+0x87 U+fffd
+0x88 U+fffd
+0x89 U+fffd
+0x8a U+fffd
+0x8b U+fffd
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+2018
+0x92 U+2019
+0x93 U+201c
+0x94 U+201d
+0x95 U+2022
+0x96 U+2013
+0x97 U+2014
+0x98 U+fffd
+0x99 U+fffd
+0x9a U+fffd
+0x9b U+fffd
+0x9c U+fffd
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+fffd
+0xa0 U+00a0
+0xa1 U+0e01
+0xa2 U+0e02
+0xa3 U+0e03
+0xa4 U+0e04
+0xa5 U+0e05
+0xa6 U+0e06
+0xa7 U+0e07
+0xa8 U+0e08
+0xa9 U+0e09
+0xaa U+0e0a
+0xab U+0e0b
+0xac U+0e0c
+0xad U+0e0d
+0xae U+0e0e
+0xaf U+0e0f
+0xb0 U+0e10
+0xb1 U+0e11
+0xb2 U+0e12
+0xb3 U+0e13
+0xb4 U+0e14
+0xb5 U+0e15
+0xb6 U+0e16
+0xb7 U+0e17
+0xb8 U+0e18
+0xb9 U+0e19
+0xba U+0e1a
+0xbb U+0e1b
+0xbc U+0e1c
+0xbd U+0e1d
+0xbe U+0e1e
+0xbf U+0e1f
+0xc0 U+0e20
+0xc1 U+0e21
+0xc2 U+0e22
+0xc3 U+0e23
+0xc4 U+0e24
+0xc5 U+0e25
+0xc6 U+0e26
+0xc7 U+0e27
+0xc8 U+0e28
+0xc9 U+0e29
+0xca U+0e2a
+0xcb U+0e2b
+0xcc U+0e2c
+0xcd U+0e2d
+0xce U+0e2e
+0xcf U+0e2f
+0xd0 U+0e30
+0xd1 U+0e31
+0xd2 U+0e32
+0xd3 U+0e33
+0xd4 U+0e34
+0xd5 U+0e35
+0xd6 U+0e36
+0xd7 U+0e37
+0xd8 U+0e38
+0xd9 U+0e39
+0xda U+0e3a
+0xdb U+fffd
+0xdc U+fffd
+0xdd U+fffd
+0xde U+fffd
+0xdf U+0e3f
+0xe0 U+0e40
+0xe1 U+0e41
+0xe2 U+0e42
+0xe3 U+0e43
+0xe4 U+0e44
+0xe5 U+0e45
+0xe6 U+0e46
+0xe7 U+0e47
+0xe8 U+0e48
+0xe9 U+0e49
+0xea U+0e4a
+0xeb U+0e4b
+0xec U+0e4c
+0xed U+0e4d
+0xee U+0e4e
+0xef U+0e4f
+0xf0 U+0e50
+0xf1 U+0e51
+0xf2 U+0e52
+0xf3 U+0e53
+0xf4 U+0e54
+0xf5 U+0e55
+0xf6 U+0e56
+0xf7 U+0e57
+0xf8 U+0e58
+0xf9 U+0e59
+0xfa U+0e5a
+0xfb U+0e5b
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/MacArabic.map b/jdk/make/tools/CharsetMapping/MacArabic.map
new file mode 100644
index 00000000000..eff2b0fdb70
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacArabic.map
@@ -0,0 +1,257 @@
+#Generated from MacArabic.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+00a0
+0x82 U+00c7
+0x83 U+00c9
+0x84 U+00d1
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+00e1
+0x88 U+00e0
+0x89 U+00e2
+0x8a U+00e4
+0x8b U+06ba
+0x8c U+00ab
+0x8d U+00e7
+0x8e U+00e9
+0x8f U+00e8
+0x90 U+00ea
+0x91 U+00eb
+0x92 U+00ed
+0x93 U+2026
+0x94 U+00ee
+0x95 U+00ef
+0x96 U+00f1
+0x97 U+00f3
+0x98 U+00bb
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00f7
+0x9c U+00fa
+0x9d U+00f9
+0x9e U+00fb
+0x9f U+00fc
+0xa0 U+fffd
+0xa1 U+fffd
+0xa2 U+fffd
+0xa3 U+fffd
+0xa4 U+fffd
+0xa5 U+066a
+0xa6 U+fffd
+0xa7 U+fffd
+0xa8 U+fffd
+0xa9 U+fffd
+0xaa U+fffd
+0xab U+fffd
+0xac U+060c
+0xad U+fffd
+0xae U+fffd
+0xaf U+fffd
+0xb0 U+0660
+0xb1 U+0661
+0xb2 U+0662
+0xb3 U+0663
+0xb4 U+0664
+0xb5 U+0665
+0xb6 U+0666
+0xb7 U+0667
+0xb8 U+0668
+0xb9 U+0669
+0xba U+fffd
+0xbb U+061b
+0xbc U+fffd
+0xbd U+fffd
+0xbe U+fffd
+0xbf U+061f
+0xc0 U+066d
+0xc1 U+0621
+0xc2 U+0622
+0xc3 U+0623
+0xc4 U+0624
+0xc5 U+0625
+0xc6 U+0626
+0xc7 U+0627
+0xc8 U+0628
+0xc9 U+0629
+0xca U+062a
+0xcb U+062b
+0xcc U+062c
+0xcd U+062d
+0xce U+062e
+0xcf U+062f
+0xd0 U+0630
+0xd1 U+0631
+0xd2 U+0632
+0xd3 U+0633
+0xd4 U+0634
+0xd5 U+0635
+0xd6 U+0636
+0xd7 U+0637
+0xd8 U+0638
+0xd9 U+0639
+0xda U+063a
+0xdb U+fffd
+0xdc U+fffd
+0xdd U+fffd
+0xde U+fffd
+0xdf U+fffd
+0xe0 U+0640
+0xe1 U+0641
+0xe2 U+0642
+0xe3 U+0643
+0xe4 U+0644
+0xe5 U+0645
+0xe6 U+0646
+0xe7 U+0647
+0xe8 U+0648
+0xe9 U+0649
+0xea U+064a
+0xeb U+064b
+0xec U+064c
+0xed U+064d
+0xee U+064e
+0xef U+064f
+0xf0 U+0650
+0xf1 U+0651
+0xf2 U+0652
+0xf3 U+067e
+0xf4 U+0679
+0xf5 U+0686
+0xf6 U+06d5
+0xf7 U+06a4
+0xf8 U+06af
+0xf9 U+0688
+0xfa U+0691
+0xfb U+fffd
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+0698
+0xff U+06d2
diff --git a/jdk/make/tools/CharsetMapping/MacCentralEurope.map b/jdk/make/tools/CharsetMapping/MacCentralEurope.map
new file mode 100644
index 00000000000..0cc49633493
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacCentralEurope.map
@@ -0,0 +1,257 @@
+#Generated from MacCentralEurope.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+0100
+0x82 U+0101
+0x83 U+00c9
+0x84 U+0104
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+00e1
+0x88 U+0105
+0x89 U+010c
+0x8a U+00e4
+0x8b U+010d
+0x8c U+0106
+0x8d U+0107
+0x8e U+00e9
+0x8f U+0179
+0x90 U+017a
+0x91 U+010e
+0x92 U+00ed
+0x93 U+010f
+0x94 U+0112
+0x95 U+0113
+0x96 U+0116
+0x97 U+00f3
+0x98 U+0117
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00f5
+0x9c U+00fa
+0x9d U+011a
+0x9e U+011b
+0x9f U+00fc
+0xa0 U+2020
+0xa1 U+00b0
+0xa2 U+0118
+0xa3 U+00a3
+0xa4 U+00a7
+0xa5 U+2022
+0xa6 U+00b6
+0xa7 U+00df
+0xa8 U+00ae
+0xa9 U+00a9
+0xaa U+2122
+0xab U+0119
+0xac U+00a8
+0xad U+2260
+0xae U+0123
+0xaf U+012e
+0xb0 U+012f
+0xb1 U+012a
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+012b
+0xb5 U+0136
+0xb6 U+2202
+0xb7 U+2211
+0xb8 U+0142
+0xb9 U+013b
+0xba U+013c
+0xbb U+013d
+0xbc U+013e
+0xbd U+0139
+0xbe U+013a
+0xbf U+0145
+0xc0 U+0146
+0xc1 U+0143
+0xc2 U+00ac
+0xc3 U+221a
+0xc4 U+0144
+0xc5 U+0147
+0xc6 U+2206
+0xc7 U+00ab
+0xc8 U+00bb
+0xc9 U+2026
+0xca U+00a0
+0xcb U+0148
+0xcc U+0150
+0xcd U+00d5
+0xce U+0151
+0xcf U+014c
+0xd0 U+2013
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+25ca
+0xd8 U+014d
+0xd9 U+0154
+0xda U+0155
+0xdb U+0158
+0xdc U+2039
+0xdd U+203a
+0xde U+0159
+0xdf U+0156
+0xe0 U+0157
+0xe1 U+0160
+0xe2 U+201a
+0xe3 U+201e
+0xe4 U+0161
+0xe5 U+015a
+0xe6 U+015b
+0xe7 U+00c1
+0xe8 U+0164
+0xe9 U+0165
+0xea U+00cd
+0xeb U+017d
+0xec U+017e
+0xed U+016a
+0xee U+00d3
+0xef U+00d4
+0xf0 U+016b
+0xf1 U+016e
+0xf2 U+00da
+0xf3 U+016f
+0xf4 U+0170
+0xf5 U+0171
+0xf6 U+0172
+0xf7 U+0173
+0xf8 U+00dd
+0xf9 U+00fd
+0xfa U+0137
+0xfb U+017b
+0xfc U+0141
+0xfd U+017c
+0xfe U+0122
+0xff U+02c7
diff --git a/jdk/make/tools/CharsetMapping/MacCroatian.map b/jdk/make/tools/CharsetMapping/MacCroatian.map
new file mode 100644
index 00000000000..25b1bbf0850
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacCroatian.map
@@ -0,0 +1,257 @@
+#Generated from MacCroatian.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+00c5
+0x82 U+00c7
+0x83 U+00c9
+0x84 U+00d1
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+00e1
+0x88 U+00e0
+0x89 U+00e2
+0x8a U+00e4
+0x8b U+00e3
+0x8c U+00e5
+0x8d U+00e7
+0x8e U+00e9
+0x8f U+00e8
+0x90 U+00ea
+0x91 U+00eb
+0x92 U+00ed
+0x93 U+00ec
+0x94 U+00ee
+0x95 U+00ef
+0x96 U+00f1
+0x97 U+00f3
+0x98 U+00f2
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00f5
+0x9c U+00fa
+0x9d U+00f9
+0x9e U+00fb
+0x9f U+00fc
+0xa0 U+2020
+0xa1 U+00b0
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a7
+0xa5 U+2022
+0xa6 U+00b6
+0xa7 U+00df
+0xa8 U+00ae
+0xa9 U+0160
+0xaa U+2122
+0xab U+00b4
+0xac U+00a8
+0xad U+2260
+0xae U+017d
+0xaf U+00d8
+0xb0 U+221e
+0xb1 U+00b1
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+2206
+0xb5 U+00b5
+0xb6 U+2202
+0xb7 U+2211
+0xb8 U+220f
+0xb9 U+0161
+0xba U+222b
+0xbb U+00aa
+0xbc U+00ba
+0xbd U+2126
+0xbe U+017e
+0xbf U+00f8
+0xc0 U+00bf
+0xc1 U+00a1
+0xc2 U+00ac
+0xc3 U+221a
+0xc4 U+0192
+0xc5 U+2248
+0xc6 U+0106
+0xc7 U+00ab
+0xc8 U+010c
+0xc9 U+2026
+0xca U+00a0
+0xcb U+00c0
+0xcc U+00c3
+0xcd U+00d5
+0xce U+0152
+0xcf U+0153
+0xd0 U+0110
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+25ca
+0xd8 U+f8ff
+0xd9 U+00a9
+0xda U+2044
+0xdb U+00a4
+0xdc U+2039
+0xdd U+203a
+0xde U+00c6
+0xdf U+00bb
+0xe0 U+2013
+0xe1 U+00b7
+0xe2 U+201a
+0xe3 U+201e
+0xe4 U+2030
+0xe5 U+00c2
+0xe6 U+0107
+0xe7 U+00c1
+0xe8 U+010d
+0xe9 U+00c8
+0xea U+00cd
+0xeb U+00ce
+0xec U+00cf
+0xed U+00cc
+0xee U+00d3
+0xef U+00d4
+0xf0 U+0111
+0xf1 U+00d2
+0xf2 U+00da
+0xf3 U+00db
+0xf4 U+00d9
+0xf5 U+0131
+0xf6 U+02c6
+0xf7 U+02dc
+0xf8 U+00af
+0xf9 U+03c0
+0xfa U+00cb
+0xfb U+02da
+0xfc U+00b8
+0xfd U+00ca
+0xfe U+00e6
+0xff U+02c7
diff --git a/jdk/make/tools/CharsetMapping/MacCyrillic.map b/jdk/make/tools/CharsetMapping/MacCyrillic.map
new file mode 100644
index 00000000000..ab2ff857b0f
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacCyrillic.map
@@ -0,0 +1,257 @@
+#Generated from MacCyrillic.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0410
+0x81 U+0411
+0x82 U+0412
+0x83 U+0413
+0x84 U+0414
+0x85 U+0415
+0x86 U+0416
+0x87 U+0417
+0x88 U+0418
+0x89 U+0419
+0x8a U+041a
+0x8b U+041b
+0x8c U+041c
+0x8d U+041d
+0x8e U+041e
+0x8f U+041f
+0x90 U+0420
+0x91 U+0421
+0x92 U+0422
+0x93 U+0423
+0x94 U+0424
+0x95 U+0425
+0x96 U+0426
+0x97 U+0427
+0x98 U+0428
+0x99 U+0429
+0x9a U+042a
+0x9b U+042b
+0x9c U+042c
+0x9d U+042d
+0x9e U+042e
+0x9f U+042f
+0xa0 U+2020
+0xa1 U+00b0
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a7
+0xa5 U+2022
+0xa6 U+00b6
+0xa7 U+0406
+0xa8 U+00ae
+0xa9 U+00a9
+0xaa U+2122
+0xab U+0402
+0xac U+0452
+0xad U+2260
+0xae U+0403
+0xaf U+0453
+0xb0 U+221e
+0xb1 U+00b1
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+0456
+0xb5 U+00b5
+0xb6 U+2202
+0xb7 U+0408
+0xb8 U+0404
+0xb9 U+0454
+0xba U+0407
+0xbb U+0457
+0xbc U+0409
+0xbd U+0459
+0xbe U+040a
+0xbf U+045a
+0xc0 U+0458
+0xc1 U+0405
+0xc2 U+00ac
+0xc3 U+221a
+0xc4 U+0192
+0xc5 U+2248
+0xc6 U+2206
+0xc7 U+00ab
+0xc8 U+00bb
+0xc9 U+2026
+0xca U+00a0
+0xcb U+040b
+0xcc U+045b
+0xcd U+040c
+0xce U+045c
+0xcf U+0455
+0xd0 U+2013
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+201e
+0xd8 U+040e
+0xd9 U+045e
+0xda U+040f
+0xdb U+045f
+0xdc U+2116
+0xdd U+0401
+0xde U+0451
+0xdf U+044f
+0xe0 U+0430
+0xe1 U+0431
+0xe2 U+0432
+0xe3 U+0433
+0xe4 U+0434
+0xe5 U+0435
+0xe6 U+0436
+0xe7 U+0437
+0xe8 U+0438
+0xe9 U+0439
+0xea U+043a
+0xeb U+043b
+0xec U+043c
+0xed U+043d
+0xee U+043e
+0xef U+043f
+0xf0 U+0440
+0xf1 U+0441
+0xf2 U+0442
+0xf3 U+0443
+0xf4 U+0444
+0xf5 U+0445
+0xf6 U+0446
+0xf7 U+0447
+0xf8 U+0448
+0xf9 U+0449
+0xfa U+044a
+0xfb U+044b
+0xfc U+044c
+0xfd U+044d
+0xfe U+044e
+0xff U+00a4
diff --git a/jdk/make/tools/CharsetMapping/MacDingbat.map b/jdk/make/tools/CharsetMapping/MacDingbat.map
new file mode 100644
index 00000000000..93abacaf434
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacDingbat.map
@@ -0,0 +1,257 @@
+#Generated from MacDingbat.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+2701
+0x22 U+2702
+0x23 U+2703
+0x24 U+2704
+0x25 U+260e
+0x26 U+2706
+0x27 U+2707
+0x28 U+2708
+0x29 U+2709
+0x2a U+261b
+0x2b U+261e
+0x2c U+270c
+0x2d U+270d
+0x2e U+270e
+0x2f U+270f
+0x30 U+2710
+0x31 U+2711
+0x32 U+2712
+0x33 U+2713
+0x34 U+2714
+0x35 U+2715
+0x36 U+2716
+0x37 U+2717
+0x38 U+2718
+0x39 U+2719
+0x3a U+271a
+0x3b U+271b
+0x3c U+271c
+0x3d U+271d
+0x3e U+271e
+0x3f U+271f
+0x40 U+2720
+0x41 U+2721
+0x42 U+2722
+0x43 U+2723
+0x44 U+2724
+0x45 U+2725
+0x46 U+2726
+0x47 U+2727
+0x48 U+2605
+0x49 U+2729
+0x4a U+272a
+0x4b U+272b
+0x4c U+272c
+0x4d U+272d
+0x4e U+272e
+0x4f U+272f
+0x50 U+2730
+0x51 U+2731
+0x52 U+2732
+0x53 U+2733
+0x54 U+2734
+0x55 U+2735
+0x56 U+2736
+0x57 U+2737
+0x58 U+2738
+0x59 U+2739
+0x5a U+273a
+0x5b U+273b
+0x5c U+273c
+0x5d U+273d
+0x5e U+273e
+0x5f U+273f
+0x60 U+2740
+0x61 U+2741
+0x62 U+2742
+0x63 U+2743
+0x64 U+2744
+0x65 U+2745
+0x66 U+2746
+0x67 U+2747
+0x68 U+2748
+0x69 U+2749
+0x6a U+274a
+0x6b U+274b
+0x6c U+25cf
+0x6d U+274d
+0x6e U+25a0
+0x6f U+274f
+0x70 U+2750
+0x71 U+2751
+0x72 U+2752
+0x73 U+25b2
+0x74 U+25bc
+0x75 U+25c6
+0x76 U+2756
+0x77 U+25d7
+0x78 U+2758
+0x79 U+2759
+0x7a U+275a
+0x7b U+275b
+0x7c U+275c
+0x7d U+275d
+0x7e U+275e
+0x7f U+007f
+0x80 U+fffd
+0x81 U+fffd
+0x82 U+fffd
+0x83 U+fffd
+0x84 U+fffd
+0x85 U+fffd
+0x86 U+fffd
+0x87 U+fffd
+0x88 U+fffd
+0x89 U+fffd
+0x8a U+fffd
+0x8b U+fffd
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+fffd
+0x92 U+fffd
+0x93 U+fffd
+0x94 U+fffd
+0x95 U+fffd
+0x96 U+fffd
+0x97 U+fffd
+0x98 U+fffd
+0x99 U+fffd
+0x9a U+fffd
+0x9b U+fffd
+0x9c U+fffd
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+fffd
+0xa0 U+fffd
+0xa1 U+2761
+0xa2 U+2762
+0xa3 U+2763
+0xa4 U+2764
+0xa5 U+2765
+0xa6 U+2766
+0xa7 U+2767
+0xa8 U+2663
+0xa9 U+2666
+0xaa U+2665
+0xab U+2660
+0xac U+2460
+0xad U+2461
+0xae U+2462
+0xaf U+2463
+0xb0 U+2464
+0xb1 U+2465
+0xb2 U+2466
+0xb3 U+2467
+0xb4 U+2468
+0xb5 U+2469
+0xb6 U+2776
+0xb7 U+2777
+0xb8 U+2778
+0xb9 U+2779
+0xba U+277a
+0xbb U+277b
+0xbc U+277c
+0xbd U+277d
+0xbe U+277e
+0xbf U+277f
+0xc0 U+2780
+0xc1 U+2781
+0xc2 U+2782
+0xc3 U+2783
+0xc4 U+2784
+0xc5 U+2785
+0xc6 U+2786
+0xc7 U+2787
+0xc8 U+2788
+0xc9 U+2789
+0xca U+278a
+0xcb U+278b
+0xcc U+278c
+0xcd U+278d
+0xce U+278e
+0xcf U+278f
+0xd0 U+2790
+0xd1 U+2791
+0xd2 U+2792
+0xd3 U+2793
+0xd4 U+2794
+0xd5 U+2192
+0xd6 U+2194
+0xd7 U+2195
+0xd8 U+2798
+0xd9 U+2799
+0xda U+279a
+0xdb U+279b
+0xdc U+279c
+0xdd U+279d
+0xde U+279e
+0xdf U+279f
+0xe0 U+27a0
+0xe1 U+27a1
+0xe2 U+27a2
+0xe3 U+27a3
+0xe4 U+27a4
+0xe5 U+27a5
+0xe6 U+27a6
+0xe7 U+27a7
+0xe8 U+27a8
+0xe9 U+27a9
+0xea U+27aa
+0xeb U+27ab
+0xec U+27ac
+0xed U+27ad
+0xee U+27ae
+0xef U+27af
+0xf0 U+fffd
+0xf1 U+27b1
+0xf2 U+27b2
+0xf3 U+27b3
+0xf4 U+27b4
+0xf5 U+27b5
+0xf6 U+27b6
+0xf7 U+27b7
+0xf8 U+27b8
+0xf9 U+27b9
+0xfa U+27ba
+0xfb U+27bb
+0xfc U+27bc
+0xfd U+27bd
+0xfe U+27be
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/MacGreek.map b/jdk/make/tools/CharsetMapping/MacGreek.map
new file mode 100644
index 00000000000..aa88a24314f
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacGreek.map
@@ -0,0 +1,257 @@
+#Generated from MacGreek.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+00b9
+0x82 U+00b2
+0x83 U+00c9
+0x84 U+00b3
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+0385
+0x88 U+00e0
+0x89 U+00e2
+0x8a U+00e4
+0x8b U+0384
+0x8c U+00a8
+0x8d U+00e7
+0x8e U+00e9
+0x8f U+00e8
+0x90 U+00ea
+0x91 U+00eb
+0x92 U+00a3
+0x93 U+2122
+0x94 U+00ee
+0x95 U+00ef
+0x96 U+2022
+0x97 U+00bd
+0x98 U+2030
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00a6
+0x9c U+00ad
+0x9d U+00f9
+0x9e U+00fb
+0x9f U+00fc
+0xa0 U+2020
+0xa1 U+0393
+0xa2 U+0394
+0xa3 U+0398
+0xa4 U+039b
+0xa5 U+039e
+0xa6 U+03a0
+0xa7 U+00df
+0xa8 U+00ae
+0xa9 U+00a9
+0xaa U+03a3
+0xab U+03aa
+0xac U+00a7
+0xad U+2260
+0xae U+00b0
+0xaf U+0387
+0xb0 U+0391
+0xb1 U+00b1
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+00a5
+0xb5 U+0392
+0xb6 U+0395
+0xb7 U+0396
+0xb8 U+0397
+0xb9 U+0399
+0xba U+039a
+0xbb U+039c
+0xbc U+03a6
+0xbd U+03ab
+0xbe U+03a8
+0xbf U+03a9
+0xc0 U+03ac
+0xc1 U+039d
+0xc2 U+00ac
+0xc3 U+039f
+0xc4 U+03a1
+0xc5 U+2248
+0xc6 U+03a4
+0xc7 U+00ab
+0xc8 U+00bb
+0xc9 U+2026
+0xca U+00a0
+0xcb U+03a5
+0xcc U+03a7
+0xcd U+0386
+0xce U+0388
+0xcf U+0153
+0xd0 U+2013
+0xd1 U+2015
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+0389
+0xd8 U+038a
+0xd9 U+038c
+0xda U+038e
+0xdb U+03ad
+0xdc U+03ae
+0xdd U+03af
+0xde U+03cc
+0xdf U+038f
+0xe0 U+03cd
+0xe1 U+03b1
+0xe2 U+03b2
+0xe3 U+03c8
+0xe4 U+03b4
+0xe5 U+03b5
+0xe6 U+03c6
+0xe7 U+03b3
+0xe8 U+03b7
+0xe9 U+03b9
+0xea U+03be
+0xeb U+03ba
+0xec U+03bb
+0xed U+03bc
+0xee U+03bd
+0xef U+03bf
+0xf0 U+03c0
+0xf1 U+03ce
+0xf2 U+03c1
+0xf3 U+03c3
+0xf4 U+03c4
+0xf5 U+03b8
+0xf6 U+03c9
+0xf7 U+03c2
+0xf8 U+03c7
+0xf9 U+03c5
+0xfa U+03b6
+0xfb U+03ca
+0xfc U+03cb
+0xfd U+0390
+0xfe U+03b0
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/MacHebrew.map b/jdk/make/tools/CharsetMapping/MacHebrew.map
new file mode 100644
index 00000000000..d847d1cb683
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacHebrew.map
@@ -0,0 +1,257 @@
+#Generated from MacHebrew.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+fb1f
+0x82 U+00c7
+0x83 U+00c9
+0x84 U+00d1
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+00e1
+0x88 U+00e0
+0x89 U+00e2
+0x8a U+00e4
+0x8b U+00e3
+0x8c U+00e5
+0x8d U+00e7
+0x8e U+00e9
+0x8f U+00e8
+0x90 U+00ea
+0x91 U+00eb
+0x92 U+00ed
+0x93 U+00ec
+0x94 U+00ee
+0x95 U+00ef
+0x96 U+00f1
+0x97 U+00f3
+0x98 U+00f2
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00f5
+0x9c U+00fa
+0x9d U+00f9
+0x9e U+00fb
+0x9f U+00fc
+0xa0 U+fffd
+0xa1 U+fffd
+0xa2 U+fffd
+0xa3 U+fffd
+0xa4 U+fffd
+0xa5 U+fffd
+0xa6 U+20aa
+0xa7 U+fffd
+0xa8 U+fffd
+0xa9 U+fffd
+0xaa U+fffd
+0xab U+fffd
+0xac U+fffd
+0xad U+fffd
+0xae U+fffd
+0xaf U+fffd
+0xb0 U+fffd
+0xb1 U+fffd
+0xb2 U+fffd
+0xb3 U+fffd
+0xb4 U+fffd
+0xb5 U+fffd
+0xb6 U+fffd
+0xb7 U+fffd
+0xb8 U+fffd
+0xb9 U+fffd
+0xba U+fffd
+0xbb U+fffd
+0xbc U+fffd
+0xbd U+fffd
+0xbe U+fffd
+0xbf U+fffd
+0xc0 U+fffd
+0xc1 U+201e
+0xc2 U+fffd
+0xc3 U+fffd
+0xc4 U+fffd
+0xc5 U+fffd
+0xc6 U+05bc
+0xc7 U+fb4b
+0xc8 U+fb35
+0xc9 U+2026
+0xca U+00a0
+0xcb U+05b8
+0xcc U+05b7
+0xcd U+05b5
+0xce U+05b6
+0xcf U+05b4
+0xd0 U+2013
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+fb2a
+0xd7 U+fb2b
+0xd8 U+05bf
+0xd9 U+05b0
+0xda U+05b2
+0xdb U+05b1
+0xdc U+05bb
+0xdd U+05b9
+0xde U+fffd
+0xdf U+05b3
+0xe0 U+05d0
+0xe1 U+05d1
+0xe2 U+05d2
+0xe3 U+05d3
+0xe4 U+05d4
+0xe5 U+05d5
+0xe6 U+05d6
+0xe7 U+05d7
+0xe8 U+05d8
+0xe9 U+05d9
+0xea U+05da
+0xeb U+05db
+0xec U+05dc
+0xed U+05dd
+0xee U+05de
+0xef U+05df
+0xf0 U+05e0
+0xf1 U+05e1
+0xf2 U+05e2
+0xf3 U+05e3
+0xf4 U+05e4
+0xf5 U+05e5
+0xf6 U+05e6
+0xf7 U+05e7
+0xf8 U+05e8
+0xf9 U+05e9
+0xfa U+05ea
+0xfb U+fffd
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/MacIceland.map b/jdk/make/tools/CharsetMapping/MacIceland.map
new file mode 100644
index 00000000000..b47d11a814b
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacIceland.map
@@ -0,0 +1,257 @@
+#Generated from MacIceland.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+00c5
+0x82 U+00c7
+0x83 U+00c9
+0x84 U+00d1
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+00e1
+0x88 U+00e0
+0x89 U+00e2
+0x8a U+00e4
+0x8b U+00e3
+0x8c U+00e5
+0x8d U+00e7
+0x8e U+00e9
+0x8f U+00e8
+0x90 U+00ea
+0x91 U+00eb
+0x92 U+00ed
+0x93 U+00ec
+0x94 U+00ee
+0x95 U+00ef
+0x96 U+00f1
+0x97 U+00f3
+0x98 U+00f2
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00f5
+0x9c U+00fa
+0x9d U+00f9
+0x9e U+00fb
+0x9f U+00fc
+0xa0 U+00dd
+0xa1 U+00b0
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a7
+0xa5 U+2022
+0xa6 U+00b6
+0xa7 U+00df
+0xa8 U+00ae
+0xa9 U+00a9
+0xaa U+2122
+0xab U+00b4
+0xac U+00a8
+0xad U+2260
+0xae U+00c6
+0xaf U+00d8
+0xb0 U+221e
+0xb1 U+00b1
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+00a5
+0xb5 U+00b5
+0xb6 U+2202
+0xb7 U+2211
+0xb8 U+220f
+0xb9 U+03c0
+0xba U+222b
+0xbb U+00aa
+0xbc U+00ba
+0xbd U+2126
+0xbe U+00e6
+0xbf U+00f8
+0xc0 U+00bf
+0xc1 U+00a1
+0xc2 U+00ac
+0xc3 U+221a
+0xc4 U+0192
+0xc5 U+2248
+0xc6 U+2206
+0xc7 U+00ab
+0xc8 U+00bb
+0xc9 U+2026
+0xca U+00a0
+0xcb U+00c0
+0xcc U+00c3
+0xcd U+00d5
+0xce U+0152
+0xcf U+0153
+0xd0 U+2013
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+25ca
+0xd8 U+00ff
+0xd9 U+0178
+0xda U+2044
+0xdb U+00a4
+0xdc U+00d0
+0xdd U+00f0
+0xde U+00de
+0xdf U+00fe
+0xe0 U+00fd
+0xe1 U+00b7
+0xe2 U+201a
+0xe3 U+201e
+0xe4 U+2030
+0xe5 U+00c2
+0xe6 U+00ca
+0xe7 U+00c1
+0xe8 U+00cb
+0xe9 U+00c8
+0xea U+00cd
+0xeb U+00ce
+0xec U+00cf
+0xed U+00cc
+0xee U+00d3
+0xef U+00d4
+0xf0 U+f8ff
+0xf1 U+00d2
+0xf2 U+00da
+0xf3 U+00db
+0xf4 U+00d9
+0xf5 U+0131
+0xf6 U+02c6
+0xf7 U+02dc
+0xf8 U+00af
+0xf9 U+02d8
+0xfa U+02d9
+0xfb U+02da
+0xfc U+00b8
+0xfd U+02dd
+0xfe U+02db
+0xff U+02c7
diff --git a/jdk/make/tools/CharsetMapping/MacRoman.map b/jdk/make/tools/CharsetMapping/MacRoman.map
new file mode 100644
index 00000000000..4d27bb812f6
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacRoman.map
@@ -0,0 +1,257 @@
+#Generated from MacRoman.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+00c5
+0x82 U+00c7
+0x83 U+00c9
+0x84 U+00d1
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+00e1
+0x88 U+00e0
+0x89 U+00e2
+0x8a U+00e4
+0x8b U+00e3
+0x8c U+00e5
+0x8d U+00e7
+0x8e U+00e9
+0x8f U+00e8
+0x90 U+00ea
+0x91 U+00eb
+0x92 U+00ed
+0x93 U+00ec
+0x94 U+00ee
+0x95 U+00ef
+0x96 U+00f1
+0x97 U+00f3
+0x98 U+00f2
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00f5
+0x9c U+00fa
+0x9d U+00f9
+0x9e U+00fb
+0x9f U+00fc
+0xa0 U+2020
+0xa1 U+00b0
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a7
+0xa5 U+2022
+0xa6 U+00b6
+0xa7 U+00df
+0xa8 U+00ae
+0xa9 U+00a9
+0xaa U+2122
+0xab U+00b4
+0xac U+00a8
+0xad U+2260
+0xae U+00c6
+0xaf U+00d8
+0xb0 U+221e
+0xb1 U+00b1
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+00a5
+0xb5 U+00b5
+0xb6 U+2202
+0xb7 U+2211
+0xb8 U+220f
+0xb9 U+03c0
+0xba U+222b
+0xbb U+00aa
+0xbc U+00ba
+0xbd U+03a9
+0xbe U+00e6
+0xbf U+00f8
+0xc0 U+00bf
+0xc1 U+00a1
+0xc2 U+00ac
+0xc3 U+221a
+0xc4 U+0192
+0xc5 U+2248
+0xc6 U+2206
+0xc7 U+00ab
+0xc8 U+00bb
+0xc9 U+2026
+0xca U+00a0
+0xcb U+00c0
+0xcc U+00c3
+0xcd U+00d5
+0xce U+0152
+0xcf U+0153
+0xd0 U+2013
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+25ca
+0xd8 U+00ff
+0xd9 U+0178
+0xda U+2044
+0xdb U+20ac
+0xdc U+2039
+0xdd U+203a
+0xde U+fb01
+0xdf U+fb02
+0xe0 U+2021
+0xe1 U+00b7
+0xe2 U+201a
+0xe3 U+201e
+0xe4 U+2030
+0xe5 U+00c2
+0xe6 U+00ca
+0xe7 U+00c1
+0xe8 U+00cb
+0xe9 U+00c8
+0xea U+00cd
+0xeb U+00ce
+0xec U+00cf
+0xed U+00cc
+0xee U+00d3
+0xef U+00d4
+0xf0 U+f8ff
+0xf1 U+00d2
+0xf2 U+00da
+0xf3 U+00db
+0xf4 U+00d9
+0xf5 U+0131
+0xf6 U+02c6
+0xf7 U+02dc
+0xf8 U+00af
+0xf9 U+02d8
+0xfa U+02d9
+0xfb U+02da
+0xfc U+00b8
+0xfd U+02dd
+0xfe U+02db
+0xff U+02c7
diff --git a/jdk/make/tools/CharsetMapping/MacRomania.map b/jdk/make/tools/CharsetMapping/MacRomania.map
new file mode 100644
index 00000000000..622bc636edd
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacRomania.map
@@ -0,0 +1,257 @@
+#Generated from MacRomania.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+00c5
+0x82 U+00c7
+0x83 U+00c9
+0x84 U+00d1
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+00e1
+0x88 U+00e0
+0x89 U+00e2
+0x8a U+00e4
+0x8b U+00e3
+0x8c U+00e5
+0x8d U+00e7
+0x8e U+00e9
+0x8f U+00e8
+0x90 U+00ea
+0x91 U+00eb
+0x92 U+00ed
+0x93 U+00ec
+0x94 U+00ee
+0x95 U+00ef
+0x96 U+00f1
+0x97 U+00f3
+0x98 U+00f2
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00f5
+0x9c U+00fa
+0x9d U+00f9
+0x9e U+00fb
+0x9f U+00fc
+0xa0 U+2020
+0xa1 U+00b0
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a7
+0xa5 U+2022
+0xa6 U+00b6
+0xa7 U+00df
+0xa8 U+00ae
+0xa9 U+00a9
+0xaa U+2122
+0xab U+00b4
+0xac U+00a8
+0xad U+2260
+0xae U+0102
+0xaf U+015e
+0xb0 U+221e
+0xb1 U+00b1
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+00a5
+0xb5 U+00b5
+0xb6 U+2202
+0xb7 U+2211
+0xb8 U+220f
+0xb9 U+03c0
+0xba U+222b
+0xbb U+00aa
+0xbc U+00ba
+0xbd U+2126
+0xbe U+0103
+0xbf U+015f
+0xc0 U+00bf
+0xc1 U+00a1
+0xc2 U+00ac
+0xc3 U+221a
+0xc4 U+0192
+0xc5 U+2248
+0xc6 U+2206
+0xc7 U+00ab
+0xc8 U+00bb
+0xc9 U+2026
+0xca U+00a0
+0xcb U+00c0
+0xcc U+00c3
+0xcd U+00d5
+0xce U+0152
+0xcf U+0153
+0xd0 U+2013
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+25ca
+0xd8 U+00ff
+0xd9 U+0178
+0xda U+2044
+0xdb U+00a4
+0xdc U+2039
+0xdd U+203a
+0xde U+0162
+0xdf U+0163
+0xe0 U+2021
+0xe1 U+00b7
+0xe2 U+201a
+0xe3 U+201e
+0xe4 U+2030
+0xe5 U+00c2
+0xe6 U+00ca
+0xe7 U+00c1
+0xe8 U+00cb
+0xe9 U+00c8
+0xea U+00cd
+0xeb U+00ce
+0xec U+00cf
+0xed U+00cc
+0xee U+00d3
+0xef U+00d4
+0xf0 U+f8ff
+0xf1 U+00d2
+0xf2 U+00da
+0xf3 U+00db
+0xf4 U+00d9
+0xf5 U+0131
+0xf6 U+02c6
+0xf7 U+02dc
+0xf8 U+00af
+0xf9 U+02d8
+0xfa U+02d9
+0xfb U+02da
+0xfc U+00b8
+0xfd U+02dd
+0xfe U+02db
+0xff U+02c7
diff --git a/jdk/make/tools/CharsetMapping/MacSymbol.map b/jdk/make/tools/CharsetMapping/MacSymbol.map
new file mode 100644
index 00000000000..c3750f2f641
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacSymbol.map
@@ -0,0 +1,257 @@
+#Generated from MacSymbol.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+2200
+0x23 U+0023
+0x24 U+2203
+0x25 U+0025
+0x26 U+0026
+0x27 U+220d
+0x28 U+0028
+0x29 U+0029
+0x2a U+2217
+0x2b U+002b
+0x2c U+002c
+0x2d U+2212
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+2245
+0x41 U+0391
+0x42 U+0392
+0x43 U+03a7
+0x44 U+0394
+0x45 U+0395
+0x46 U+03a6
+0x47 U+0393
+0x48 U+0397
+0x49 U+0399
+0x4a U+03d1
+0x4b U+039a
+0x4c U+039b
+0x4d U+039c
+0x4e U+039d
+0x4f U+039f
+0x50 U+03a0
+0x51 U+0398
+0x52 U+03a1
+0x53 U+03a3
+0x54 U+03a4
+0x55 U+03a5
+0x56 U+03c2
+0x57 U+03a9
+0x58 U+039e
+0x59 U+03a8
+0x5a U+0396
+0x5b U+005b
+0x5c U+2234
+0x5d U+005d
+0x5e U+22a5
+0x5f U+005f
+0x60 U+f8e5
+0x61 U+03b1
+0x62 U+03b2
+0x63 U+03c7
+0x64 U+03b4
+0x65 U+03b5
+0x66 U+03c6
+0x67 U+03b3
+0x68 U+03b7
+0x69 U+03b9
+0x6a U+03d5
+0x6b U+03ba
+0x6c U+03bb
+0x6d U+03bc
+0x6e U+03bd
+0x6f U+03bf
+0x70 U+03c0
+0x71 U+03b8
+0x72 U+03c1
+0x73 U+03c3
+0x74 U+03c4
+0x75 U+03c5
+0x76 U+03d6
+0x77 U+03c9
+0x78 U+03be
+0x79 U+03c8
+0x7a U+03b6
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+223c
+0x7f U+007f
+0x80 U+fffd
+0x81 U+fffd
+0x82 U+fffd
+0x83 U+fffd
+0x84 U+fffd
+0x85 U+fffd
+0x86 U+fffd
+0x87 U+fffd
+0x88 U+fffd
+0x89 U+fffd
+0x8a U+fffd
+0x8b U+fffd
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+fffd
+0x92 U+fffd
+0x93 U+fffd
+0x94 U+fffd
+0x95 U+fffd
+0x96 U+fffd
+0x97 U+fffd
+0x98 U+fffd
+0x99 U+fffd
+0x9a U+fffd
+0x9b U+fffd
+0x9c U+fffd
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+fffd
+0xa0 U+20ac
+0xa1 U+03d2
+0xa2 U+2032
+0xa3 U+2264
+0xa4 U+2044
+0xa5 U+221e
+0xa6 U+0192
+0xa7 U+2663
+0xa8 U+2666
+0xa9 U+2665
+0xaa U+2660
+0xab U+2194
+0xac U+2190
+0xad U+2191
+0xae U+2192
+0xaf U+2193
+0xb0 U+00b0
+0xb1 U+00b1
+0xb2 U+2033
+0xb3 U+2265
+0xb4 U+00d7
+0xb5 U+221d
+0xb6 U+2202
+0xb7 U+2022
+0xb8 U+00f7
+0xb9 U+2260
+0xba U+2261
+0xbb U+2248
+0xbc U+2026
+0xbd U+f8e6
+0xbe U+f8e7
+0xbf U+21b5
+0xc0 U+2135
+0xc1 U+2111
+0xc2 U+211c
+0xc3 U+2118
+0xc4 U+2297
+0xc5 U+2295
+0xc6 U+2205
+0xc7 U+2229
+0xc8 U+222a
+0xc9 U+2283
+0xca U+2287
+0xcb U+2284
+0xcc U+2282
+0xcd U+2286
+0xce U+2208
+0xcf U+2209
+0xd0 U+2220
+0xd1 U+2207
+0xd2 U+00ae
+0xd3 U+00a9
+0xd4 U+2122
+0xd5 U+220f
+0xd6 U+221a
+0xd7 U+22c5
+0xd8 U+00ac
+0xd9 U+2227
+0xda U+2228
+0xdb U+21d4
+0xdc U+21d0
+0xdd U+21d1
+0xde U+21d2
+0xdf U+21d3
+0xe0 U+22c4
+0xe1 U+3008
+0xe2 U+fffd
+0xe3 U+fffd
+0xe4 U+fffd
+0xe5 U+2211
+0xe6 U+fffd
+0xe7 U+fffd
+0xe8 U+fffd
+0xe9 U+fffd
+0xea U+fffd
+0xeb U+fffd
+0xec U+fffd
+0xed U+fffd
+0xee U+fffd
+0xef U+f8f4
+0xf0 U+f8ff
+0xf1 U+3009
+0xf2 U+222b
+0xf3 U+2320
+0xf4 U+fffd
+0xf5 U+2321
+0xf6 U+fffd
+0xf7 U+fffd
+0xf8 U+fffd
+0xf9 U+fffd
+0xfa U+fffd
+0xfb U+fffd
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/MacThai.map b/jdk/make/tools/CharsetMapping/MacThai.map
new file mode 100644
index 00000000000..68cf8ba727e
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacThai.map
@@ -0,0 +1,257 @@
+#Generated from MacThai.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00ab
+0x81 U+00bb
+0x82 U+2026
+0x83 U+f88c
+0x84 U+f88f
+0x85 U+f892
+0x86 U+f895
+0x87 U+f898
+0x88 U+f88b
+0x89 U+f88e
+0x8a U+f891
+0x8b U+f894
+0x8c U+f897
+0x8d U+201c
+0x8e U+201d
+0x8f U+f899
+0x90 U+fffd
+0x91 U+2022
+0x92 U+f884
+0x93 U+f889
+0x94 U+f885
+0x95 U+f886
+0x96 U+f887
+0x97 U+f888
+0x98 U+f88a
+0x99 U+f88d
+0x9a U+f890
+0x9b U+f893
+0x9c U+f896
+0x9d U+2018
+0x9e U+2019
+0x9f U+fffd
+0xa0 U+00a0
+0xa1 U+0e01
+0xa2 U+0e02
+0xa3 U+0e03
+0xa4 U+0e04
+0xa5 U+0e05
+0xa6 U+0e06
+0xa7 U+0e07
+0xa8 U+0e08
+0xa9 U+0e09
+0xaa U+0e0a
+0xab U+0e0b
+0xac U+0e0c
+0xad U+0e0d
+0xae U+0e0e
+0xaf U+0e0f
+0xb0 U+0e10
+0xb1 U+0e11
+0xb2 U+0e12
+0xb3 U+0e13
+0xb4 U+0e14
+0xb5 U+0e15
+0xb6 U+0e16
+0xb7 U+0e17
+0xb8 U+0e18
+0xb9 U+0e19
+0xba U+0e1a
+0xbb U+0e1b
+0xbc U+0e1c
+0xbd U+0e1d
+0xbe U+0e1e
+0xbf U+0e1f
+0xc0 U+0e20
+0xc1 U+0e21
+0xc2 U+0e22
+0xc3 U+0e23
+0xc4 U+0e24
+0xc5 U+0e25
+0xc6 U+0e26
+0xc7 U+0e27
+0xc8 U+0e28
+0xc9 U+0e29
+0xca U+0e2a
+0xcb U+0e2b
+0xcc U+0e2c
+0xcd U+0e2d
+0xce U+0e2e
+0xcf U+0e2f
+0xd0 U+0e30
+0xd1 U+0e31
+0xd2 U+0e32
+0xd3 U+0e33
+0xd4 U+0e34
+0xd5 U+0e35
+0xd6 U+0e36
+0xd7 U+0e37
+0xd8 U+0e38
+0xd9 U+0e39
+0xda U+0e3a
+0xdb U+feff
+0xdc U+200b
+0xdd U+2013
+0xde U+2014
+0xdf U+0e3f
+0xe0 U+0e40
+0xe1 U+0e41
+0xe2 U+0e42
+0xe3 U+0e43
+0xe4 U+0e44
+0xe5 U+0e45
+0xe6 U+0e46
+0xe7 U+0e47
+0xe8 U+0e48
+0xe9 U+0e49
+0xea U+0e4a
+0xeb U+0e4b
+0xec U+0e4c
+0xed U+0e4d
+0xee U+2122
+0xef U+0e4f
+0xf0 U+0e50
+0xf1 U+0e51
+0xf2 U+0e52
+0xf3 U+0e53
+0xf4 U+0e54
+0xf5 U+0e55
+0xf6 U+0e56
+0xf7 U+0e57
+0xf8 U+0e58
+0xf9 U+0e59
+0xfa U+00ae
+0xfb U+00a9
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/MacTurkish.map b/jdk/make/tools/CharsetMapping/MacTurkish.map
new file mode 100644
index 00000000000..d316ca2d592
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacTurkish.map
@@ -0,0 +1,257 @@
+#Generated from MacTurkish.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+00c4
+0x81 U+00c5
+0x82 U+00c7
+0x83 U+00c9
+0x84 U+00d1
+0x85 U+00d6
+0x86 U+00dc
+0x87 U+00e1
+0x88 U+00e0
+0x89 U+00e2
+0x8a U+00e4
+0x8b U+00e3
+0x8c U+00e5
+0x8d U+00e7
+0x8e U+00e9
+0x8f U+00e8
+0x90 U+00ea
+0x91 U+00eb
+0x92 U+00ed
+0x93 U+00ec
+0x94 U+00ee
+0x95 U+00ef
+0x96 U+00f1
+0x97 U+00f3
+0x98 U+00f2
+0x99 U+00f4
+0x9a U+00f6
+0x9b U+00f5
+0x9c U+00fa
+0x9d U+00f9
+0x9e U+00fb
+0x9f U+00fc
+0xa0 U+2020
+0xa1 U+00b0
+0xa2 U+00a2
+0xa3 U+00a3
+0xa4 U+00a7
+0xa5 U+2022
+0xa6 U+00b6
+0xa7 U+00df
+0xa8 U+00ae
+0xa9 U+00a9
+0xaa U+2122
+0xab U+00b4
+0xac U+00a8
+0xad U+2260
+0xae U+00c6
+0xaf U+00d8
+0xb0 U+221e
+0xb1 U+00b1
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+00a5
+0xb5 U+00b5
+0xb6 U+2202
+0xb7 U+2211
+0xb8 U+220f
+0xb9 U+03c0
+0xba U+222b
+0xbb U+00aa
+0xbc U+00ba
+0xbd U+2126
+0xbe U+00e6
+0xbf U+00f8
+0xc0 U+00bf
+0xc1 U+00a1
+0xc2 U+00ac
+0xc3 U+221a
+0xc4 U+0192
+0xc5 U+2248
+0xc6 U+2206
+0xc7 U+00ab
+0xc8 U+00bb
+0xc9 U+2026
+0xca U+00a0
+0xcb U+00c0
+0xcc U+00c3
+0xcd U+00d5
+0xce U+0152
+0xcf U+0153
+0xd0 U+2013
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+25ca
+0xd8 U+00ff
+0xd9 U+0178
+0xda U+011e
+0xdb U+011f
+0xdc U+0130
+0xdd U+0131
+0xde U+015e
+0xdf U+015f
+0xe0 U+2021
+0xe1 U+00b7
+0xe2 U+201a
+0xe3 U+201e
+0xe4 U+2030
+0xe5 U+00c2
+0xe6 U+00ca
+0xe7 U+00c1
+0xe8 U+00cb
+0xe9 U+00c8
+0xea U+00cd
+0xeb U+00ce
+0xec U+00cf
+0xed U+00cc
+0xee U+00d3
+0xef U+00d4
+0xf0 U+f8ff
+0xf1 U+00d2
+0xf2 U+00da
+0xf3 U+00db
+0xf4 U+00d9
+0xf5 U+fffd
+0xf6 U+02c6
+0xf7 U+02dc
+0xf8 U+00af
+0xf9 U+02d8
+0xfa U+02d9
+0xfb U+02da
+0xfc U+00b8
+0xfd U+02dd
+0xfe U+02db
+0xff U+02c7
diff --git a/jdk/make/tools/CharsetMapping/MacUkraine.map b/jdk/make/tools/CharsetMapping/MacUkraine.map
new file mode 100644
index 00000000000..93f1dbf56e3
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/MacUkraine.map
@@ -0,0 +1,257 @@
+#Generated from MacUkraine.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+0410
+0x81 U+0411
+0x82 U+0412
+0x83 U+0413
+0x84 U+0414
+0x85 U+0415
+0x86 U+0416
+0x87 U+0417
+0x88 U+0418
+0x89 U+0419
+0x8a U+041a
+0x8b U+041b
+0x8c U+041c
+0x8d U+041d
+0x8e U+041e
+0x8f U+041f
+0x90 U+0420
+0x91 U+0421
+0x92 U+0422
+0x93 U+0423
+0x94 U+0424
+0x95 U+0425
+0x96 U+0426
+0x97 U+0427
+0x98 U+0428
+0x99 U+0429
+0x9a U+042a
+0x9b U+042b
+0x9c U+042c
+0x9d U+042d
+0x9e U+042e
+0x9f U+042f
+0xa0 U+2020
+0xa1 U+00b0
+0xa2 U+0490
+0xa3 U+00a3
+0xa4 U+00a7
+0xa5 U+2022
+0xa6 U+00b6
+0xa7 U+0406
+0xa8 U+00ae
+0xa9 U+00a9
+0xaa U+2122
+0xab U+0402
+0xac U+0452
+0xad U+2260
+0xae U+0403
+0xaf U+0453
+0xb0 U+221e
+0xb1 U+00b1
+0xb2 U+2264
+0xb3 U+2265
+0xb4 U+0456
+0xb5 U+00b5
+0xb6 U+0491
+0xb7 U+0408
+0xb8 U+0404
+0xb9 U+0454
+0xba U+0407
+0xbb U+0457
+0xbc U+0409
+0xbd U+0459
+0xbe U+040a
+0xbf U+045a
+0xc0 U+0458
+0xc1 U+0405
+0xc2 U+00ac
+0xc3 U+221a
+0xc4 U+0192
+0xc5 U+2248
+0xc6 U+2206
+0xc7 U+00ab
+0xc8 U+00bb
+0xc9 U+2026
+0xca U+00a0
+0xcb U+040b
+0xcc U+045b
+0xcd U+040c
+0xce U+045c
+0xcf U+0455
+0xd0 U+2013
+0xd1 U+2014
+0xd2 U+201c
+0xd3 U+201d
+0xd4 U+2018
+0xd5 U+2019
+0xd6 U+00f7
+0xd7 U+201e
+0xd8 U+040e
+0xd9 U+045e
+0xda U+040f
+0xdb U+045f
+0xdc U+2116
+0xdd U+0401
+0xde U+0451
+0xdf U+044f
+0xe0 U+0430
+0xe1 U+0431
+0xe2 U+0432
+0xe3 U+0433
+0xe4 U+0434
+0xe5 U+0435
+0xe6 U+0436
+0xe7 U+0437
+0xe8 U+0438
+0xe9 U+0439
+0xea U+043a
+0xeb U+043b
+0xec U+043c
+0xed U+043d
+0xee U+043e
+0xef U+043f
+0xf0 U+0440
+0xf1 U+0441
+0xf2 U+0442
+0xf3 U+0443
+0xf4 U+0444
+0xf5 U+0445
+0xf6 U+0446
+0xf7 U+0447
+0xf8 U+0448
+0xf9 U+0449
+0xfa U+044a
+0xfb U+044b
+0xfc U+044c
+0xfd U+044d
+0xfe U+044e
+0xff U+00a4
diff --git a/jdk/make/tools/CharsetMapping/SingleByte-X.java b/jdk/make/tools/CharsetMapping/SingleByte-X.java
new file mode 100644
index 00000000000..f6c080a20f0
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/SingleByte-X.java
@@ -0,0 +1,83 @@
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Sun designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Sun in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+package $PACKAGE$;
+
+import java.nio.charset.Charset;
+import java.nio.charset.CharsetDecoder;
+import java.nio.charset.CharsetEncoder;
+import sun.nio.cs.StandardCharsets;
+import sun.nio.cs.SingleByte;
+import sun.nio.cs.HistoricallyNamedCharset;
+import static sun.nio.cs.CharsetMapping.*;
+
+public class $NAME_CLZ$ extends Charset implements HistoricallyNamedCharset
+{
+ public $NAME_CLZ$() {
+ super("$NAME_CS$", $NAME_ALIASES$);
+ }
+
+ public String historicalName() {
+ return "$NAME_HIS$";
+ }
+
+ public boolean contains(Charset cs) {
+ $CONTAINS$;
+ }
+
+ public CharsetDecoder newDecoder() {
+ return new SingleByte.Decoder(this, b2c);
+ }
+
+ public CharsetEncoder newEncoder() {
+ return new SingleByte.Encoder(this, c2b, c2bIndex);
+ }
+
+ public String getDecoderSingleByteMappings() {
+ return b2cTable;
+ }
+
+ public char[] getEncoderIndex2() {
+ return c2b;
+ }
+
+ public char[] getEncoderIndex1() {
+ return c2bIndex;
+ }
+
+ private final static String b2cTable = $B2CTABLE$
+
+ private final static char[] b2c = b2cTable.toCharArray();
+ private final static char[] c2b = new char[$C2BLENGTH$];
+ private final static char[] c2bIndex = new char[0x100];
+
+ static {
+ char[] b2cMap = b2c;
+ char[] c2bNR = null;
+ $NONROUNDTRIP_B2C$
+ $NONROUNDTRIP_C2B$
+ SingleByte.initC2B(b2cMap, c2bNR, c2b, c2bIndex);
+ }
+}
diff --git a/jdk/make/tools/CharsetMapping/TIS_620.map b/jdk/make/tools/CharsetMapping/TIS_620.map
new file mode 100644
index 00000000000..b832450a5ae
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/TIS_620.map
@@ -0,0 +1,257 @@
+#Generated from TIS_620.java
+0x00 U+0000
+0x01 U+0001
+0x02 U+0002
+0x03 U+0003
+0x04 U+0004
+0x05 U+0005
+0x06 U+0006
+0x07 U+0007
+0x08 U+0008
+0x09 U+0009
+0x0a U+000a
+0x0b U+000b
+0x0c U+000c
+0x0d U+000d
+0x0e U+000e
+0x0f U+000f
+0x10 U+0010
+0x11 U+0011
+0x12 U+0012
+0x13 U+0013
+0x14 U+0014
+0x15 U+0015
+0x16 U+0016
+0x17 U+0017
+0x18 U+0018
+0x19 U+0019
+0x1a U+001a
+0x1b U+001b
+0x1c U+001c
+0x1d U+001d
+0x1e U+001e
+0x1f U+001f
+0x20 U+0020
+0x21 U+0021
+0x22 U+0022
+0x23 U+0023
+0x24 U+0024
+0x25 U+0025
+0x26 U+0026
+0x27 U+0027
+0x28 U+0028
+0x29 U+0029
+0x2a U+002a
+0x2b U+002b
+0x2c U+002c
+0x2d U+002d
+0x2e U+002e
+0x2f U+002f
+0x30 U+0030
+0x31 U+0031
+0x32 U+0032
+0x33 U+0033
+0x34 U+0034
+0x35 U+0035
+0x36 U+0036
+0x37 U+0037
+0x38 U+0038
+0x39 U+0039
+0x3a U+003a
+0x3b U+003b
+0x3c U+003c
+0x3d U+003d
+0x3e U+003e
+0x3f U+003f
+0x40 U+0040
+0x41 U+0041
+0x42 U+0042
+0x43 U+0043
+0x44 U+0044
+0x45 U+0045
+0x46 U+0046
+0x47 U+0047
+0x48 U+0048
+0x49 U+0049
+0x4a U+004a
+0x4b U+004b
+0x4c U+004c
+0x4d U+004d
+0x4e U+004e
+0x4f U+004f
+0x50 U+0050
+0x51 U+0051
+0x52 U+0052
+0x53 U+0053
+0x54 U+0054
+0x55 U+0055
+0x56 U+0056
+0x57 U+0057
+0x58 U+0058
+0x59 U+0059
+0x5a U+005a
+0x5b U+005b
+0x5c U+005c
+0x5d U+005d
+0x5e U+005e
+0x5f U+005f
+0x60 U+0060
+0x61 U+0061
+0x62 U+0062
+0x63 U+0063
+0x64 U+0064
+0x65 U+0065
+0x66 U+0066
+0x67 U+0067
+0x68 U+0068
+0x69 U+0069
+0x6a U+006a
+0x6b U+006b
+0x6c U+006c
+0x6d U+006d
+0x6e U+006e
+0x6f U+006f
+0x70 U+0070
+0x71 U+0071
+0x72 U+0072
+0x73 U+0073
+0x74 U+0074
+0x75 U+0075
+0x76 U+0076
+0x77 U+0077
+0x78 U+0078
+0x79 U+0079
+0x7a U+007a
+0x7b U+007b
+0x7c U+007c
+0x7d U+007d
+0x7e U+007e
+0x7f U+007f
+0x80 U+fffd
+0x81 U+fffd
+0x82 U+fffd
+0x83 U+fffd
+0x84 U+fffd
+0x85 U+fffd
+0x86 U+fffd
+0x87 U+fffd
+0x88 U+fffd
+0x89 U+fffd
+0x8a U+fffd
+0x8b U+fffd
+0x8c U+fffd
+0x8d U+fffd
+0x8e U+fffd
+0x8f U+fffd
+0x90 U+fffd
+0x91 U+fffd
+0x92 U+fffd
+0x93 U+fffd
+0x94 U+fffd
+0x95 U+fffd
+0x96 U+fffd
+0x97 U+fffd
+0x98 U+fffd
+0x99 U+fffd
+0x9a U+fffd
+0x9b U+fffd
+0x9c U+fffd
+0x9d U+fffd
+0x9e U+fffd
+0x9f U+fffd
+0xa0 U+00a0
+0xa1 U+0e01
+0xa2 U+0e02
+0xa3 U+0e03
+0xa4 U+0e04
+0xa5 U+0e05
+0xa6 U+0e06
+0xa7 U+0e07
+0xa8 U+0e08
+0xa9 U+0e09
+0xaa U+0e0a
+0xab U+0e0b
+0xac U+0e0c
+0xad U+0e0d
+0xae U+0e0e
+0xaf U+0e0f
+0xb0 U+0e10
+0xb1 U+0e11
+0xb2 U+0e12
+0xb3 U+0e13
+0xb4 U+0e14
+0xb5 U+0e15
+0xb6 U+0e16
+0xb7 U+0e17
+0xb8 U+0e18
+0xb9 U+0e19
+0xba U+0e1a
+0xbb U+0e1b
+0xbc U+0e1c
+0xbd U+0e1d
+0xbe U+0e1e
+0xbf U+0e1f
+0xc0 U+0e20
+0xc1 U+0e21
+0xc2 U+0e22
+0xc3 U+0e23
+0xc4 U+0e24
+0xc5 U+0e25
+0xc6 U+0e26
+0xc7 U+0e27
+0xc8 U+0e28
+0xc9 U+0e29
+0xca U+0e2a
+0xcb U+0e2b
+0xcc U+0e2c
+0xcd U+0e2d
+0xce U+0e2e
+0xcf U+0e2f
+0xd0 U+0e30
+0xd1 U+0e31
+0xd2 U+0e32
+0xd3 U+0e33
+0xd4 U+0e34
+0xd5 U+0e35
+0xd6 U+0e36
+0xd7 U+0e37
+0xd8 U+0e38
+0xd9 U+0e39
+0xda U+0e3a
+0xdb U+fffd
+0xdc U+fffd
+0xdd U+fffd
+0xde U+fffd
+0xdf U+0e3f
+0xe0 U+0e40
+0xe1 U+0e41
+0xe2 U+0e42
+0xe3 U+0e43
+0xe4 U+0e44
+0xe5 U+0e45
+0xe6 U+0e46
+0xe7 U+0e47
+0xe8 U+0e48
+0xe9 U+0e49
+0xea U+0e4a
+0xeb U+0e4b
+0xec U+0e4c
+0xed U+0e4d
+0xee U+0e4e
+0xef U+0e4f
+0xf0 U+0e50
+0xf1 U+0e51
+0xf2 U+0e52
+0xf3 U+0e53
+0xf4 U+0e54
+0xf5 U+0e55
+0xf6 U+0e56
+0xf7 U+0e57
+0xf8 U+0e58
+0xf9 U+0e59
+0xfa U+0e5a
+0xfb U+0e5b
+0xfc U+fffd
+0xfd U+fffd
+0xfe U+fffd
+0xff U+fffd
diff --git a/jdk/make/tools/CharsetMapping/extsbcs b/jdk/make/tools/CharsetMapping/extsbcs
new file mode 100644
index 00000000000..81a6acdf817
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/extsbcs
@@ -0,0 +1,74 @@
+# clzName csName hisName containASCII pkg
+IBM037 IBM037 Cp037 false sun.nio.cs.ext
+IBM1006 x-IBM1006 Cp1006 false sun.nio.cs.ext
+IBM1025 x-IBM1025 Cp1025 false sun.nio.cs.ext
+IBM1026 IBM1026 Cp1026 false sun.nio.cs.ext
+IBM1046 x-IBM1046 Cp1046 false sun.nio.cs.ext
+IBM1047 IBM1047 Cp1047 false sun.nio.cs.ext
+IBM1097 x-IBM1097 Cp1097 false sun.nio.cs.ext
+IBM1098 x-IBM1098 Cp1098 false sun.nio.cs.ext
+IBM1112 x-IBM1112 Cp1112 false sun.nio.cs.ext
+IBM1122 x-IBM1122 Cp1122 false sun.nio.cs.ext
+IBM1123 x-IBM1123 Cp1123 false sun.nio.cs.ext
+IBM1124 x-IBM1124 Cp1124 false sun.nio.cs.ext
+# map tables for 1140-1149 are updated manualy with the u+20ac entry
+IBM1140 IBM01140 Cp1140 false sun.nio.cs.ext
+IBM1141 IBM01141 Cp1141 false sun.nio.cs.ext
+IBM1142 IBM01142 Cp1142 false sun.nio.cs.ext
+IBM1143 IBM01143 Cp1143 false sun.nio.cs.ext
+IBM1144 IBM01144 Cp1144 false sun.nio.cs.ext
+IBM1145 IBM01145 Cp1145 false sun.nio.cs.ext
+IBM1146 IBM01146 Cp1146 false sun.nio.cs.ext
+IBM1147 IBM01147 Cp1147 false sun.nio.cs.ext
+IBM1148 IBM01148 Cp1148 false sun.nio.cs.ext
+IBM1149 IBM01149 Cp1149 false sun.nio.cs.ext
+IBM273 IBM273 Cp273 false sun.nio.cs.ext
+IBM277 IBM277 Cp277 false sun.nio.cs.ext
+IBM278 IBM278 Cp278 false sun.nio.cs.ext
+IBM280 IBM280 Cp280 false sun.nio.cs.ext
+IBM284 IBM284 Cp284 false sun.nio.cs.ext
+IBM285 IBM285 Cp285 false sun.nio.cs.ext
+IBM297 IBM297 Cp297 false sun.nio.cs.ext
+IBM420 IBM420 Cp420 false sun.nio.cs.ext
+IBM424 IBM424 Cp424 false sun.nio.cs.ext
+IBM500 IBM500 Cp500 false sun.nio.cs.ext
+IBM838 IBM-Thai Cp838 false sun.nio.cs.ext
+IBM856 x-IBM856 Cp856 false sun.nio.cs.ext
+IBM860 IBM860 Cp860 false sun.nio.cs.ext
+IBM861 IBM861 Cp861 false sun.nio.cs.ext
+IBM863 IBM863 Cp863 false sun.nio.cs.ext
+IBM864 IBM864 Cp864 false sun.nio.cs.ext
+IBM865 IBM865 Cp865 false sun.nio.cs.ext
+IBM868 IBM868 Cp868 false sun.nio.cs.ext
+IBM869 IBM869 Cp869 false sun.nio.cs.ext
+IBM870 IBM870 Cp870 false sun.nio.cs.ext
+IBM871 IBM871 Cp871 false sun.nio.cs.ext
+IBM875 x-IBM875 Cp875 false sun.nio.cs.ext
+IBM918 IBM918 Cp918 false sun.nio.cs.ext
+IBM921 x-IBM921 Cp921 false sun.nio.cs.ext
+IBM922 x-IBM922 Cp922 false sun.nio.cs.ext
+# use name as hisname as well, cs did not support hisname prevously
+ISO_8859_11 x-iso-8859-11 x-iso-8859-11 true sun.nio.cs.ext
+ISO_8859_3 ISO-8859-3 ISO8859_3 true sun.nio.cs.ext
+ISO_8859_6 ISO-8859-6 ISO8859_6 true sun.nio.cs.ext
+ISO_8859_8 ISO-8859-8 ISO8859_8 true sun.nio.cs.ext
+#JIS_X_0201 JIS_X0201 JIS_X0201 true sun.nio.cs.ext
+MS1255 windows-1255 Cp1255 true sun.nio.cs.ext
+MS1256 windows-1256 Cp1256 true sun.nio.cs.ext
+MS1258 windows-1258 Cp1258 true sun.nio.cs.ext
+MS874 x-windows-874 MS874 true sun.nio.cs.ext
+MacArabic x-MacArabic MacArabic false sun.nio.cs.ext
+MacCentralEurope x-MacCentralEurope MacCentralEurope false sun.nio.cs.ext
+MacCroatian x-MacCroatian MacCroatian false sun.nio.cs.ext
+MacCyrillic x-MacCyrillic MacCyrillic false sun.nio.cs.ext
+MacDingbat x-MacDingbat MacDingbat false sun.nio.cs.ext
+MacGreek x-MacGreek MacGreek false sun.nio.cs.ext
+MacHebrew x-MacHebrew MacHebrew false sun.nio.cs.ext
+MacIceland x-MacIceland MacIceland false sun.nio.cs.ext
+MacRoman x-MacRoman MacRoman false sun.nio.cs.ext
+MacRomania x-MacRomania MacRomania false sun.nio.cs.ext
+MacSymbol x-MacSymbol MacSymbol false sun.nio.cs.ext
+MacThai x-MacThai MacThai false sun.nio.cs.ext
+MacTurkish x-MacTurkish MacTurkish false sun.nio.cs.ext
+MacUkraine x-MacUkraine MacUkraine false sun.nio.cs.ext
+TIS_620 TIS-620 TIS620 true sun.nio.cs.ext
diff --git a/jdk/make/tools/CharsetMapping/sbcs b/jdk/make/tools/CharsetMapping/sbcs
new file mode 100644
index 00000000000..0b11960411b
--- /dev/null
+++ b/jdk/make/tools/CharsetMapping/sbcs
@@ -0,0 +1,28 @@
+# clzName csName hisName containASCII pkg
+IBM437 IBM437 Cp437 false sun.nio.cs
+IBM737 x-IBM737 Cp737 false sun.nio.cs
+IBM775 IBM775 Cp775 false sun.nio.cs
+IBM850 IBM850 Cp850 false sun.nio.cs
+IBM852 IBM852 Cp852 false sun.nio.cs
+IBM855 IBM855 Cp855 false sun.nio.cs
+IBM857 IBM857 Cp857 false sun.nio.cs
+IBM858 IBM00858 Cp858 false sun.nio.cs
+IBM862 IBM862 Cp862 false sun.nio.cs
+IBM866 IBM866 Cp866 false sun.nio.cs
+IBM874 x-IBM874 Cp874 false sun.nio.cs
+ISO_8859_2 ISO-8859-2 ISO8859_2 true sun.nio.cs
+ISO_8859_4 ISO-8859-4 ISO8859_4 true sun.nio.cs
+ISO_8859_5 ISO-8859-5 ISO8859_5 true sun.nio.cs
+ISO_8859_7 ISO-8859-7 ISO8859_7 true sun.nio.cs
+ISO_8859_9 ISO-8859-9 ISO8859_9 true sun.nio.cs
+ISO_8859_13 ISO-8859-13 ISO8859_13 true sun.nio.cs
+ISO_8859_15 ISO-8859-15 ISO8859_15 true sun.nio.cs
+KOI8_R KOI8-R KOI8_R true sun.nio.cs
+KOI8_U KOI8-U KOI8_U true sun.nio.cs
+MS1250 windows-1250 Cp1250 true sun.nio.cs
+MS1251 windows-1251 Cp1251 true sun.nio.cs
+MS1252 windows-1252 Cp1252 true sun.nio.cs
+MS1253 windows-1253 Cp1253 true sun.nio.cs
+MS1254 windows-1254 Cp1254 true sun.nio.cs
+MS1257 windows-1257 Cp1257 true sun.nio.cs
+
diff --git a/jdk/make/tools/src/build/tools/charsetmapping/GenerateMapping.java b/jdk/make/tools/src/build/tools/charsetmapping/GenerateMapping.java
index e1f1d86ab79..6898820d873 100644
--- a/jdk/make/tools/src/build/tools/charsetmapping/GenerateMapping.java
+++ b/jdk/make/tools/src/build/tools/charsetmapping/GenerateMapping.java
@@ -27,12 +27,13 @@ package build.tools.charsetmapping;
import java.io.*;
import java.util.regex.*;
+import build.tools.charsetmapping.GenerateSBCS;
import static build.tools.charsetmapping.CharsetMapping.*;
public class GenerateMapping {
public static void main(String argv[]) throws IOException {
if (argv.length < 2) {
- System.out.println("Usage: java GenCSData fMap fDat");
+ System.out.println("Usage: java GenerateMapping fMap fDat");
System.exit(1);
}
genDataJIS0213(new FileInputStream(argv[0]),
diff --git a/jdk/make/tools/src/build/tools/charsetmapping/GenerateSBCS.java b/jdk/make/tools/src/build/tools/charsetmapping/GenerateSBCS.java
new file mode 100644
index 00000000000..81b5d7be60f
--- /dev/null
+++ b/jdk/make/tools/src/build/tools/charsetmapping/GenerateSBCS.java
@@ -0,0 +1,262 @@
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Sun designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Sun in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+package build.tools.charsetmapping;
+
+import java.io.*;
+import java.util.ArrayList;
+import java.util.Scanner;
+import java.util.Formatter;
+import java.util.regex.*;
+import java.nio.charset.*;
+import static build.tools.charsetmapping.CharsetMapping.*;
+
+public class GenerateSBCS {
+ public static void main(String args[]) throws Exception {
+ if (args.length < 3) {
+ System.err.println("Usage: java GenSBCS srcDir dstDir config");
+ System.exit(1);
+ }
+
+ Scanner s = new Scanner(new File(args[0], args[2]));
+ while (s.hasNextLine()) {
+ String line = s.nextLine();
+ if (line.startsWith("#") || line.length() == 0)
+ continue;
+ String[] fields = line.split("\\s+");
+ if (fields.length < 5) {
+ System.err.println("Misconfiged sbcs line <" + line + ">?");
+ continue;
+ }
+ String clzName = fields[0];
+ String csName = fields[1];
+ String hisName = fields[2];
+ boolean isASCII = Boolean.valueOf(fields[3]);
+ String pkgName = fields[4];
+ System.out.printf("%s,%s,%s,%b,%s%n", clzName, csName, hisName, isASCII, pkgName);
+
+ StringBuilder b2c = new StringBuilder();
+ int c2bLen = genB2C(
+ new FileInputStream(new File(args[0], clzName+".map")), b2c);
+
+ String b2cNR = null;
+ File nrF = new File(args[0], clzName+".nr");
+ if (nrF.exists()) {
+ b2cNR = genNR(new FileInputStream(nrF));
+ }
+
+ String c2bNR = null;
+ File c2bF = new File(args[0], clzName+".c2b");
+ if (c2bF.exists()) {
+ c2bNR = genC2BNR(new FileInputStream(c2bF));
+ }
+
+ genSBCSClass(args[0], args[1], "SingleByte-X.java",
+ clzName, csName, hisName, pkgName, isASCII,
+ b2c.toString(), b2cNR, c2bNR, c2bLen);
+ }
+ }
+
+ private static void toString(char[] sb, int off, int end,
+ Formatter out, String closure) {
+ while (off < end) {
+ out.format(" \"");
+ for (int j = 0; j < 8; j++) {
+ char c = sb[off++];
+ switch (c) {
+ case '\b':
+ out.format("\\b"); break;
+ case '\t':
+ out.format("\\t"); break;
+ case '\n':
+ out.format("\\n"); break;
+ case '\f':
+ out.format("\\f"); break;
+ case '\r':
+ out.format("\\r"); break;
+ case '\"':
+ out.format("\\\""); break;
+ case '\'':
+ out.format("\\'"); break;
+ case '\\':
+ out.format("\\\\"); break;
+ default:
+ out.format("\\u%04X", c & 0xffff);
+ }
+ }
+ if (off == end)
+ out.format("\" %s // 0x%02x - 0x%02x%n", closure, off-8, off-1);
+ else
+ out.format("\" + // 0x%02x - 0x%02x%n", off-8, off-1);
+ }
+ }
+
+ static Pattern sbmap = Pattern.compile("0x(\\p{XDigit}++)\\s++U\\+(\\p{XDigit}++)(\\s++#.*)?");
+ private static int genB2C(InputStream in, StringBuilder out)
+ throws Exception
+ {
+ char[] sb = new char[0x100];
+ int[] indexC2B = new int[0x100];
+
+ for (int i = 0; i < sb.length; i++)
+ sb[i] = UNMAPPABLE_DECODING;
+
+ // parse the b2c mapping table
+ Parser p = new Parser(in, sbmap);
+ Entry e = null;
+ int off = 0;
+ while ((e = p.next()) != null) {
+ sb[e.bs] = (char)e.cp;
+ if (indexC2B[e.cp>>8] == 0) {
+ off += 0x100;
+ indexC2B[e.cp>>8] = 1;
+ }
+ }
+
+ Formatter fm = new Formatter(out);
+ fm.format("%n");
+
+ // vm -server shows cc[byte + 128] access is much faster than
+ // cc[byte&0xff] so we output the upper segment first
+ toString(sb, 0x80, 0x100, fm, "+");
+ toString(sb, 0x00, 0x80, fm, ";");
+
+ fm.close();
+ return off;
+ }
+
+ // generate non-roundtrip entries from xxx.nr file
+ private static String genNR(InputStream in) throws Exception
+ {
+ StringBuilder sb = new StringBuilder();
+ Formatter fm = new Formatter(sb);
+ Parser p = new Parser(in, sbmap);
+ Entry e = null;
+ fm.format("// remove non-roundtrip entries%n");
+ fm.format(" b2cMap = b2cTable.toCharArray();%n");
+ while ((e = p.next()) != null) {
+ fm.format(" b2cMap[%d] = UNMAPPABLE_DECODING;%n",
+ (e.bs>=0x80)?(e.bs-0x80):(e.bs+0x80));
+ }
+ fm.close();
+ return sb.toString();
+ }
+
+ // generate c2b only entries from xxx.c2b file
+ private static String genC2BNR(InputStream in) throws Exception
+ {
+ StringBuilder sb = new StringBuilder();
+ Formatter fm = new Formatter(sb);
+ Parser p = new Parser(in, sbmap);
+ ArrayList es = new ArrayList();
+ Entry e = null;
+ while ((e = p.next()) != null) {
+ es.add(e);
+ }
+
+ fm.format("// non-roundtrip c2b only entries%n");
+ fm.format(" c2bNR = new char[%d];%n", es.size() * 2);
+ int i = 0;
+ for (Entry entry: es) {
+ fm.format(" c2bNR[%d] = 0x%x; c2bNR[%d] = 0x%x;%n",
+ i++, entry.bs, i++, entry.cp);
+ }
+ fm.close();
+ return sb.toString();
+ }
+
+ private static void genSBCSClass(String srcDir,
+ String dstDir,
+ String template,
+ String clzName,
+ String csName,
+ String hisName,
+ String pkgName,
+ boolean isASCII,
+ String b2c,
+ String b2cNR,
+ String c2bNR,
+ int c2blen)
+ throws Exception
+ {
+ Scanner s = new Scanner(new File(srcDir, template));
+ PrintStream out = new PrintStream(new FileOutputStream(
+ new File(dstDir, clzName + ".java")));
+
+ while (s.hasNextLine()) {
+ String line = s.nextLine();
+ int i = line.indexOf("$");
+ if (i == -1) {
+ out.println(line);
+ continue;
+ }
+ if (line.indexOf("$PACKAGE$", i) != -1) {
+ line = line.replace("$PACKAGE$", pkgName);
+ }
+ if (line.indexOf("$NAME_CLZ$", i) != -1) {
+ line = line.replace("$NAME_CLZ$", clzName);
+ }
+ if (line.indexOf("$NAME_CS$", i) != -1) {
+ line = line.replace("$NAME_CS$", csName);
+ }
+ if (line.indexOf("$NAME_ALIASES$", i) != -1) {
+ if ("sun.nio.cs".equals(pkgName))
+ line = line.replace("$NAME_ALIASES$",
+ "StandardCharsets.aliases_" + clzName);
+ else
+ line = line.replace("$NAME_ALIASES$",
+ "ExtendedCharsets.aliasesFor(\"" + csName + "\")");
+ }
+ if (line.indexOf("$NAME_HIS$", i) != -1) {
+ line = line.replace("$NAME_HIS$", hisName);
+ }
+ if (line.indexOf("$CONTAINS$", i) != -1) {
+ if (isASCII)
+ line = " return ((cs.name().equals(\"US-ASCII\")) || (cs instanceof " + clzName + "));";
+ else
+ line = " return (cs instanceof " + clzName + ");";
+ }
+ if (line.indexOf("$B2CTABLE$") != -1) {
+ line = line.replace("$B2CTABLE$", b2c);
+ }
+ if (line.indexOf("$C2BLENGTH$") != -1) {
+ line = line.replace("$C2BLENGTH$", "0x" + Integer.toString(c2blen, 16));
+ }
+ if (line.indexOf("$NONROUNDTRIP_B2C$") != -1) {
+ if (b2cNR == null)
+ continue;
+ line = line.replace("$NONROUNDTRIP_B2C$", b2cNR);
+ }
+
+ if (line.indexOf("$NONROUNDTRIP_C2B$") != -1) {
+ if (c2bNR == null)
+ continue;
+ line = line.replace("$NONROUNDTRIP_C2B$", c2bNR);
+ }
+ out.println(line);
+ }
+ out.close();
+ }
+}
diff --git a/jdk/src/share/classes/sun/io/ByteToCharCp850.java b/jdk/src/share/classes/sun/io/ByteToCharCp850.java
index c048a6b7ec1..62ceb3dba84 100644
--- a/jdk/src/share/classes/sun/io/ByteToCharCp850.java
+++ b/jdk/src/share/classes/sun/io/ByteToCharCp850.java
@@ -1,5 +1,5 @@
/*
- * Copyright 1996-2005 Sun Microsystems, Inc. All Rights Reserved.
+ * Copyright 1996-2002 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -23,7 +23,6 @@
* have any questions.
*/
-
package sun.io;
import sun.nio.cs.IBM850;
@@ -32,6 +31,7 @@ import sun.nio.cs.IBM850;
* A table to convert to Cp850 to Unicode
*
* @author ConverterGenerator tool
+ * @version >= JDK1.1.6
*/
public class ByteToCharCp850 extends ByteToCharSingleByte {
@@ -41,6 +41,6 @@ public class ByteToCharCp850 extends ByteToCharSingleByte {
}
public ByteToCharCp850() {
- super.byteToCharTable = IBM850.getDecoderSingleByteMappings();
+ super.byteToCharTable = new IBM850().getDecoderSingleByteMappings();
}
}
diff --git a/jdk/src/share/classes/sun/io/CharToByteJIS0201.java b/jdk/src/share/classes/sun/io/CharToByteJIS0201.java
index ea78fa7ddc4..ac85f5da75c 100644
--- a/jdk/src/share/classes/sun/io/CharToByteJIS0201.java
+++ b/jdk/src/share/classes/sun/io/CharToByteJIS0201.java
@@ -1,5 +1,5 @@
/*
- * Copyright 1997-1998 Sun Microsystems, Inc. All Rights Reserved.
+ * Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -29,6 +29,7 @@ package sun.io;
* Tables and data to convert Unicode to JIS0201
*
* @author ConverterGenerator tool
+ * @version >= JDK1.1.6
*/
class CharToByteJIS0201 extends CharToByteSingleByte {
@@ -41,8 +42,21 @@ class CharToByteJIS0201 extends CharToByteSingleByte {
super.mask1 = 0xFF00;
super.mask2 = 0x00FF;
super.shift = 8;
+ /*
super.index1 = index1;
super.index2 = index2;
+ */
+ }
+
+ public byte getNative(char inputChar) {
+ return (byte)index2.charAt(index1[(inputChar & mask1) >> shift]
+ + (inputChar & mask2));
+ }
+
+ public boolean canConvert(char ch) {
+ if (index2.charAt(index1[((ch & mask1) >> shift)] + (ch & mask2)) != '\u0000')
+ return true;
+ return (ch == '\u0000');
}
private final static String index2 =
diff --git a/jdk/src/share/classes/sun/io/CharToByteSingleByte.java b/jdk/src/share/classes/sun/io/CharToByteSingleByte.java
index 0812b6822e2..f56e3279a39 100644
--- a/jdk/src/share/classes/sun/io/CharToByteSingleByte.java
+++ b/jdk/src/share/classes/sun/io/CharToByteSingleByte.java
@@ -1,5 +1,5 @@
/*
- * Copyright 1996-2002 Sun Microsystems, Inc. All Rights Reserved.
+ * Copyright 1996-2008 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -25,6 +25,8 @@
package sun.io;
+import static sun.nio.cs.CharsetMapping.*;
+
/**
* A table driven conversion from char to byte for single byte
* character sets. Tables will reside in the class CharToByteYYYYY,
@@ -35,6 +37,7 @@ package sun.io;
*
* @author Lloyd Honomichl
* @author Asmus Freytag
+* @version 8/28/96
*/
public abstract class CharToByteSingleByte extends CharToByteConverter {
@@ -42,12 +45,12 @@ public abstract class CharToByteSingleByte extends CharToByteConverter {
/*
* 1st level index, provided by subclass
*/
- protected short index1[];
+ protected char[] index1;
/*
* 2nd level index, provided by subclass
*/
- protected String index2;
+ protected char[] index2;
/*
* Mask to isolate bits for 1st level index, from subclass
@@ -66,11 +69,11 @@ public abstract class CharToByteSingleByte extends CharToByteConverter {
private char highHalfZoneCode;
- public short[] getIndex1() {
+ public char[] getIndex1() {
return index1;
}
- public String getIndex2() {
+ public char[] getIndex2() {
return index2;
}
public int flush(byte[] output, int outStart, int outEnd)
@@ -229,9 +232,18 @@ public abstract class CharToByteSingleByte extends CharToByteConverter {
return 1;
}
+ int encodeChar(char ch) {
+ char index = index1[ch >> 8];
+ if (index == UNMAPPABLE_ENCODING)
+ return UNMAPPABLE_ENCODING;
+ return index2[index + (ch & 0xff)];
+ }
+
public byte getNative(char inputChar) {
- return (byte)index2.charAt(index1[(inputChar & mask1) >> shift]
- + (inputChar & mask2));
+ int b = encodeChar(inputChar);
+ if (b == UNMAPPABLE_ENCODING)
+ return 0;
+ return (byte)b;
}
/**
@@ -248,11 +260,6 @@ public abstract class CharToByteSingleByte extends CharToByteConverter {
* @return true if a character is mappable
*/
public boolean canConvert(char ch) {
- // Look it up in the table
- if (index2.charAt(index1[((ch & mask1) >> shift)] + (ch & mask2)) != '\u0000')
- return true;
-
- // Nulls are always mappable
- return (ch == '\u0000');
+ return encodeChar(ch) != UNMAPPABLE_ENCODING;
}
}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM437.java b/jdk/src/share/classes/sun/nio/cs/IBM437.java
deleted file mode 100644
index bf4f77c6051..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM437.java
+++ /dev/null
@@ -1,368 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM437
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM437() {
- super("IBM437", StandardCharsets.aliases_IBM437);
- }
-
- public String historicalName() {
- return "Cp437";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM437);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C7\u00FC\u00E9\u00E2\u00E4\u00E0\u00E5\u00E7" + // 0x80 - 0x87
- "\u00EA\u00EB\u00E8\u00EF\u00EE\u00EC\u00C4\u00C5" + // 0x88 - 0x8F
- "\u00C9\u00E6\u00C6\u00F4\u00F6\u00F2\u00FB\u00F9" + // 0x90 - 0x97
- "\u00FF\u00D6\u00DC\u00A2\u00A3\u00A5\u20A7\u0192" + // 0x98 - 0x9F
- "\u00E1\u00ED\u00F3\u00FA\u00F1\u00D1\u00AA\u00BA" + // 0xA0 - 0xA7
- "\u00BF\u2310\u00AC\u00BD\u00BC\u00A1\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556" + // 0xB0 - 0xB7
- "\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567" + // 0xC8 - 0xCF
- "\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B" + // 0xD0 - 0xD7
- "\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u03B1\u00DF\u0393\u03C0\u03A3\u03C3\u00B5\u03C4" + // 0xE0 - 0xE7
- "\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229" + // 0xE8 - 0xEF
- "\u2261\u00B1\u2265\u2264\u2320\u2321\u00F7\u2248" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u221A\u207F\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u00AD\u009B\u009C\u0000\u009D\u0000\u0000" +
- "\u0000\u0000\u00A6\u00AE\u00AA\u0000\u0000\u0000" +
- "\u00F8\u00F1\u00FD\u0000\u0000\u00E6\u0000\u00FA" +
- "\u0000\u0000\u00A7\u00AF\u00AC\u00AB\u0000\u00A8" +
- "\u0000\u0000\u0000\u0000\u008E\u008F\u0092\u0080" +
- "\u0000\u0090\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00A5\u0000\u0000\u0000\u0000\u0099\u0000" +
- "\u0000\u0000\u0000\u0000\u009A\u0000\u0000\u00E1" +
- "\u0085\u00A0\u0083\u0000\u0084\u0086\u0091\u0087" +
- "\u008A\u0082\u0088\u0089\u008D\u00A1\u008C\u008B" +
- "\u0000\u00A4\u0095\u00A2\u0093\u0000\u0094\u00F6" +
- "\u0000\u0097\u00A3\u0096\u0081\u0000\u0000\u0098" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u009F\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E2\u0000\u0000\u0000\u0000" +
- "\u00E9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E4\u0000\u0000\u00E8\u0000" +
- "\u0000\u00EA\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00E0\u0000\u0000\u00EB\u00EE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E3\u0000\u0000\u00E5\u00E7\u0000\u00ED\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00FC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u009E\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F9" +
- "\u00FB\u0000\u0000\u0000\u00EC\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00EF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F7\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F0" +
- "\u0000\u0000\u00F3\u00F2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F4\u00F5" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00C4\u0000" +
- "\u00B3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00DA\u0000\u0000\u0000\u00BF\u0000" +
- "\u0000\u0000\u00C0\u0000\u0000\u0000\u00D9\u0000" +
- "\u0000\u0000\u00C3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00B4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C2\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C1\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C5\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CD\u00BA" +
- "\u00D5\u00D6\u00C9\u00B8\u00B7\u00BB\u00D4\u00D3" +
- "\u00C8\u00BE\u00BD\u00BC\u00C6\u00C7\u00CC\u00B5" +
- "\u00B6\u00B9\u00D1\u00D2\u00CB\u00CF\u00D0\u00CA" +
- "\u00D8\u00D7\u00CE\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DF\u0000" +
- "\u0000\u0000\u00DC\u0000\u0000\u0000\u00DB\u0000" +
- "\u0000\u0000\u00DD\u0000\u0000\u0000\u00DE\u00B0" +
- "\u00B1\u00B2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00FE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 403, 512, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 711, 403, 942, 1182, 403, 1438, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM737.java b/jdk/src/share/classes/sun/nio/cs/IBM737.java
deleted file mode 100644
index 2d5b7509b2c..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM737.java
+++ /dev/null
@@ -1,321 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM737
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM737() {
- super("x-IBM737", StandardCharsets.aliases_IBM737);
- }
-
- public String historicalName() {
- return "Cp737";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM737);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0391\u0392\u0393\u0394\u0395\u0396\u0397\u0398" + // 0x80 - 0x87
- "\u0399\u039A\u039B\u039C\u039D\u039E\u039F\u03A0" + // 0x88 - 0x8F
- "\u03A1\u03A3\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9" + // 0x90 - 0x97
- "\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7\u03B8" + // 0x98 - 0x9F
- "\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF\u03C0" + // 0xA0 - 0xA7
- "\u03C1\u03C3\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556" + // 0xB0 - 0xB7
- "\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567" + // 0xC8 - 0xCF
- "\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B" + // 0xD0 - 0xD7
- "\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u03C9\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD" + // 0xE0 - 0xE7
- "\u03CB\u03CE\u0386\u0388\u0389\u038A\u038C\u038E" + // 0xE8 - 0xEF
- "\u038F\u00B1\u2265\u2264\u03AA\u03AB\u00F7\u2248" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u221A\u207F\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00F8\u00F1\u00FD\u0000\u0000\u0000\u0000\u00FA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F6" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00EA\u0000\u00EB\u00EC\u00ED\u0000\u00EE\u0000" +
- "\u00EF\u00F0\u0000\u0080\u0081\u0082\u0083\u0084" +
- "\u0085\u0086\u0087\u0088\u0089\u008A\u008B\u008C" +
- "\u008D\u008E\u008F\u0090\u0000\u0091\u0092\u0093" +
- "\u0094\u0095\u0096\u0097\u00F4\u00F5\u00E1\u00E2" +
- "\u00E3\u00E5\u0000\u0098\u0099\u009A\u009B\u009C" +
- "\u009D\u009E\u009F\u00A0\u00A1\u00A2\u00A3\u00A4" +
- "\u00A5\u00A6\u00A7\u00A8\u00AA\u00A9\u00AB\u00AC" +
- "\u00AD\u00AE\u00AF\u00E0\u00E4\u00E8\u00E6\u00E7" +
- "\u00E9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FC\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F9\u00FB\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00F7\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F3\u00F2\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C4\u0000\u00B3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DA\u0000\u0000\u0000" +
- "\u00BF\u0000\u0000\u0000\u00C0\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u00C3\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00B4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C2\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C1\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CD\u00BA\u00D5\u00D6\u00C9\u00B8\u00B7\u00BB" +
- "\u00D4\u00D3\u00C8\u00BE\u00BD\u00BC\u00C6\u00C7" +
- "\u00CC\u00B5\u00B6\u00B9\u00D1\u00D2\u00CB\u00CF" +
- "\u00D0\u00CA\u00D8\u00D7\u00CE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DF\u0000\u0000\u0000\u00DC\u0000\u0000\u0000" +
- "\u00DB\u0000\u0000\u0000\u00DD\u0000\u0000\u0000" +
- "\u00DE\u00B0\u00B1\u00B2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 248, 370, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 577, 248, 808, 248, 248, 1064, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM775.java b/jdk/src/share/classes/sun/nio/cs/IBM775.java
deleted file mode 100644
index c0185c9ca6a..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM775.java
+++ /dev/null
@@ -1,326 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM775
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM775() {
- super("IBM775", StandardCharsets.aliases_IBM775);
- }
-
- public String historicalName() {
- return "Cp775";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM775);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0106\u00FC\u00E9\u0101\u00E4\u0123\u00E5\u0107" + // 0x80 - 0x87
- "\u0142\u0113\u0156\u0157\u012B\u0179\u00C4\u00C5" + // 0x88 - 0x8F
- "\u00C9\u00E6\u00C6\u014D\u00F6\u0122\u00A2\u015A" + // 0x90 - 0x97
- "\u015B\u00D6\u00DC\u00F8\u00A3\u00D8\u00D7\u00A4" + // 0x98 - 0x9F
- "\u0100\u012A\u00F3\u017B\u017C\u017A\u201D\u00A6" + // 0xA0 - 0xA7
- "\u00A9\u00AE\u00AC\u00BD\u00BC\u0141\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u0104\u010C\u0118" + // 0xB0 - 0xB7
- "\u0116\u2563\u2551\u2557\u255D\u012E\u0160\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u0172\u016A" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u017D" + // 0xC8 - 0xCF
- "\u0105\u010D\u0119\u0117\u012F\u0161\u0173\u016B" + // 0xD0 - 0xD7
- "\u017E\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u00D3\u00DF\u014C\u0143\u00F5\u00D5\u00B5\u0144" + // 0xE0 - 0xE7
- "\u0136\u0137\u013B\u013C\u0146\u0112\u0145\u2019" + // 0xE8 - 0xEF
- "\u00AD\u00B1\u201C\u00BE\u00B6\u00A7\u00F7\u201E" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u00B9\u00B3\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0096\u009C\u009F\u0000\u00A7\u00F5" +
- "\u0000\u00A8\u0000\u00AE\u00AA\u00F0\u00A9\u0000" +
- "\u00F8\u00F1\u00FD\u00FC\u0000\u00E6\u00F4\u00FA" +
- "\u0000\u00FB\u0000\u00AF\u00AC\u00AB\u00F3\u0000" +
- "\u0000\u0000\u0000\u0000\u008E\u008F\u0092\u0000" +
- "\u0000\u0090\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E0\u0000\u00E5\u0099\u009E" +
- "\u009D\u0000\u0000\u0000\u009A\u0000\u0000\u00E1" +
- "\u0000\u0000\u0000\u0000\u0084\u0086\u0091\u0000" +
- "\u0000\u0082\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00A2\u0000\u00E4\u0094\u00F6" +
- "\u009B\u0000\u0000\u0000\u0081\u0000\u0000\u0000" +
- "\u00A0\u0083\u0000\u0000\u00B5\u00D0\u0080\u0087" +
- "\u0000\u0000\u0000\u0000\u00B6\u00D1\u0000\u0000" +
- "\u0000\u0000\u00ED\u0089\u0000\u0000\u00B8\u00D3" +
- "\u00B7\u00D2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0095\u0085\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00A1\u008C\u0000\u0000\u00BD\u00D4" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00E8\u00E9" +
- "\u0000\u0000\u0000\u00EA\u00EB\u0000\u0000\u0000" +
- "\u0000\u00AD\u0088\u00E3\u00E7\u00EE\u00EC\u0000" +
- "\u0000\u0000\u0000\u0000\u00E2\u0093\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u008A\u008B" +
- "\u0000\u0000\u0097\u0098\u0000\u0000\u0000\u0000" +
- "\u00BE\u00D5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C7\u00D7\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C6\u00D6\u0000\u0000\u0000\u0000" +
- "\u0000\u008D\u00A5\u00A3\u00A4\u00CF\u00D8\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00EF" +
- "\u0000\u0000\u00F2\u00A6\u00F7\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000" +
- "\u0000\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000" +
- "\u0000\u00C3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B4\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C1\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00CD\u00BA\u0000" +
- "\u0000\u00C9\u0000\u0000\u00BB\u0000\u0000\u00C8" +
- "\u0000\u0000\u00BC\u0000\u0000\u00CC\u0000\u0000" +
- "\u00B9\u0000\u0000\u00CB\u0000\u0000\u00CA\u0000" +
- "\u0000\u00CE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00DF\u0000\u0000" +
- "\u0000\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000" +
- "\u0000\u00DD\u0000\u0000\u0000\u00DE\u00B0\u00B1" +
- "\u00B2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 614, 383, 845, 383, 383, 1101, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM850.java b/jdk/src/share/classes/sun/nio/cs/IBM850.java
deleted file mode 100644
index 6bb2a0bae0a..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM850.java
+++ /dev/null
@@ -1,299 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM850
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM850() {
- super("IBM850", StandardCharsets.aliases_IBM850);
- }
-
- public String historicalName() {
- return "Cp850";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM850);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public static String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C7\u00FC\u00E9\u00E2\u00E4\u00E0\u00E5\u00E7" + // 0x80 - 0x87
- "\u00EA\u00EB\u00E8\u00EF\u00EE\u00EC\u00C4\u00C5" + // 0x88 - 0x8F
- "\u00C9\u00E6\u00C6\u00F4\u00F6\u00F2\u00FB\u00F9" + // 0x90 - 0x97
- "\u00FF\u00D6\u00DC\u00F8\u00A3\u00D8\u00D7\u0192" + // 0x98 - 0x9F
- "\u00E1\u00ED\u00F3\u00FA\u00F1\u00D1\u00AA\u00BA" + // 0xA0 - 0xA7
- "\u00BF\u00AE\u00AC\u00BD\u00BC\u00A1\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u00C1\u00C2\u00C0" + // 0xB0 - 0xB7
- "\u00A9\u2563\u2551\u2557\u255D\u00A2\u00A5\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u00E3\u00C3" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u00A4" + // 0xC8 - 0xCF
- "\u00F0\u00D0\u00CA\u00CB\u00C8\u0131\u00CD\u00CE" + // 0xD0 - 0xD7
- "\u00CF\u2518\u250C\u2588\u2584\u00A6\u00CC\u2580" + // 0xD8 - 0xDF
- "\u00D3\u00DF\u00D4\u00D2\u00F5\u00D5\u00B5\u00FE" + // 0xE0 - 0xE7
- "\u00DE\u00DA\u00DB\u00D9\u00FD\u00DD\u00AF\u00B4" + // 0xE8 - 0xEF
- "\u00AD\u00B1\u2017\u00BE\u00B6\u00A7\u00F7\u00B8" + // 0xF0 - 0xF7
- "\u00B0\u00A8\u00B7\u00B9\u00B3\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- protected static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u00AD\u00BD\u009C\u00CF\u00BE\u00DD\u00F5" +
- "\u00F9\u00B8\u00A6\u00AE\u00AA\u00F0\u00A9\u00EE" +
- "\u00F8\u00F1\u00FD\u00FC\u00EF\u00E6\u00F4\u00FA" +
- "\u00F7\u00FB\u00A7\u00AF\u00AC\u00AB\u00F3\u00A8" +
- "\u00B7\u00B5\u00B6\u00C7\u008E\u008F\u0092\u0080" +
- "\u00D4\u0090\u00D2\u00D3\u00DE\u00D6\u00D7\u00D8" +
- "\u00D1\u00A5\u00E3\u00E0\u00E2\u00E5\u0099\u009E" +
- "\u009D\u00EB\u00E9\u00EA\u009A\u00ED\u00E8\u00E1" +
- "\u0085\u00A0\u0083\u00C6\u0084\u0086\u0091\u0087" +
- "\u008A\u0082\u0088\u0089\u008D\u00A1\u008C\u008B" +
- "\u00D0\u00A4\u0095\u00A2\u0093\u00E4\u0094\u00F6" +
- "\u009B\u0097\u00A3\u0096\u0081\u00EC\u00E7\u0098" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00D5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u009F\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000\u0000" +
- "\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000\u0000" +
- "\u00C3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B4\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C1\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00CD\u00BA\u0000\u0000" +
- "\u00C9\u0000\u0000\u00BB\u0000\u0000\u00C8\u0000" +
- "\u0000\u00BC\u0000\u0000\u00CC\u0000\u0000\u00B9" +
- "\u0000\u0000\u00CB\u0000\u0000\u00CA\u0000\u0000" +
- "\u00CE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DF\u0000\u0000\u0000" +
- "\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00B0\u00B1\u00B2" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00FE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 636, 403, 403, 403, 403, 892, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM852.java b/jdk/src/share/classes/sun/nio/cs/IBM852.java
deleted file mode 100644
index c157d929d6f..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM852.java
+++ /dev/null
@@ -1,274 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM852
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM852() {
- super("IBM852", StandardCharsets.aliases_IBM852);
- }
-
- public String historicalName() {
- return "Cp852";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM852);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C7\u00FC\u00E9\u00E2\u00E4\u016F\u0107\u00E7" + // 0x80 - 0x87
- "\u0142\u00EB\u0150\u0151\u00EE\u0179\u00C4\u0106" + // 0x88 - 0x8F
- "\u00C9\u0139\u013A\u00F4\u00F6\u013D\u013E\u015A" + // 0x90 - 0x97
- "\u015B\u00D6\u00DC\u0164\u0165\u0141\u00D7\u010D" + // 0x98 - 0x9F
- "\u00E1\u00ED\u00F3\u00FA\u0104\u0105\u017D\u017E" + // 0xA0 - 0xA7
- "\u0118\u0119\u00AC\u017A\u010C\u015F\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u00C1\u00C2\u011A" + // 0xB0 - 0xB7
- "\u015E\u2563\u2551\u2557\u255D\u017B\u017C\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u0102\u0103" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u00A4" + // 0xC8 - 0xCF
- "\u0111\u0110\u010E\u00CB\u010F\u0147\u00CD\u00CE" + // 0xD0 - 0xD7
- "\u011B\u2518\u250C\u2588\u2584\u0162\u016E\u2580" + // 0xD8 - 0xDF
- "\u00D3\u00DF\u00D4\u0143\u0144\u0148\u0160\u0161" + // 0xE0 - 0xE7
- "\u0154\u00DA\u0155\u0170\u00FD\u00DD\u0163\u00B4" + // 0xE8 - 0xEF
- "\u00AD\u02DD\u02DB\u02C7\u02D8\u00A7\u00F7\u00B8" + // 0xF0 - 0xF7
- "\u00B0\u00A8\u02D9\u0171\u0158\u0159\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0000\u0000\u00CF\u0000\u0000\u00F5" +
- "\u00F9\u0000\u0000\u00AE\u00AA\u00F0\u0000\u0000" +
- "\u00F8\u0000\u0000\u0000\u00EF\u0000\u0000\u0000" +
- "\u00F7\u0000\u0000\u00AF\u0000\u0000\u0000\u0000" +
- "\u0000\u00B5\u00B6\u0000\u008E\u0000\u0000\u0080" +
- "\u0000\u0090\u0000\u00D3\u0000\u00D6\u00D7\u0000" +
- "\u0000\u0000\u0000\u00E0\u00E2\u0000\u0099\u009E" +
- "\u0000\u0000\u00E9\u0000\u009A\u00ED\u0000\u00E1" +
- "\u0000\u00A0\u0083\u0000\u0084\u0000\u0000\u0087" +
- "\u0000\u0082\u0000\u0089\u0000\u00A1\u008C\u0000" +
- "\u0000\u0000\u0000\u00A2\u0093\u0000\u0094\u00F6" +
- "\u0000\u0000\u00A3\u0000\u0081\u00EC\u0000\u0000" +
- "\u00C6\u00C7\u00A4\u00A5\u008F\u0086\u0000\u0000" +
- "\u0000\u0000\u00AC\u009F\u00D2\u00D4\u00D1\u00D0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A8\u00A9" +
- "\u00B7\u00D8\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0091" +
- "\u0092\u0000\u0000\u0095\u0096\u0000\u0000\u009D" +
- "\u0088\u00E3\u00E4\u0000\u0000\u00D5\u00E5\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u008A\u008B" +
- "\u0000\u0000\u00E8\u00EA\u0000\u0000\u00FC\u00FD" +
- "\u0097\u0098\u0000\u0000\u00B8\u00AD\u00E6\u00E7" +
- "\u00DD\u00EE\u009B\u009C\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DE\u0085\u00EB\u00FB" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u008D" +
- "\u00AB\u00BD\u00BE\u00A6\u00A7\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F3\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F4\u00FA" +
- "\u0000\u00F2\u0000\u00F1\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00C4\u0000" +
- "\u00B3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00DA\u0000\u0000\u0000\u00BF\u0000" +
- "\u0000\u0000\u00C0\u0000\u0000\u0000\u00D9\u0000" +
- "\u0000\u0000\u00C3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00B4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C2\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C1\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C5\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CD\u00BA" +
- "\u0000\u0000\u00C9\u0000\u0000\u00BB\u0000\u0000" +
- "\u00C8\u0000\u0000\u00BC\u0000\u0000\u00CC\u0000" +
- "\u0000\u00B9\u0000\u0000\u00CB\u0000\u0000\u00CA" +
- "\u0000\u0000\u00CE\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DF\u0000" +
- "\u0000\u0000\u00DC\u0000\u0000\u0000\u00DB\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B0" +
- "\u00B1\u00B2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00FE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 254, 438, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 694, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM855.java b/jdk/src/share/classes/sun/nio/cs/IBM855.java
deleted file mode 100644
index f27b9900572..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM855.java
+++ /dev/null
@@ -1,304 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM855
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM855() {
- super("IBM855", StandardCharsets.aliases_IBM855);
- }
-
- public String historicalName() {
- return "Cp855";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM855);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0452\u0402\u0453\u0403\u0451\u0401\u0454\u0404" + // 0x80 - 0x87
- "\u0455\u0405\u0456\u0406\u0457\u0407\u0458\u0408" + // 0x88 - 0x8F
- "\u0459\u0409\u045A\u040A\u045B\u040B\u045C\u040C" + // 0x90 - 0x97
- "\u045E\u040E\u045F\u040F\u044E\u042E\u044A\u042A" + // 0x98 - 0x9F
- "\u0430\u0410\u0431\u0411\u0446\u0426\u0434\u0414" + // 0xA0 - 0xA7
- "\u0435\u0415\u0444\u0424\u0433\u0413\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u0445\u0425\u0438" + // 0xB0 - 0xB7
- "\u0418\u2563\u2551\u2557\u255D\u0439\u0419\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u043A\u041A" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u00A4" + // 0xC8 - 0xCF
- "\u043B\u041B\u043C\u041C\u043D\u041D\u043E\u041E" + // 0xD0 - 0xD7
- "\u043F\u2518\u250C\u2588\u2584\u041F\u044F\u2580" + // 0xD8 - 0xDF
- "\u042F\u0440\u0420\u0441\u0421\u0442\u0422\u0443" + // 0xE0 - 0xE7
- "\u0423\u0436\u0416\u0432\u0412\u044C\u042C\u2116" + // 0xE8 - 0xEF
- "\u00AD\u044B\u042B\u0437\u0417\u0448\u0428\u044D" + // 0xF0 - 0xF7
- "\u042D\u0449\u0429\u0447\u0427\u00A7\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0000\u0000\u00CF\u0000\u0000\u00FD" +
- "\u0000\u0000\u0000\u00AE\u0000\u00F0\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0085\u0081\u0083\u0087" +
- "\u0089\u008B\u008D\u008F\u0091\u0093\u0095\u0097" +
- "\u0000\u0099\u009B\u00A1\u00A3\u00EC\u00AD\u00A7" +
- "\u00A9\u00EA\u00F4\u00B8\u00BE\u00C7\u00D1\u00D3" +
- "\u00D5\u00D7\u00DD\u00E2\u00E4\u00E6\u00E8\u00AB" +
- "\u00B6\u00A5\u00FC\u00F6\u00FA\u009F\u00F2\u00EE" +
- "\u00F8\u009D\u00E0\u00A0\u00A2\u00EB\u00AC\u00A6" +
- "\u00A8\u00E9\u00F3\u00B7\u00BD\u00C6\u00D0\u00D2" +
- "\u00D4\u00D6\u00D8\u00E1\u00E3\u00E5\u00E7\u00AA" +
- "\u00B5\u00A4\u00FB\u00F5\u00F9\u009E\u00F1\u00ED" +
- "\u00F7\u009C\u00DE\u0000\u0084\u0080\u0082\u0086" +
- "\u0088\u008A\u008C\u008E\u0090\u0092\u0094\u0096" +
- "\u0000\u0098\u009A\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00EF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000" +
- "\u0000\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000" +
- "\u0000\u00C3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B4\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C1\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00CD\u00BA\u0000" +
- "\u0000\u00C9\u0000\u0000\u00BB\u0000\u0000\u00C8" +
- "\u0000\u0000\u00BC\u0000\u0000\u00CC\u0000\u0000" +
- "\u00B9\u0000\u0000\u00CB\u0000\u0000\u00CA\u0000" +
- "\u0000\u00CE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00DF\u0000\u0000" +
- "\u0000\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00B0\u00B1" +
- "\u00B2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 188, 188, 188, 443, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 677, 188, 188, 188, 933, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM857.java b/jdk/src/share/classes/sun/nio/cs/IBM857.java
deleted file mode 100644
index 1462d6dc38d..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM857.java
+++ /dev/null
@@ -1,263 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM857
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM857() {
- super("IBM857", StandardCharsets.aliases_IBM857);
- }
-
- public String historicalName() {
- return "Cp857";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM857);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C7\u00FC\u00E9\u00E2\u00E4\u00E0\u00E5\u00E7" + // 0x80 - 0x87
- "\u00EA\u00EB\u00E8\u00EF\u00EE\u0131\u00C4\u00C5" + // 0x88 - 0x8F
- "\u00C9\u00E6\u00C6\u00F4\u00F6\u00F2\u00FB\u00F9" + // 0x90 - 0x97
- "\u0130\u00D6\u00DC\u00F8\u00A3\u00D8\u015E\u015F" + // 0x98 - 0x9F
- "\u00E1\u00ED\u00F3\u00FA\u00F1\u00D1\u011E\u011F" + // 0xA0 - 0xA7
- "\u00BF\u00AE\u00AC\u00BD\u00BC\u00A1\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u00C1\u00C2\u00C0" + // 0xB0 - 0xB7
- "\u00A9\u2563\u2551\u2557\u255D\u00A2\u00A5\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u00E3\u00C3" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u00A4" + // 0xC8 - 0xCF
- "\u00BA\u00AA\u00CA\u00CB\u00C8\uFFFD\u00CD\u00CE" + // 0xD0 - 0xD7
- "\u00CF\u2518\u250C\u2588\u2584\u00A6\u00CC\u2580" + // 0xD8 - 0xDF
- "\u00D3\u00DF\u00D4\u00D2\u00F5\u00D5\u00B5\uFFFD" + // 0xE0 - 0xE7
- "\u00D7\u00DA\u00DB\u00D9\u00EC\u00FF\u00AF\u00B4" + // 0xE8 - 0xEF
- "\u00AD\u00B1\uFFFD\u00BE\u00B6\u00A7\u00F7\u00B8" + // 0xF0 - 0xF7
- "\u00B0\u00A8\u00B7\u00B9\u00B3\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u00AD\u00BD\u009C\u00CF\u00BE\u00DD\u00F5" +
- "\u00F9\u00B8\u00D1\u00AE\u00AA\u00F0\u00A9\u00EE" +
- "\u00F8\u00F1\u00FD\u00FC\u00EF\u00E6\u00F4\u00FA" +
- "\u00F7\u00FB\u00D0\u00AF\u00AC\u00AB\u00F3\u00A8" +
- "\u00B7\u00B5\u00B6\u00C7\u008E\u008F\u0092\u0080" +
- "\u00D4\u0090\u00D2\u00D3\u00DE\u00D6\u00D7\u00D8" +
- "\u0000\u00A5\u00E3\u00E0\u00E2\u00E5\u0099\u00E8" +
- "\u009D\u00EB\u00E9\u00EA\u009A\u0000\u0000\u00E1" +
- "\u0085\u00A0\u0083\u00C6\u0084\u0086\u0091\u0087" +
- "\u008A\u0082\u0088\u0089\u00EC\u00A1\u008C\u008B" +
- "\u0000\u00A4\u0095\u00A2\u0093\u00E4\u0094\u00F6" +
- "\u009B\u0097\u00A3\u0096\u0081\u0000\u0000\u00ED" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A6\u00A7" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0098\u008D\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u009E\u009F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C4\u0000\u00B3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DA\u0000\u0000\u0000" +
- "\u00BF\u0000\u0000\u0000\u00C0\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u00C3\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00B4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C2\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C1\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CD\u00BA\u0000\u0000\u00C9\u0000\u0000\u00BB" +
- "\u0000\u0000\u00C8\u0000\u0000\u00BC\u0000\u0000" +
- "\u00CC\u0000\u0000\u00B9\u0000\u0000\u00CB\u0000" +
- "\u0000\u00CA\u0000\u0000\u00CE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DF\u0000\u0000\u0000\u00DC\u0000\u0000\u0000" +
- "\u00DB\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B0\u00B1\u00B2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 608, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM858.java b/jdk/src/share/classes/sun/nio/cs/IBM858.java
deleted file mode 100644
index ffe7ce0200a..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM858.java
+++ /dev/null
@@ -1,264 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM858
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM858() {
- super("IBM00858", StandardCharsets.aliases_IBM858);
- }
-
- public String historicalName() {
- return "Cp858";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM858);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public static String getDecoderSingleByteMappings() {
- return IBM850.getDecoderSingleByteMappings();
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends IBM850.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0xD5) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u00AD\u00BD\u009C\u00CF\u00BE\u00DD\u00F5" +
- "\u00F9\u00B8\u00A6\u00AE\u00AA\u00F0\u00A9\u00EE" +
- "\u00F8\u00F1\u00FD\u00FC\u00EF\u00E6\u00F4\u00FA" +
- "\u00F7\u00FB\u00A7\u00AF\u00AC\u00AB\u00F3\u00A8" +
- "\u00B7\u00B5\u00B6\u00C7\u008E\u008F\u0092\u0080" +
- "\u00D4\u0090\u00D2\u00D3\u00DE\u00D6\u00D7\u00D8" +
- "\u00D1\u00A5\u00E3\u00E0\u00E2\u00E5\u0099\u009E" +
- "\u009D\u00EB\u00E9\u00EA\u009A\u00ED\u00E8\u00E1" +
- "\u0085\u00A0\u0083\u00C6\u0084\u0086\u0091\u0087" +
- "\u008A\u0082\u0088\u0089\u008D\u00A1\u008C\u008B" +
- "\u00D0\u00A4\u0095\u00A2\u0093\u00E4\u0094\u00F6" +
- "\u009B\u0097\u00A3\u0096\u0081\u00EC\u00E7\u0098" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u009F\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000\u0000" +
- "\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000\u0000" +
- "\u00C3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B4\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C1\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00CD\u00BA\u0000\u0000" +
- "\u00C9\u0000\u0000\u00BB\u0000\u0000\u00C8\u0000" +
- "\u0000\u00BC\u0000\u0000\u00CC\u0000\u0000\u00B9" +
- "\u0000\u0000\u00CB\u0000\u0000\u00CA\u0000\u0000" +
- "\u00CE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DF\u0000\u0000\u0000" +
- "\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00B0\u00B1\u00B2" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00FE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 636, 403, 403, 403, 403, 892, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM862.java b/jdk/src/share/classes/sun/nio/cs/IBM862.java
deleted file mode 100644
index b6498447341..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM862.java
+++ /dev/null
@@ -1,396 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM862
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM862() {
- super("IBM862", StandardCharsets.aliases_IBM862);
- }
-
- public String historicalName() {
- return "Cp862";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM862);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7" + // 0x80 - 0x87
- "\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF" + // 0x88 - 0x8F
- "\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7" + // 0x90 - 0x97
- "\u05E8\u05E9\u05EA\u00A2\u00A3\u00A5\u20A7\u0192" + // 0x98 - 0x9F
- "\u00E1\u00ED\u00F3\u00FA\u00F1\u00D1\u00AA\u00BA" + // 0xA0 - 0xA7
- "\u00BF\u2310\u00AC\u00BD\u00BC\u00A1\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556" + // 0xB0 - 0xB7
- "\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567" + // 0xC8 - 0xCF
- "\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B" + // 0xD0 - 0xD7
- "\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u03B1\u00DF\u0393\u03C0\u03A3\u03C3\u00B5\u03C4" + // 0xE0 - 0xE7
- "\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229" + // 0xE8 - 0xEF
- "\u2261\u00B1\u2265\u2264\u2320\u2321\u00F7\u2248" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u221A\u207F\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u00AD\u009B\u009C\u0000\u009D\u0000\u0000" +
- "\u0000\u0000\u00A6\u00AE\u00AA\u0000\u0000\u0000" +
- "\u00F8\u00F1\u00FD\u0000\u0000\u00E6\u0000\u00FA" +
- "\u0000\u0000\u00A7\u00AF\u00AC\u00AB\u0000\u00A8" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00A5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00E1" +
- "\u0000\u00A0\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A1\u0000\u0000" +
- "\u0000\u00A4\u0000\u00A2\u0000\u0000\u0000\u00F6" +
- "\u0000\u0000\u00A3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u009F\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00E2\u0000" +
- "\u0000\u0000\u0000\u00E9\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00E4\u0000" +
- "\u0000\u00E8\u0000\u0000\u00EA\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00E0\u0000\u0000\u00EB" +
- "\u00EE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E3\u0000\u0000\u00E5\u00E7" +
- "\u0000\u00ED\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0080\u0081\u0082\u0083\u0084\u0085" +
- "\u0086\u0087\u0088\u0089\u008A\u008B\u008C\u008D" +
- "\u008E\u008F\u0090\u0091\u0092\u0093\u0094\u0095" +
- "\u0096\u0097\u0098\u0099\u009A\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00FC\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u009E\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F9\u00FB\u0000" +
- "\u0000\u0000\u00EC\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00EF\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F7\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F0\u0000\u0000" +
- "\u00F3\u00F2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00A9\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F4\u00F5\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000\u0000" +
- "\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000\u0000" +
- "\u00C3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B4\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C1\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00CD\u00BA\u00D5\u00D6" +
- "\u00C9\u00B8\u00B7\u00BB\u00D4\u00D3\u00C8\u00BE" +
- "\u00BD\u00BC\u00C6\u00C7\u00CC\u00B5\u00B6\u00B9" +
- "\u00D1\u00D2\u00CB\u00CF\u00D0\u00CA\u00D8\u00D7" +
- "\u00CE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DF\u0000\u0000\u0000" +
- "\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000\u0000" +
- "\u00DD\u0000\u0000\u0000\u00DE\u00B0\u00B1\u00B2" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00FE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 251, 398, 507, 398, 706, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 941, 398, 1172, 1412, 398, 1668, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
- 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM866.java b/jdk/src/share/classes/sun/nio/cs/IBM866.java
deleted file mode 100644
index 5211cb36161..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM866.java
+++ /dev/null
@@ -1,332 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM866
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM866() {
- super("IBM866", StandardCharsets.aliases_IBM866);
- }
-
- public String historicalName() {
- return "Cp866";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM866);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417" + // 0x80 - 0x87
- "\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F" + // 0x88 - 0x8F
- "\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427" + // 0x90 - 0x97
- "\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F" + // 0x98 - 0x9F
- "\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437" + // 0xA0 - 0xA7
- "\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556" + // 0xB0 - 0xB7
- "\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567" + // 0xC8 - 0xCF
- "\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B" + // 0xD0 - 0xD7
- "\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447" + // 0xE0 - 0xE7
- "\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" + // 0xE8 - 0xEF
- "\u0401\u0451\u0404\u0454\u0407\u0457\u040E\u045E" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u221A\u2116\u00A4\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0000\u0000\u00FD\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00F8\u0000\u0000\u0000\u0000\u0000\u0000\u00FA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00F0\u0000\u0000\u00F2\u0000\u0000\u00F4\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F6\u0000\u0080" +
- "\u0081\u0082\u0083\u0084\u0085\u0086\u0087\u0088" +
- "\u0089\u008A\u008B\u008C\u008D\u008E\u008F\u0090" +
- "\u0091\u0092\u0093\u0094\u0095\u0096\u0097\u0098" +
- "\u0099\u009A\u009B\u009C\u009D\u009E\u009F\u00A0" +
- "\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7\u00A8" +
- "\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF\u00E0" +
- "\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7\u00E8" +
- "\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF\u0000" +
- "\u00F1\u0000\u0000\u00F3\u0000\u0000\u00F5\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00FC" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F9\u00FB\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C4\u0000\u00B3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DA\u0000\u0000\u0000" +
- "\u00BF\u0000\u0000\u0000\u00C0\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u00C3\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00B4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C2\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C1\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CD\u00BA\u00D5\u00D6\u00C9\u00B8\u00B7\u00BB" +
- "\u00D4\u00D3\u00C8\u00BE\u00BD\u00BC\u00C6\u00C7" +
- "\u00CC\u00B5\u00B6\u00B9\u00D1\u00D2\u00CB\u00CF" +
- "\u00D0\u00CA\u00D8\u00D7\u00CE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DF\u0000\u0000\u0000\u00DC\u0000\u0000\u0000" +
- "\u00DB\u0000\u0000\u0000\u00DD\u0000\u0000\u0000" +
- "\u00DE\u00B0\u00B1\u00B2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 184, 184, 184, 439, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 673, 904, 184, 184, 1160, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
- 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/IBM874.java b/jdk/src/share/classes/sun/nio/cs/IBM874.java
deleted file mode 100644
index a1d9195a920..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/IBM874.java
+++ /dev/null
@@ -1,252 +0,0 @@
-/*
- * Copyright 2003-2005 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM874
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM874() {
- super("x-IBM874", StandardCharsets.aliases_IBM874);
- }
-
- public String historicalName() {
- return "Cp874";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM874);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x80 - 0x87
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x90 - 0x97
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x98 - 0x9F
- "\u0E48\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07" + // 0xA0 - 0xA7
- "\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F" + // 0xA8 - 0xAF
- "\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17" + // 0xB0 - 0xB7
- "\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F" + // 0xB8 - 0xBF
- "\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27" + // 0xC0 - 0xC7
- "\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F" + // 0xC8 - 0xCF
- "\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37" + // 0xD0 - 0xD7
- "\u0E38\u0E39\u0E3A\u0E49\u0E4A\u0E4B\u0E4C\u0E3F" + // 0xD8 - 0xDF
- "\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47" + // 0xE0 - 0xE7
- "\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F" + // 0xE8 - 0xEF
- "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57" + // 0xF0 - 0xF7
- "\u0E58\u0E59\u0E5A\u0E5B\u00A2\u00AC\u00A6\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u00FC\u0000\u0000\u0000\u00FE\u0000" +
- "\u0000\u0000\u0000\u0000\u00FD\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A1\u00A2\u00A3" +
- "\u00A4\u00A5\u00A6\u00A7\u00A8\u00A9\u00AA\u00AB" +
- "\u00AC\u00AD\u00AE\u00AF\u00B0\u00B1\u00B2\u00B3" +
- "\u00B4\u00B5\u00B6\u00B7\u00B8\u00B9\u00BA\u00BB" +
- "\u00BC\u00BD\u00BE\u00BF\u00C0\u00C1\u00C2\u00C3" +
- "\u00C4\u00C5\u00C6\u00C7\u00C8\u00C9\u00CA\u00CB" +
- "\u00CC\u00CD\u00CE\u00CF\u00D0\u00D1\u00D2\u00D3" +
- "\u00D4\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA\u0000" +
- "\u0000\u0000\u0000\u00DF\u00E0\u00E1\u00E2\u00E3" +
- "\u00E4\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB" +
- "\u00EC\u00ED\u00EE\u00EF\u00F0\u00F1\u00F2\u00F3" +
- "\u00F4\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA\u00FB" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0080\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 428, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 520, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ISO_8859_13.java b/jdk/src/share/classes/sun/nio/cs/ISO_8859_13.java
deleted file mode 100644
index e19c0610631..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ISO_8859_13.java
+++ /dev/null
@@ -1,266 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class ISO_8859_13
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_13() {
- super("ISO-8859-13", StandardCharsets.aliases_ISO_8859_13);
- }
-
- public String historicalName() {
- return "ISO8859_13";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_13));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u201D\u00A2\u00A3\u00A4\u201E\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00D8\u00A9\u0156\u00AB\u00AC\u00AD\u00AE\u00C6" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u201C\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00F8\u00B9\u0157\u00BB\u00BC\u00BD\u00BE\u00E6" + // 0xB8 - 0xBF
- "\u0104\u012E\u0100\u0106\u00C4\u00C5\u0118\u0112" + // 0xC0 - 0xC7
- "\u010C\u00C9\u0179\u0116\u0122\u0136\u012A\u013B" + // 0xC8 - 0xCF
- "\u0160\u0143\u0145\u00D3\u014C\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u0172\u0141\u015A\u016A\u00DC\u017B\u017D\u00DF" + // 0xD8 - 0xDF
- "\u0105\u012F\u0101\u0107\u00E4\u00E5\u0119\u0113" + // 0xE0 - 0xE7
- "\u010D\u00E9\u017A\u0117\u0123\u0137\u012B\u013C" + // 0xE8 - 0xEF
- "\u0161\u0144\u0146\u00F3\u014D\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u0173\u0142\u015B\u016B\u00FC\u017C\u017E\u2019" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u00A2\u00A3\u00A4\u0000\u00A6\u00A7" +
- "\u0000\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u0000" +
- "\u00B0\u00B1\u00B2\u00B3\u0000\u00B5\u00B6\u00B7" +
- "\u0000\u00B9\u0000\u00BB\u00BC\u00BD\u00BE\u0000" +
- "\u0000\u0000\u0000\u0000\u00C4\u00C5\u00AF\u0000" +
- "\u0000\u00C9\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00D3\u0000\u00D5\u00D6\u00D7" +
- "\u00A8\u0000\u0000\u0000\u00DC\u0000\u0000\u00DF" +
- "\u0000\u0000\u0000\u0000\u00E4\u00E5\u00BF\u0000" +
- "\u0000\u00E9\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F3\u0000\u00F5\u00F6\u00F7" +
- "\u00B8\u0000\u0000\u0000\u00FC\u0000\u0000\u0000" +
- "\u00C2\u00E2\u0000\u0000\u00C0\u00E0\u00C3\u00E3" +
- "\u0000\u0000\u0000\u0000\u00C8\u00E8\u0000\u0000" +
- "\u0000\u0000\u00C7\u00E7\u0000\u0000\u00CB\u00EB" +
- "\u00C6\u00E6\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CC\u00EC\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CE\u00EE\u0000\u0000\u00C1\u00E1" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CD\u00ED" +
- "\u0000\u0000\u0000\u00CF\u00EF\u0000\u0000\u0000" +
- "\u0000\u00D9\u00F9\u00D1\u00F1\u00D2\u00F2\u0000" +
- "\u0000\u0000\u0000\u0000\u00D4\u00F4\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AA\u00BA" +
- "\u0000\u0000\u00DA\u00FA\u0000\u0000\u0000\u0000" +
- "\u00D0\u00F0\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00DB\u00FB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00D8\u00F8\u0000\u0000\u0000\u0000" +
- "\u0000\u00CA\u00EA\u00DD\u00FD\u00DE\u00FE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00FF" +
- "\u0000\u0000\u00B4\u00A1\u00A5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 614, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ISO_8859_15.java b/jdk/src/share/classes/sun/nio/cs/ISO_8859_15.java
deleted file mode 100644
index 0841c23fc44..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ISO_8859_15.java
+++ /dev/null
@@ -1,249 +0,0 @@
-
-/*
- * Copyright 2000-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-
-
-public class ISO_8859_15 extends Charset implements HistoricallyNamedCharset
-{
-
- public ISO_8859_15() {
- super("ISO-8859-15", StandardCharsets.aliases_ISO_8859_15);
- }
-
- public String historicalName() {
- return "ISO8859_15";
- }
-
- public boolean contains(Charset cs) {
- return ((cs instanceof US_ASCII)
- || (cs instanceof ISO_8859_1)
- || (cs instanceof ISO_8859_15));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
-
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u00A1\u00A2\u00A3\u20AC\u00A5\u0160\u00A7" + // 0xA0 - 0xA7
- "\u0161\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u017D\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u017E\u00B9\u00BA\u00BB\u0152\u0153\u0178\u00BF" + // 0xB8 - 0xBF
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" + // 0xC0 - 0xC7
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" + // 0xC8 - 0xCF
- "\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD\u00DE\u00DF" + // 0xD8 - 0xDF
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" + // 0xE0 - 0xE7
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" + // 0xE8 - 0xEF
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u00FE\u00FF" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
-
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u00A1\u00A2\u00A3\u0000\u00A5\u0000\u00A7" +
- "\u0000\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u0000\u00B5\u00B6\u00B7" +
- "\u0000\u00B9\u00BA\u00BB\u0000\u0000\u0000\u00BF" +
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD\u00DE\u00DF" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u00FE\u00FF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00BC\u00BD\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A6\u00A8\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00BE\u0000\u0000\u0000\u0000\u00B4\u00B8\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00A4" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 467, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- };
-
- }
-
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ISO_8859_2.java b/jdk/src/share/classes/sun/nio/cs/ISO_8859_2.java
deleted file mode 100644
index 6f2d74f503e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ISO_8859_2.java
+++ /dev/null
@@ -1,246 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-
-public class ISO_8859_2
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_2() {
- super("ISO-8859-2", StandardCharsets.aliases_ISO_8859_2);
- }
-
- public String historicalName() {
- return "ISO8859_2";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_2));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u0104\u02D8\u0141\u00A4\u013D\u015A\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u0160\u015E\u0164\u0179\u00AD\u017D\u017B" + // 0xA8 - 0xAF
- "\u00B0\u0105\u02DB\u0142\u00B4\u013E\u015B\u02C7" + // 0xB0 - 0xB7
- "\u00B8\u0161\u015F\u0165\u017A\u02DD\u017E\u017C" + // 0xB8 - 0xBF
- "\u0154\u00C1\u00C2\u0102\u00C4\u0139\u0106\u00C7" + // 0xC0 - 0xC7
- "\u010C\u00C9\u0118\u00CB\u011A\u00CD\u00CE\u010E" + // 0xC8 - 0xCF
- "\u0110\u0143\u0147\u00D3\u00D4\u0150\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u0158\u016E\u00DA\u0170\u00DC\u00DD\u0162\u00DF" + // 0xD8 - 0xDF
- "\u0155\u00E1\u00E2\u0103\u00E4\u013A\u0107\u00E7" + // 0xE0 - 0xE7
- "\u010D\u00E9\u0119\u00EB\u011B\u00ED\u00EE\u010F" + // 0xE8 - 0xEF
- "\u0111\u0144\u0148\u00F3\u00F4\u0151\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u0159\u016F\u00FA\u0171\u00FC\u00FD\u0163\u02D9" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u0000\u00A4\u0000\u0000\u00A7" +
- "\u00A8\u0000\u0000\u0000\u0000\u00AD\u0000\u0000" +
- "\u00B0\u0000\u0000\u0000\u00B4\u0000\u0000\u0000" +
- "\u00B8\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C1\u00C2\u0000\u00C4\u0000\u0000\u00C7" +
- "\u0000\u00C9\u0000\u00CB\u0000\u00CD\u00CE\u0000" +
- "\u0000\u0000\u0000\u00D3\u00D4\u0000\u00D6\u00D7" +
- "\u0000\u0000\u00DA\u0000\u00DC\u00DD\u0000\u00DF" +
- "\u0000\u00E1\u00E2\u0000\u00E4\u0000\u0000\u00E7" +
- "\u0000\u00E9\u0000\u00EB\u0000\u00ED\u00EE\u0000" +
- "\u0000\u0000\u0000\u00F3\u00F4\u0000\u00F6\u00F7" +
- "\u0000\u0000\u00FA\u0000\u00FC\u00FD\u0000\u0000" +
- "\u00C3\u00E3\u00A1\u00B1\u00C6\u00E6\u0000\u0000" +
- "\u0000\u0000\u00C8\u00E8\u00CF\u00EF\u00D0\u00F0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CA\u00EA" +
- "\u00CC\u00EC\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00C5" +
- "\u00E5\u0000\u0000\u00A5\u00B5\u0000\u0000\u00A3" +
- "\u00B3\u00D1\u00F1\u0000\u0000\u00D2\u00F2\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00D5\u00F5" +
- "\u0000\u0000\u00C0\u00E0\u0000\u0000\u00D8\u00F8" +
- "\u00A6\u00B6\u0000\u0000\u00AA\u00BA\u00A9\u00B9" +
- "\u00DE\u00FE\u00AB\u00BB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00D9\u00F9\u00DB\u00FB" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00AC" +
- "\u00BC\u00AF\u00BF\u00AE\u00BE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00B7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A2\u00FF" +
- "\u0000\u00B2\u0000\u00BD\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 254, 438, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ISO_8859_4.java b/jdk/src/share/classes/sun/nio/cs/ISO_8859_4.java
deleted file mode 100644
index a3f87881550..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ISO_8859_4.java
+++ /dev/null
@@ -1,244 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class ISO_8859_4
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_4() {
- super("ISO-8859-4", StandardCharsets.aliases_ISO_8859_4);
- }
-
- public String historicalName() {
- return "ISO8859_4";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_4));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u0104\u0138\u0156\u00A4\u0128\u013B\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u0160\u0112\u0122\u0166\u00AD\u017D\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u0105\u02DB\u0157\u00B4\u0129\u013C\u02C7" + // 0xB0 - 0xB7
- "\u00B8\u0161\u0113\u0123\u0167\u014A\u017E\u014B" + // 0xB8 - 0xBF
- "\u0100\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u012E" + // 0xC0 - 0xC7
- "\u010C\u00C9\u0118\u00CB\u0116\u00CD\u00CE\u012A" + // 0xC8 - 0xCF
- "\u0110\u0145\u014C\u0136\u00D4\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u00D8\u0172\u00DA\u00DB\u00DC\u0168\u016A\u00DF" + // 0xD8 - 0xDF
- "\u0101\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u012F" + // 0xE0 - 0xE7
- "\u010D\u00E9\u0119\u00EB\u0117\u00ED\u00EE\u012B" + // 0xE8 - 0xEF
- "\u0111\u0146\u014D\u0137\u00F4\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u00F8\u0173\u00FA\u00FB\u00FC\u0169\u016B\u02D9" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u0000\u00A4\u0000\u0000\u00A7" +
- "\u00A8\u0000\u0000\u0000\u0000\u00AD\u0000\u00AF" +
- "\u00B0\u0000\u0000\u0000\u00B4\u0000\u0000\u0000" +
- "\u00B8\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u0000" +
- "\u0000\u00C9\u0000\u00CB\u0000\u00CD\u00CE\u0000" +
- "\u0000\u0000\u0000\u0000\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u0000\u00DA\u00DB\u00DC\u0000\u0000\u00DF" +
- "\u0000\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u0000" +
- "\u0000\u00E9\u0000\u00EB\u0000\u00ED\u00EE\u0000" +
- "\u0000\u0000\u0000\u0000\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u0000\u00FA\u00FB\u00FC\u0000\u0000\u0000" +
- "\u00C0\u00E0\u0000\u0000\u00A1\u00B1\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C8\u00E8\u0000\u0000" +
- "\u00D0\u00F0\u00AA\u00BA\u0000\u0000\u00CC\u00EC" +
- "\u00CA\u00EA\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00AB\u00BB\u0000\u0000\u0000\u0000" +
- "\u00A5\u00B5\u00CF\u00EF\u0000\u0000\u00C7\u00E7" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00D3\u00F3" +
- "\u00A2\u0000\u0000\u00A6\u00B6\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00D1\u00F1\u0000" +
- "\u0000\u0000\u00BD\u00BF\u00D2\u00F2\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A3\u00B3" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A9\u00B9\u0000\u0000\u0000\u0000\u00AC\u00BC" +
- "\u00DD\u00FD\u00DE\u00FE\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00D9\u00F9\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00AE\u00BE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B7" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00FF\u0000\u00B2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 440, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ISO_8859_5.java b/jdk/src/share/classes/sun/nio/cs/ISO_8859_5.java
deleted file mode 100644
index cb7fb5e3d15..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ISO_8859_5.java
+++ /dev/null
@@ -1,271 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class ISO_8859_5
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_5() {
- super("ISO-8859-5", StandardCharsets.aliases_ISO_8859_5);
- }
-
- public String historicalName() {
- return "ISO8859_5";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_5));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u0401\u0402\u0403\u0404\u0405\u0406\u0407" + // 0xA0 - 0xA7
- "\u0408\u0409\u040A\u040B\u040C\u00AD\u040E\u040F" + // 0xA8 - 0xAF
- "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417" + // 0xB0 - 0xB7
- "\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F" + // 0xB8 - 0xBF
- "\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427" + // 0xC0 - 0xC7
- "\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F" + // 0xC8 - 0xCF
- "\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437" + // 0xD0 - 0xD7
- "\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F" + // 0xD8 - 0xDF
- "\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447" + // 0xE0 - 0xE7
- "\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" + // 0xE8 - 0xEF
- "\u2116\u0451\u0452\u0453\u0454\u0455\u0456\u0457" + // 0xF0 - 0xF7
- "\u0458\u0459\u045A\u045B\u045C\u00A7\u045E\u045F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u0000\u0000\u0000\u0000\u00FD" +
- "\u0000\u0000\u0000\u0000\u0000\u00AD\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A1\u00A2" +
- "\u00A3\u00A4\u00A5\u00A6\u00A7\u00A8\u00A9\u00AA" +
- "\u00AB\u00AC\u0000\u00AE\u00AF\u00B0\u00B1\u00B2" +
- "\u00B3\u00B4\u00B5\u00B6\u00B7\u00B8\u00B9\u00BA" +
- "\u00BB\u00BC\u00BD\u00BE\u00BF\u00C0\u00C1\u00C2" +
- "\u00C3\u00C4\u00C5\u00C6\u00C7\u00C8\u00C9\u00CA" +
- "\u00CB\u00CC\u00CD\u00CE\u00CF\u00D0\u00D1\u00D2" +
- "\u00D3\u00D4\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA" +
- "\u00DB\u00DC\u00DD\u00DE\u00DF\u00E0\u00E1\u00E2" +
- "\u00E3\u00E4\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA" +
- "\u00EB\u00EC\u00ED\u00EE\u00EF\u0000\u00F1\u00F2" +
- "\u00F3\u00F4\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA" +
- "\u00FB\u00FC\u0000\u00FE\u00FF\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F0\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 174, 174, 174, 429, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 663, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ISO_8859_7.java b/jdk/src/share/classes/sun/nio/cs/ISO_8859_7.java
deleted file mode 100644
index e0469fe8bc4..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ISO_8859_7.java
+++ /dev/null
@@ -1,255 +0,0 @@
-/*
- * Copyright 2002-2006 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class ISO_8859_7
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_7() {
- super("ISO-8859-7", StandardCharsets.aliases_ISO_8859_7);
- }
-
- public String historicalName() {
- return "ISO8859_7";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_7));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u2018\u2019\u00A3\u20AC\u20AF\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u037A\u00AB\u00AC\u00AD\uFFFD\u2015" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u0384\u0385\u0386\u00B7" + // 0xB0 - 0xB7
- "\u0388\u0389\u038A\u00BB\u038C\u00BD\u038E\u038F" + // 0xB8 - 0xBF
- "\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397" + // 0xC0 - 0xC7
- "\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F" + // 0xC8 - 0xCF
- "\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7" + // 0xD0 - 0xD7
- "\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF" + // 0xD8 - 0xDF
- "\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7" + // 0xE0 - 0xE7
- "\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF" + // 0xE8 - 0xEF
- "\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7" + // 0xF0 - 0xF7
- "\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u00A3\u0000\u0000\u00A6\u00A7" +
- "\u00A8\u00A9\u0000\u00AB\u00AC\u00AD\u0000\u0000" +
- "\u00B0\u00B1\u00B2\u00B3\u0000\u0000\u0000\u00B7" +
- "\u0000\u0000\u0000\u00BB\u0000\u00BD\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AA\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B4\u00B5\u00B6\u0000\u00B8\u00B9\u00BA\u0000" +
- "\u00BC\u0000\u00BE\u00BF\u00C0\u00C1\u00C2\u00C3" +
- "\u00C4\u00C5\u00C6\u00C7\u00C8\u00C9\u00CA\u00CB" +
- "\u00CC\u00CD\u00CE\u00CF\u00D0\u00D1\u0000\u00D3" +
- "\u00D4\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA\u00DB" +
- "\u00DC\u00DD\u00DE\u00DF\u00E0\u00E1\u00E2\u00E3" +
- "\u00E4\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB" +
- "\u00EC\u00ED\u00EE\u00EF\u00F0\u00F1\u00F2\u00F3" +
- "\u00F4\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA\u00FB" +
- "\u00FC\u00FD\u00FE\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00AF\u0000\u0000\u00A1" +
- "\u00A2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00A4\u0000\u0000\u00A5\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 190, 190, 324, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 559, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ISO_8859_9.java b/jdk/src/share/classes/sun/nio/cs/ISO_8859_9.java
deleted file mode 100644
index cc2c8121246..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ISO_8859_9.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class ISO_8859_9
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_9() {
- super("ISO-8859-9", StandardCharsets.aliases_ISO_8859_9);
- }
-
- public String historicalName() {
- return "ISO8859_9";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_9));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" + // 0xB8 - 0xBF
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" + // 0xC0 - 0xC7
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" + // 0xC8 - 0xCF
- "\u011E\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u0130\u015E\u00DF" + // 0xD8 - 0xDF
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" + // 0xE0 - 0xE7
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" + // 0xE8 - 0xEF
- "\u011F\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u0131\u015F\u00FF" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u0000\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u0000\u0000\u00DF" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u0000\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u0000\u0000\u00FF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00D0\u00F0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DD\u00FD\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DE\u00FE" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/KOI8_R.java b/jdk/src/share/classes/sun/nio/cs/KOI8_R.java
deleted file mode 100644
index f237b361c26..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/KOI8_R.java
+++ /dev/null
@@ -1,344 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-
-
-public class KOI8_R
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public KOI8_R() {
- super("KOI8-R", StandardCharsets.aliases_KOI8_R);
- }
-
- public String historicalName() {
- return "KOI8_R";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof KOI8_R));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
-
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524" + // 0x80 - 0x87
- "\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590" + // 0x88 - 0x8F
- "\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248" + // 0x90 - 0x97
- "\u2264\u2265\u00A0\u2321\u00B0\u00B2\u00B7\u00F7" + // 0x98 - 0x9F
- "\u2550\u2551\u2552\u0451\u2553\u2554\u2555\u2556" + // 0xA0 - 0xA7
- "\u2557\u2558\u2559\u255A\u255B\u255C\u255D\u255E" + // 0xA8 - 0xAF
- "\u255F\u2560\u2561\u0401\u2562\u2563\u2564\u2565" + // 0xB0 - 0xB7
- "\u2566\u2567\u2568\u2569\u256A\u256B\u256C\u00A9" + // 0xB8 - 0xBF
- "\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433" + // 0xC0 - 0xC7
- "\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E" + // 0xC8 - 0xCF
- "\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432" + // 0xD0 - 0xD7
- "\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A" + // 0xD8 - 0xDF
- "\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413" + // 0xE0 - 0xE7
- "\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E" + // 0xE8 - 0xEF
- "\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412" + // 0xF0 - 0xF7
- "\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
-
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009A\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00BF\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009C\u0000\u009D\u0000\u0000\u0000\u0000\u009E" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u009F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00E1" +
- "\u00E2\u00F7\u00E7\u00E4\u00E5\u00F6\u00FA\u00E9" +
- "\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF\u00F0\u00F2" +
- "\u00F3\u00F4\u00F5\u00E6\u00E8\u00E3\u00FE\u00FB" +
- "\u00FD\u00FF\u00F9\u00F8\u00FC\u00E0\u00F1\u00C1" +
- "\u00C2\u00D7\u00C7\u00C4\u00C5\u00D6\u00DA\u00C9" +
- "\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF\u00D0\u00D2" +
- "\u00D3\u00D4\u00D5\u00C6\u00C8\u00C3\u00DE\u00DB" +
- "\u00DD\u00DF\u00D9\u00D8\u00DC\u00C0\u00D1\u0000" +
- "\u00A3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0095" +
- "\u0096\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0097\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0098\u0099\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0093\u009B" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0080\u0000" +
- "\u0081\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0082\u0000\u0000\u0000\u0083\u0000" +
- "\u0000\u0000\u0084\u0000\u0000\u0000\u0085\u0000" +
- "\u0000\u0000\u0086\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0087\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0088\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0089\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u008A\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A0\u00A1" +
- "\u00A2\u00A4\u00A5\u00A6\u00A7\u00A8\u00A9\u00AA" +
- "\u00AB\u00AC\u00AD\u00AE\u00AF\u00B0\u00B1\u00B2" +
- "\u00B4\u00B5\u00B6\u00B7\u00B8\u00B9\u00BA\u00BB" +
- "\u00BC\u00BD\u00BE\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u008B\u0000" +
- "\u0000\u0000\u008C\u0000\u0000\u0000\u008D\u0000" +
- "\u0000\u0000\u008E\u0000\u0000\u0000\u008F\u0090" +
- "\u0091\u0092\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0094\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 248, 248, 503, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 734, 958, 248, 1214, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/KOI8_U.java b/jdk/src/share/classes/sun/nio/cs/KOI8_U.java
deleted file mode 100644
index 26ad0c9d6cb..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/KOI8_U.java
+++ /dev/null
@@ -1,323 +0,0 @@
-/*
- * Copyright 2006 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-
-/*
- * An implementation of charset KOI8_U as specified by
- * http://www.net.ua/KOI8-U
- */
-
-public class KOI8_U
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public KOI8_U() {
- super("KOI8-U", StandardCharsets.aliases_KOI8_U);
- }
-
- public String historicalName() {
- return "KOI8_U";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof KOI8_U));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- private static class Decoder extends SingleByteDecoder {
-
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
- "\u2500\u2502\u250C\u2510\u2514\u2518\u251C\u2524" + // 0x80 - 0x87
- "\u252C\u2534\u253C\u2580\u2584\u2588\u258C\u2590" + // 0x88 - 0x8F
- "\u2591\u2592\u2593\u2320\u25A0\u2219\u221A\u2248" + // 0x90 - 0x97
- "\u2264\u2265\u00A0\u2321\u00B0\u00B2\u00B7\u00F7" + // 0x98 - 0x9F
- "\u2550\u2551\u2552\u0451\u0454\u2554\u0456\u0457" + // 0xA0 - 0xA7
- "\u2557\u2558\u2559\u255A\u255B\u0491\u255D\u255E" + // 0xA8 - 0xAF
- "\u255F\u2560\u2561\u0401\u0404\u2563\u0406\u0407" + // 0xB0 - 0xB7
- "\u2566\u2567\u2568\u2569\u256A\u0490\u256C\u00A9" + // 0xB8 - 0xBF
- "\u044E\u0430\u0431\u0446\u0434\u0435\u0444\u0433" + // 0xC0 - 0xC7
- "\u0445\u0438\u0439\u043A\u043B\u043C\u043D\u043E" + // 0xC8 - 0xCF
- "\u043F\u044F\u0440\u0441\u0442\u0443\u0436\u0432" + // 0xD0 - 0xD7
- "\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A" + // 0xD8 - 0xDF
- "\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413" + // 0xE0 - 0xE7
- "\u0425\u0418\u0419\u041A\u041B\u041C\u041D\u041E" + // 0xE8 - 0xEF
- "\u041F\u042F\u0420\u0421\u0422\u0423\u0416\u0412" + // 0xF0 - 0xF7
- "\u042C\u042B\u0417\u0428\u042D\u0429\u0427\u042A" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
-
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009A\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00BF\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009C\u0000\u009D\u0000\u0000\u0000\u0000\u009E" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u009F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B3\u0000\u0000\u00B4\u0000\u00B6\u00B7\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00E1" +
- "\u00E2\u00F7\u00E7\u00E4\u00E5\u00F6\u00FA\u00E9" +
- "\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF\u00F0\u00F2" +
- "\u00F3\u00F4\u00F5\u00E6\u00E8\u00E3\u00FE\u00FB" +
- "\u00FD\u00FF\u00F9\u00F8\u00FC\u00E0\u00F1\u00C1" +
- "\u00C2\u00D7\u00C7\u00C4\u00C5\u00D6\u00DA\u00C9" +
- "\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF\u00D0\u00D2" +
- "\u00D3\u00D4\u00D5\u00C6\u00C8\u00C3\u00DE\u00DB" +
- "\u00DD\u00DF\u00D9\u00D8\u00DC\u00C0\u00D1\u0000" +
- "\u00A3\u0000\u0000\u00A4\u0000\u00A6\u00A7\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BD" +
- "\u00AD\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0095" +
- "\u0096\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0097\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0098\u0099\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0093\u009B" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0080\u0000" +
- "\u0081\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0082\u0000\u0000\u0000\u0083\u0000" +
- "\u0000\u0000\u0084\u0000\u0000\u0000\u0085\u0000" +
- "\u0000\u0000\u0086\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0087\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0088\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0089\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u008A\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A0\u00A1" +
- "\u00A2\u0000\u00A5\u0000\u0000\u00A8\u00A9\u00AA" +
- "\u00AB\u00AC\u0000\u00AE\u00AF\u00B0\u00B1\u00B2" +
- "\u0000\u00B5\u0000\u0000\u00B8\u00B9\u00BA\u00BB" +
- "\u00BC\u0000\u00BE\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u008B\u0000" +
- "\u0000\u0000\u008C\u0000\u0000\u0000\u008D\u0000" +
- "\u0000\u0000\u008E\u0000\u0000\u0000\u008F\u0090" +
- "\u0091\u0092\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0094\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 248, 248, 503, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 734, 958, 248, 1214, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/MS1250.java b/jdk/src/share/classes/sun/nio/cs/MS1250.java
deleted file mode 100644
index 51d97edca03..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/MS1250.java
+++ /dev/null
@@ -1,304 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-
-public class MS1250
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public String historicalName() {
- return "Cp1250";
- }
-
- public MS1250() {
- super("windows-1250", StandardCharsets.aliases_MS1250);
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS1250));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\uFFFD\u2030\u0160\u2039\u015A\u0164\u017D\u0179" + // 0x88 - 0x8F
- "\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\uFFFD\u2122\u0161\u203A\u015B\u0165\u017E\u017A" + // 0x98 - 0x9F
- "\u00A0\u02C7\u02D8\u0141\u00A4\u0104\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u015E\u00AB\u00AC\u00AD\u00AE\u017B" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u02DB\u0142\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u0105\u015F\u00BB\u013D\u02DD\u013E\u017C" + // 0xB8 - 0xBF
- "\u0154\u00C1\u00C2\u0102\u00C4\u0139\u0106\u00C7" + // 0xC0 - 0xC7
- "\u010C\u00C9\u0118\u00CB\u011A\u00CD\u00CE\u010E" + // 0xC8 - 0xCF
- "\u0110\u0143\u0147\u00D3\u00D4\u0150\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u0158\u016E\u00DA\u0170\u00DC\u00DD\u0162\u00DF" + // 0xD8 - 0xDF
- "\u0155\u00E1\u00E2\u0103\u00E4\u013A\u0107\u00E7" + // 0xE0 - 0xE7
- "\u010D\u00E9\u0119\u00EB\u011B\u00ED\u00EE\u010F" + // 0xE8 - 0xEF
- "\u0111\u0144\u0148\u00F3\u00F4\u0151\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u0159\u016F\u00FA\u0171\u00FC\u00FD\u0163\u02D9" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u0000\u0000\u00A4\u0000\u00A6\u00A7" +
- "\u00A8\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u0000" +
- "\u00B0\u00B1\u0000\u0000\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u0000\u0000\u00BB\u0000\u0000\u0000\u0000" +
- "\u0000\u00C1\u00C2\u0000\u00C4\u0000\u0000\u00C7" +
- "\u0000\u00C9\u0000\u00CB\u0000\u00CD\u00CE\u0000" +
- "\u0000\u0000\u0000\u00D3\u00D4\u0000\u00D6\u00D7" +
- "\u0000\u0000\u00DA\u0000\u00DC\u00DD\u0000\u00DF" +
- "\u0000\u00E1\u00E2\u0000\u00E4\u0000\u0000\u00E7" +
- "\u0000\u00E9\u0000\u00EB\u0000\u00ED\u00EE\u0000" +
- "\u0000\u0000\u0000\u00F3\u00F4\u0000\u00F6\u00F7" +
- "\u0000\u0000\u00FA\u0000\u00FC\u00FD\u0000\u0000" +
- "\u00C3\u00E3\u00A5\u00B9\u00C6\u00E6\u0000\u0000" +
- "\u0000\u0000\u00C8\u00E8\u00CF\u00EF\u00D0\u00F0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CA\u00EA" +
- "\u00CC\u00EC\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00C5" +
- "\u00E5\u0000\u0000\u00BC\u00BE\u0000\u0000\u00A3" +
- "\u00B3\u00D1\u00F1\u0000\u0000\u00D2\u00F2\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00D5\u00F5" +
- "\u0000\u0000\u00C0\u00E0\u0000\u0000\u00D8\u00F8" +
- "\u008C\u009C\u0000\u0000\u00AA\u00BA\u008A\u009A" +
- "\u00DE\u00FE\u008D\u009D\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00D9\u00F9\u00DB\u00FB" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u008F" +
- "\u009F\u00AF\u00BF\u008E\u009E\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A1\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A2\u00FF" +
- "\u0000\u00B2\u0000\u00BD\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0096\u0097" +
- "\u0000\u0000\u0000\u0091\u0092\u0082\u0000\u0093" +
- "\u0094\u0084\u0000\u0086\u0087\u0095\u0000\u0000" +
- "\u0000\u0085\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0089\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u008B\u009B\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0080" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0099\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000";
-
- private final static short index1[] = {
- 0, 254, 438, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 675, 897, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/MS1251.java b/jdk/src/share/classes/sun/nio/cs/MS1251.java
deleted file mode 100644
index 2120de45c6b..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/MS1251.java
+++ /dev/null
@@ -1,306 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-
-public class MS1251
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public String historicalName() {
- return "Cp1251";
- }
-
- public MS1251() {
- super("windows-1251", StandardCharsets.aliases_MS1251);
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS1251));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0402\u0403\u201A\u0453\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\u20AC\u2030\u0409\u2039\u040A\u040C\u040B\u040F" + // 0x88 - 0x8F
- "\u0452\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\uFFFD\u2122\u0459\u203A\u045A\u045C\u045B\u045F" + // 0x98 - 0x9F
- "\u00A0\u040E\u045E\u0408\u00A4\u0490\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u0401\u00A9\u0404\u00AB\u00AC\u00AD\u00AE\u0407" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u0406\u0456\u0491\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u0451\u2116\u0454\u00BB\u0458\u0405\u0455\u0457" + // 0xB8 - 0xBF
- "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417" + // 0xC0 - 0xC7
- "\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F" + // 0xC8 - 0xCF
- "\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427" + // 0xD0 - 0xD7
- "\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F" + // 0xD8 - 0xDF
- "\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437" + // 0xE0 - 0xE7
- "\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F" + // 0xE8 - 0xEF
- "\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447" + // 0xF0 - 0xF7
- "\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u0000\u0000\u00A4\u0000\u00A6\u00A7" +
- "\u0000\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u0000" +
- "\u00B0\u00B1\u0000\u0000\u0000\u00B5\u00B6\u00B7" +
- "\u0000\u0000\u0000\u00BB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00A8\u0080\u0081\u00AA" +
- "\u00BD\u00B2\u00AF\u00A3\u008A\u008C\u008E\u008D" +
- "\u0000\u00A1\u008F\u00C0\u00C1\u00C2\u00C3\u00C4" +
- "\u00C5\u00C6\u00C7\u00C8\u00C9\u00CA\u00CB\u00CC" +
- "\u00CD\u00CE\u00CF\u00D0\u00D1\u00D2\u00D3\u00D4" +
- "\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA\u00DB\u00DC" +
- "\u00DD\u00DE\u00DF\u00E0\u00E1\u00E2\u00E3\u00E4" +
- "\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC" +
- "\u00ED\u00EE\u00EF\u00F0\u00F1\u00F2\u00F3\u00F4" +
- "\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA\u00FB\u00FC" +
- "\u00FD\u00FE\u00FF\u0000\u00B8\u0090\u0083\u00BA" +
- "\u00BE\u00B3\u00BF\u00BC\u009A\u009C\u009E\u009D" +
- "\u0000\u00A2\u009F\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00A5\u00B4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0096\u0097\u0000\u0000\u0000" +
- "\u0091\u0092\u0082\u0000\u0093\u0094\u0084\u0000" +
- "\u0086\u0087\u0095\u0000\u0000\u0000\u0085\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0089\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u008B\u009B\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0088\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0099\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000";
-
- private final static short index1[] = {
- 0, 188, 188, 188, 443, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 680, 914, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/MS1252.java b/jdk/src/share/classes/sun/nio/cs/MS1252.java
deleted file mode 100644
index 728e7d7666e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/MS1252.java
+++ /dev/null
@@ -1,304 +0,0 @@
-/*
- * Copyright 2000-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-
-
-public class MS1252
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MS1252() {
- super("windows-1252", StandardCharsets.aliases_MS1252);
- }
-
- public String historicalName() {
- return "Cp1252";
- }
-
- public boolean contains(Charset cs) {
- return ((cs instanceof MS1252)
- || (cs instanceof US_ASCII));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
-
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\u02C6\u2030\u0160\u2039\u0152\uFFFD\u017D\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\u02DC\u2122\u0161\u203A\u0153\uFFFD\u017E\u0178" + // 0x98 - 0x9F
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" + // 0xB8 - 0xBF
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" + // 0xC0 - 0xC7
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" + // 0xC8 - 0xCF
- "\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD\u00DE\u00DF" + // 0xD8 - 0xDF
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" + // 0xE0 - 0xE7
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" + // 0xE8 - 0xEF
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u00FE\u00FF" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
-
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD\u00DE\u00DF" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u00FE\u00FF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u008C\u009C\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u008A\u009A\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u008E\u009E\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0083\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0088\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0098\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0096\u0097\u0000" +
- "\u0000\u0000\u0091\u0092\u0082\u0000\u0093\u0094" +
- "\u0084\u0000\u0086\u0087\u0095\u0000\u0000\u0000" +
- "\u0085\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0089\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008B\u009B\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0080\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0099\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 461, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 698, 920, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/MS1253.java b/jdk/src/share/classes/sun/nio/cs/MS1253.java
deleted file mode 100644
index 41078f96a25..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/MS1253.java
+++ /dev/null
@@ -1,303 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-
-public class MS1253
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public String historicalName() {
- return "Cp1253";
- }
-
- public MS1253() {
- super("windows-1253", StandardCharsets.aliases_MS1253);
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS1253));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\uFFFD\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\uFFFD\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x98 - 0x9F
- "\u00A0\u0385\u0386\u00A3\u00A4\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\uFFFD\u00AB\u00AC\u00AD\u00AE\u2015" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u0384\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u0388\u0389\u038A\u00BB\u038C\u00BD\u038E\u038F" + // 0xB8 - 0xBF
- "\u0390\u0391\u0392\u0393\u0394\u0395\u0396\u0397" + // 0xC0 - 0xC7
- "\u0398\u0399\u039A\u039B\u039C\u039D\u039E\u039F" + // 0xC8 - 0xCF
- "\u03A0\u03A1\uFFFD\u03A3\u03A4\u03A5\u03A6\u03A7" + // 0xD0 - 0xD7
- "\u03A8\u03A9\u03AA\u03AB\u03AC\u03AD\u03AE\u03AF" + // 0xD8 - 0xDF
- "\u03B0\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6\u03B7" + // 0xE0 - 0xE7
- "\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD\u03BE\u03BF" + // 0xE8 - 0xEF
- "\u03C0\u03C1\u03C2\u03C3\u03C4\u03C5\u03C6\u03C7" + // 0xF0 - 0xF7
- "\u03C8\u03C9\u03CA\u03CB\u03CC\u03CD\u03CE\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
- private final static String index2 =
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u0000\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u0000" +
- "\u00B0\u00B1\u00B2\u00B3\u0000\u00B5\u00B6\u00B7" +
- "\u0000\u0000\u0000\u00BB\u0000\u00BD\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0083\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B4\u00A1\u00A2\u0000\u00B8\u00B9\u00BA" +
- "\u0000\u00BC\u0000\u00BE\u00BF\u00C0\u00C1\u00C2" +
- "\u00C3\u00C4\u00C5\u00C6\u00C7\u00C8\u00C9\u00CA" +
- "\u00CB\u00CC\u00CD\u00CE\u00CF\u00D0\u00D1\u0000" +
- "\u00D3\u00D4\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA" +
- "\u00DB\u00DC\u00DD\u00DE\u00DF\u00E0\u00E1\u00E2" +
- "\u00E3\u00E4\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA" +
- "\u00EB\u00EC\u00ED\u00EE\u00EF\u00F0\u00F1\u00F2" +
- "\u00F3\u00F4\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA" +
- "\u00FB\u00FC\u00FD\u00FE\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0096\u0097\u00AF" +
- "\u0000\u0000\u0091\u0092\u0082\u0000\u0093\u0094" +
- "\u0084\u0000\u0086\u0087\u0095\u0000\u0000\u0000" +
- "\u0085\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0089\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008B\u009B\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0080\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0099\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 190, 337, 461, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 698, 920, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/MS1254.java b/jdk/src/share/classes/sun/nio/cs/MS1254.java
deleted file mode 100644
index d542d706675..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/MS1254.java
+++ /dev/null
@@ -1,305 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-
-public class MS1254
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public String historicalName() {
- return "Cp1254";
- }
-
- public MS1254() {
- super("windows-1254", StandardCharsets.aliases_MS1254);
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS1254));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\u02C6\u2030\u0160\u2039\u0152\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\u02DC\u2122\u0161\u203A\u0153\uFFFD\uFFFD\u0178" + // 0x98 - 0x9F
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" + // 0xB8 - 0xBF
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" + // 0xC0 - 0xC7
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" + // 0xC8 - 0xCF
- "\u011E\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u0130\u015E\u00DF" + // 0xD8 - 0xDF
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" + // 0xE0 - 0xE7
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" + // 0xE8 - 0xEF
- "\u011F\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u0131\u015F\u00FF" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u0000\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u0000\u0000\u00DF" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u0000\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u0000\u0000\u00FF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00D0\u00F0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DD\u00FD\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u008C\u009C\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DE\u00FE" +
- "\u008A\u009A\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0083\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0088\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0098\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0096\u0097\u0000" +
- "\u0000\u0000\u0091\u0092\u0082\u0000\u0093\u0094" +
- "\u0084\u0000\u0086\u0087\u0095\u0000\u0000\u0000" +
- "\u0085\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0089\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008B\u009B\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0080\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0099\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 461, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 698, 920, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/MS1257.java b/jdk/src/share/classes/sun/nio/cs/MS1257.java
deleted file mode 100644
index 00f5dc9d287..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/MS1257.java
+++ /dev/null
@@ -1,304 +0,0 @@
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-
-public class MS1257
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public String historicalName() {
- return "Cp1257";
- }
-
- public MS1257() {
- super("windows-1257", StandardCharsets.aliases_MS1257);
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS1257));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\uFFFD\u201A\uFFFD\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\uFFFD\u2030\uFFFD\u2039\uFFFD\u00A8\u02C7\u00B8" + // 0x88 - 0x8F
- "\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\uFFFD\u2122\uFFFD\u203A\uFFFD\u00AF\u02DB\uFFFD" + // 0x98 - 0x9F
- "\u00A0\uFFFD\u00A2\u00A3\u00A4\uFFFD\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00D8\u00A9\u0156\u00AB\u00AC\u00AD\u00AE\u00C6" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00F8\u00B9\u0157\u00BB\u00BC\u00BD\u00BE\u00E6" + // 0xB8 - 0xBF
- "\u0104\u012E\u0100\u0106\u00C4\u00C5\u0118\u0112" + // 0xC0 - 0xC7
- "\u010C\u00C9\u0179\u0116\u0122\u0136\u012A\u013B" + // 0xC8 - 0xCF
- "\u0160\u0143\u0145\u00D3\u014C\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u0172\u0141\u015A\u016A\u00DC\u017B\u017D\u00DF" + // 0xD8 - 0xDF
- "\u0105\u012F\u0101\u0107\u00E4\u00E5\u0119\u0113" + // 0xE0 - 0xE7
- "\u010D\u00E9\u017A\u0117\u0123\u0137\u012B\u013C" + // 0xE8 - 0xEF
- "\u0161\u0144\u0146\u00F3\u014D\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u0173\u0142\u015B\u016B\u00FC\u017C\u017E\u02D9" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u00A2\u00A3\u00A4\u0000\u00A6\u00A7" +
- "\u008D\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u009D" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u008F\u00B9\u0000\u00BB\u00BC\u00BD\u00BE\u0000" +
- "\u0000\u0000\u0000\u0000\u00C4\u00C5\u00AF\u0000" +
- "\u0000\u00C9\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00D3\u0000\u00D5\u00D6\u00D7" +
- "\u00A8\u0000\u0000\u0000\u00DC\u0000\u0000\u00DF" +
- "\u0000\u0000\u0000\u0000\u00E4\u00E5\u00BF\u0000" +
- "\u0000\u00E9\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F3\u0000\u00F5\u00F6\u00F7" +
- "\u00B8\u0000\u0000\u0000\u00FC\u0000\u0000\u0000" +
- "\u00C2\u00E2\u0000\u0000\u00C0\u00E0\u00C3\u00E3" +
- "\u0000\u0000\u0000\u0000\u00C8\u00E8\u0000\u0000" +
- "\u0000\u0000\u00C7\u00E7\u0000\u0000\u00CB\u00EB" +
- "\u00C6\u00E6\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CC\u00EC\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CE\u00EE\u0000\u0000\u00C1\u00E1" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CD\u00ED" +
- "\u0000\u0000\u0000\u00CF\u00EF\u0000\u0000\u0000" +
- "\u0000\u00D9\u00F9\u00D1\u00F1\u00D2\u00F2\u0000" +
- "\u0000\u0000\u0000\u0000\u00D4\u00F4\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AA\u00BA" +
- "\u0000\u0000\u00DA\u00FA\u0000\u0000\u0000\u0000" +
- "\u00D0\u00F0\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00DB\u00FB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00D8\u00F8\u0000\u0000\u0000\u0000" +
- "\u0000\u00CA\u00EA\u00DD\u00FD\u00DE\u00FE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u008E" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00FF\u0000\u009E\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0096\u0097\u0000\u0000\u0000\u0091\u0092\u0082" +
- "\u0000\u0093\u0094\u0084\u0000\u0086\u0087\u0095" +
- "\u0000\u0000\u0000\u0085\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0089\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u008B\u009B" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0080\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0099\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 440, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 677, 899, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/SingleByte.java b/jdk/src/share/classes/sun/nio/cs/SingleByte.java
new file mode 100644
index 00000000000..fdbf4e3c643
--- /dev/null
+++ b/jdk/src/share/classes/sun/nio/cs/SingleByte.java
@@ -0,0 +1,241 @@
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation. Sun designates this
+ * particular file as subject to the "Classpath" exception as provided
+ * by Sun in the LICENSE file that accompanied this code.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+package sun.nio.cs;
+
+import java.nio.Buffer;
+import java.nio.ByteBuffer;
+import java.nio.CharBuffer;
+import java.nio.charset.Charset;
+import java.nio.charset.CharsetDecoder;
+import java.nio.charset.CharsetEncoder;
+import java.nio.charset.CoderResult;
+import static sun.nio.cs.CharsetMapping.*;
+
+public class SingleByte
+{
+ private static final CoderResult withResult(CoderResult cr,
+ Buffer src, int sp,
+ Buffer dst, int dp)
+ {
+ src.position(sp - src.arrayOffset());
+ dst.position(dp - dst.arrayOffset());
+ return cr;
+ }
+
+ public static class Decoder extends CharsetDecoder {
+ private final char[] b2c;
+
+ public Decoder(Charset cs, char[] b2c) {
+ super(cs, 1.0f, 1.0f);
+ this.b2c = b2c;
+ }
+
+ private CoderResult decodeArrayLoop(ByteBuffer src, CharBuffer dst) {
+ byte[] sa = src.array();
+ int sp = src.arrayOffset() + src.position();
+ int sl = src.arrayOffset() + src.limit();
+
+ char[] da = dst.array();
+ int dp = dst.arrayOffset() + dst.position();
+ int dl = dst.arrayOffset() + dst.limit();
+
+ CoderResult cr = CoderResult.UNDERFLOW;
+ if ((dl - dp) < (sl - sp)) {
+ sl = sp + (dl - dp);
+ cr = CoderResult.OVERFLOW;
+ }
+
+ while (sp < sl) {
+ char c = decode(sa[sp]);
+ if (c == UNMAPPABLE_DECODING) {
+ return withResult(CoderResult.unmappableForLength(1),
+ src, sp, dst, dp);
+ }
+ da[dp++] = c;
+ sp++;
+ }
+ return withResult(cr, src, sp, dst, dp);
+ }
+
+ private CoderResult decodeBufferLoop(ByteBuffer src, CharBuffer dst) {
+ int mark = src.position();
+ try {
+ while (src.hasRemaining()) {
+ char c = decode(src.get());
+ if (c == UNMAPPABLE_DECODING)
+ return CoderResult.unmappableForLength(1);
+ if (!dst.hasRemaining())
+ return CoderResult.OVERFLOW;
+ dst.put(c);
+ mark++;
+ }
+ return CoderResult.UNDERFLOW;
+ } finally {
+ src.position(mark);
+ }
+ }
+
+ protected CoderResult decodeLoop(ByteBuffer src, CharBuffer dst) {
+ if (src.hasArray() && dst.hasArray())
+ return decodeArrayLoop(src, dst);
+ else
+ return decodeBufferLoop(src, dst);
+ }
+
+ private final char decode(int b) {
+ return b2c[b + 128];
+ }
+ }
+
+ public static class Encoder extends CharsetEncoder {
+ private Surrogate.Parser sgp;
+ private final char[] c2b;
+ private final char[] c2bIndex;
+
+ public Encoder(Charset cs, char[] c2b, char[] c2bIndex) {
+ super(cs, 1.0f, 1.0f);
+ this.c2b = c2b;
+ this.c2bIndex = c2bIndex;
+ }
+
+ public boolean canEncode(char c) {
+ return encode(c) != UNMAPPABLE_ENCODING;
+ }
+
+ private CoderResult encodeArrayLoop(CharBuffer src, ByteBuffer dst) {
+ char[] sa = src.array();
+ int sp = src.arrayOffset() + src.position();
+ int sl = src.arrayOffset() + src.limit();
+
+ byte[] da = dst.array();
+ int dp = dst.arrayOffset() + dst.position();
+ int dl = dst.arrayOffset() + dst.limit();
+
+ CoderResult cr = CoderResult.UNDERFLOW;
+ if ((dl - dp) < (sl - sp)) {
+ sl = sp + (dl - dp);
+ cr = CoderResult.OVERFLOW;
+ }
+
+ while (sp < sl) {
+ char c = sa[sp];
+ int b = encode(c);
+ if (b == UNMAPPABLE_ENCODING) {
+ if (Surrogate.is(c)) {
+ if (sgp == null)
+ sgp = new Surrogate.Parser();
+ if (sgp.parse(c, sa, sp, sl) < 0)
+ return withResult(sgp.error(), src, sp, dst, dp);
+ return withResult(sgp.unmappableResult(), src, sp, dst, dp);
+ }
+ return withResult(CoderResult.unmappableForLength(1),
+ src, sp, dst, dp);
+ }
+ da[dp++] = (byte)b;
+ sp++;
+ }
+ return withResult(cr, src, sp, dst, dp);
+ }
+
+ private CoderResult encodeBufferLoop(CharBuffer src, ByteBuffer dst) {
+ int mark = src.position();
+ try {
+ while (src.hasRemaining()) {
+ char c = src.get();
+ int b = encode(c);
+ if (b == UNMAPPABLE_ENCODING) {
+ if (Surrogate.is(c)) {
+ if (sgp == null)
+ sgp = new Surrogate.Parser();
+ if (sgp.parse(c, src) < 0)
+ return sgp.error();
+ return sgp.unmappableResult();
+ }
+ return CoderResult.unmappableForLength(1);
+ }
+ if (!dst.hasRemaining())
+ return CoderResult.OVERFLOW;
+ dst.put((byte)b);
+ mark++;
+ }
+ return CoderResult.UNDERFLOW;
+ } finally {
+ src.position(mark);
+ }
+ }
+
+ protected CoderResult encodeLoop(CharBuffer src, ByteBuffer dst) {
+ if (src.hasArray() && dst.hasArray())
+ return encodeArrayLoop(src, dst);
+ else
+ return encodeBufferLoop(src, dst);
+ }
+
+ private final int encode(char ch) {
+ char index = c2bIndex[ch >> 8];
+ if (index == UNMAPPABLE_ENCODING)
+ return UNMAPPABLE_ENCODING;
+ return c2b[index + (ch & 0xff)];
+ }
+ }
+
+ // init the c2b and c2bIndex tables from b2c.
+ public static void initC2B(char[] b2c, char[] c2bNR,
+ char[] c2b, char[] c2bIndex) {
+ for (int i = 0; i < c2bIndex.length; i++)
+ c2bIndex[i] = UNMAPPABLE_ENCODING;
+ for (int i = 0; i < c2b.length; i++)
+ c2b[i] = UNMAPPABLE_ENCODING;
+ int off = 0;
+ for (int i = 0; i < b2c.length; i++) {
+ char c = b2c[i];
+ if (c == UNMAPPABLE_DECODING)
+ continue;
+ int index = (c >> 8);
+ if (c2bIndex[index] == UNMAPPABLE_ENCODING) {
+ c2bIndex[index] = (char)off;
+ off += 0x100;
+ }
+ index = c2bIndex[index] + (c & 0xff);
+ c2b[index] = (char)((i>=0x80)?(i-0x80):(i+0x80));
+ }
+ if (c2bNR != null) {
+ // c-->b nr entries
+ int i = 0;
+ while (i < c2bNR.length) {
+ char b = c2bNR[i++];
+ char c = c2bNR[i++];
+ int index = (c >> 8);
+ if (c2bIndex[index] == UNMAPPABLE_ENCODING) {
+ c2bIndex[index] = (char)off;
+ off += 0x100;
+ }
+ index = c2bIndex[index] + (c & 0xff);
+ c2b[index] = b;
+ }
+ }
+ }
+}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM037.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM037.java
deleted file mode 100644
index 0de335fd40c..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM037.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM037
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM037() {
- super("IBM037", ExtendedCharsets.aliasesFor("IBM037"));
- }
-
- public String historicalName() {
- return "Cp037";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM037);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u005E\u00A3\u00A5\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u005B\u005D\u00AF\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u00FC\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u00D6\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u00E0\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\u00E7\u00F1\u00A2\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u0021\u0024\u002A\u0029\u003B\u00AC" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u00D1\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- protected static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00BA\u00E0\u00BB\u00B0\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u004A\u00B1\u009F\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u005F\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1006.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1006.java
deleted file mode 100644
index 4d30d6f4e7e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1006.java
+++ /dev/null
@@ -1,336 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1006
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1006() {
- super("x-IBM1006", ExtendedCharsets.aliasesFor("x-IBM1006"));
- }
-
- public String historicalName() {
- return "Cp1006";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1006);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u06F0\u06F1\u06F2\u06F3\u06F4\u06F5\u06F6" + // 0xA0 - 0xA7
- "\u06F7\u06F8\u06F9\u060C\u061B\u00AD\u061F\uFE81" + // 0xA8 - 0xAF
- "\uFE8D\uFE8E\uF8FB\uFE8F\uFE91\uFB56\uFB58\uFE93" + // 0xB0 - 0xB7
- "\uFE95\uFE97\uFB66\uFB68\uFE99\uFE9B\uFE9D\uFE9F" + // 0xB8 - 0xBF
- "\uFB7A\uFB7C\uFEA1\uFEA3\uFEA5\uFEA7\uFEA9\uFB88" + // 0xC0 - 0xC7
- "\uFEAB\uFEAD\uFB8C\uFEAF\uFB8A\uFEB1\uFEB3\uFEB5" + // 0xC8 - 0xCF
- "\uFEB7\uFEB9\uFEBB\uFEBD\uFEBF\uFEC3\uFEC7\uFEC9" + // 0xD0 - 0xD7
- "\uFECA\uFECB\uFECC\uFECD\uFECE\uFECF\uFED0\uFED1" + // 0xD8 - 0xDF
- "\uFED3\uFED5\uFED7\uFB8E\uFEDB\uFB92\uFB94\uFEDD" + // 0xE0 - 0xE7
- "\uFEDF\uFEE0\uFEE1\uFEE3\uFB9E\uFEE5\uFEE7\uFE85" + // 0xE8 - 0xEF
- "\uFEED\uFBA6\uFBA8\uFBA9\uFBAA\uFE80\uFE89\uFE8A" + // 0xF0 - 0xF7
- "\uFE8B\uFBFC\uFBFD\uFBFE\uFBB0\uFBAE\uFE7C\uFE7D" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00AD\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AB\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00AC\u0000\u0000" +
- "\u0000\u00AE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00AA\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B2" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00B5\u0000" +
- "\u00B6\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00BA\u0000" +
- "\u00BB\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C0\u0000\u00C1\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C7\u0000\u00CC\u0000\u00CA\u0000\u00E3\u0000" +
- "\u0000\u0000\u00E5\u0000\u00E6\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00EC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F1\u0000" +
- "\u00F2\u00F3\u00F4\u0000\u0000\u0000\u00FD\u0000" +
- "\u00FC\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F9\u00FA\u00FB\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00FE\u00FF\u0000\u0000\u00F5" +
- "\u00AF\u0000\u0000\u0000\u00EF\u0000\u0000\u0000" +
- "\u00F6\u00F7\u00F8\u0000\u00B0\u00B1\u00B3\u0000" +
- "\u00B4\u0000\u00B7\u0000\u00B8\u0000\u00B9\u0000" +
- "\u00BC\u0000\u00BD\u0000\u00BE\u0000\u00BF\u0000" +
- "\u00C2\u0000\u00C3\u0000\u00C4\u0000\u00C5\u0000" +
- "\u00C6\u0000\u00C8\u0000\u00C9\u0000\u00CB\u0000" +
- "\u00CD\u0000\u00CE\u0000\u00CF\u0000\u00D0\u0000" +
- "\u00D1\u0000\u00D2\u0000\u00D3\u0000\u00D4\u0000" +
- "\u0000\u0000\u00D5\u0000\u0000\u0000\u00D6\u0000" +
- "\u00D7\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD\u00DE" +
- "\u00DF\u0000\u00E0\u0000\u00E1\u0000\u00E2\u0000" +
- "\u0000\u0000\u00E4\u0000\u00E7\u0000\u00E8\u00E9" +
- "\u00EA\u0000\u00EB\u0000\u00ED\u0000\u00EE\u0000" +
- "\u0000\u0000\u0000\u0000\u00F0\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 174, 174, 174, 174, 174, 418, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 668, 174, 174, 920, 174, 174, 1175, 174,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1025.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1025.java
deleted file mode 100644
index 546234607b4..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1025.java
+++ /dev/null
@@ -1,272 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1025
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1025() {
- super("x-IBM1025", ExtendedCharsets.aliasesFor("x-IBM1025"));
- }
-
- public String historicalName() {
- return "Cp1025";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1025);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0446\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u0434\u0435\u0444\u0433\u0445\u0438" + // 0x88 - 0x8F
- "\u0439\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u043A\u043B\u043C\u043D\u043E\u043F" + // 0x98 - 0x9F
- "\u044F\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u0440\u0441\u0442\u0443\u0436\u0432" + // 0xA8 - 0xAF
- "\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A" + // 0xB0 - 0xB7
- "\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u0425\u0418\u0419\u041A\u041B\u041C" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u041D\u041E\u041F\u042F\u0420\u0421" + // 0xD8 - 0xDF
- "\\\u00A7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u0422\u0423\u0416\u0412\u042C\u042B" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u0417\u0428\u042D\u0429\u0427\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u0452\u0453\u0451\u0454\u0455\u0456" + // 0x40 - 0x47
- "\u0457\u0458\u005B\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u0459\u045A\u045B\u045C\u045E\u045F\u042A" + // 0x50 - 0x57
- "\u2116\u0402\u005D\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u0403\u0401\u0404\u0405\u0406\u0407" + // 0x60 - 0x67
- "\u0408\u0409\u007C\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u040A\u040B\u040C\u00AD\u040E\u040F\u044E\u0430" + // 0x70 - 0x77
- "\u0431\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u006A\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u0000\u0000\u0000\u0000\u0000\u0000\u00E1" +
- "\u0000\u0000\u0000\u0000\u0000\u0073\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0063\u0059" +
- "\u0062\u0064\u0065\u0066\u0067\u0068\u0069\u0070" +
- "\u0071\u0072\u0000\u0074\u0075\u00B9\u00BA\u00ED" +
- "\u00BF\u00BC\u00BD\u00EC\u00FA\u00CB\u00CC\u00CD" +
- "\u00CE\u00CF\u00DA\u00DB\u00DC\u00DE\u00DF\u00EA" +
- "\u00EB\u00BE\u00CA\u00BB\u00FE\u00FB\u00FD\u0057" +
- "\u00EF\u00EE\u00FC\u00B8\u00DD\u0077\u0078\u00AF" +
- "\u008D\u008A\u008B\u00AE\u00B2\u008F\u0090\u009A" +
- "\u009B\u009C\u009D\u009E\u009F\u00AA\u00AB\u00AC" +
- "\u00AD\u008C\u008E\u0080\u00B6\u00B3\u00B5\u00B7" +
- "\u00B1\u00B0\u00B4\u0076\u00A0\u0000\u0044\u0042" +
- "\u0043\u0045\u0046\u0047\u0048\u0049\u0051\u0052" +
- "\u0053\u0054\u0000\u0055\u0056\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0058\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 174, 174, 174, 429, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 663, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1026.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1026.java
deleted file mode 100644
index 9e51569437e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1026.java
+++ /dev/null
@@ -1,233 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1026
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1026() {
- super("IBM1026", ExtendedCharsets.aliasesFor("IBM1026"));
- }
-
- public String historicalName() {
- return "Cp1026";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1026);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u007D\u0060\u00A6\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u00F6\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u005D\u0024\u0040\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u00A3\u00A5\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u00AF\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u00E7\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u007E\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u011F\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\\\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\u00FC\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u0023\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\"\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u00E0\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\u007B\u00F1\u00C7\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u011E\u0130\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u005B\u00D1\u015F\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u0131\u003A\u00D6\u015E\'\u003D\u00DC"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u00FC\u00EC\u00AD\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00AE\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0068\u00DC\u00AC\u005F\u006D" +
- "\u008D\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0048\u00BB\u008C\u00CC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u009F\u00B2\u008E\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u004A" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u0000\u0069\u00ED\u00EE\u00EB\u00EF\u007B\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u007F\u0000\u0000\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u00C0" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u0000\u0049\u00CD\u00CE\u00CB\u00CF\u00A1\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00E0\u0000\u0000\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u005A\u00D0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u005B\u0079\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u007C\u006A" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
- 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352, 352,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1046.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1046.java
deleted file mode 100644
index 60e39ea6e28..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1046.java
+++ /dev/null
@@ -1,335 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1046
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1046() {
- super("x-IBM1046", ExtendedCharsets.aliasesFor("x-IBM1046"));
- }
-
- public String historicalName() {
- return "Cp1046";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1046);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFE88\u00D7\u00F7\uF8F6\uF8F5\uF8F4\uF8F7\uFE71" + // 0x80 - 0x87
- "\u0088\u25A0\u2502\u2500\u2510\u250C\u2514\u2518" + // 0x88 - 0x8F
- "\uFE79\uFE7B\uFE7D\uFE7F\uFE77\uFE8A\uFEF0\uFEF3" + // 0x90 - 0x97
- "\uFEF2\uFECE\uFECF\uFED0\uFEF6\uFEF8\uFEFA\uFEFC" + // 0x98 - 0x9F
- "\u00A0\uF8FA\uF8F9\uF8F8\u00A4\uF8FB\uFE8B\uFE91" + // 0xA0 - 0xA7
- "\uFE97\uFE9B\uFE9F\uFEA3\u060C\u00AD\uFEA7\uFEB3" + // 0xA8 - 0xAF
- "\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667" + // 0xB0 - 0xB7
- "\u0668\u0669\uFEB7\u061B\uFEBB\uFEBF\uFECA\u061F" + // 0xB8 - 0xBF
- "\uFECB\uFE80\uFE81\uFE83\uFE85\uFE87\uFE89\uFE8D" + // 0xC0 - 0xC7
- "\uFE8F\uFE93\uFE95\uFE99\uFE9D\uFEA1\uFEA5\uFEA9" + // 0xC8 - 0xCF
- "\uFEAB\uFEAD\uFEAF\uFEB1\uFEB5\uFEB9\uFEBD\uFEC3" + // 0xD0 - 0xD7
- "\uFEC7\uFEC9\uFECD\uFECC\uFE82\uFE84\uFE8E\uFED3" + // 0xD8 - 0xDF
- "\u0640\uFED1\uFED5\uFED9\uFEDD\uFEE1\uFEE5\uFEEB" + // 0xE0 - 0xE7
- "\uFEED\uFEEF\uFEF1\uFE70\uFE72\uFE74\uFE76\uFE78" + // 0xE8 - 0xEF
- "\uFE7A\uFE7C\uFE7E\uFED7\uFEDB\uFEDF\uF8FC\uFEF5" + // 0xF0 - 0xF7
- "\uFEF7\uFEF9\uFEFB\uFEE3\uFEE7\uFEEC\uFEE9\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0088\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u0000\u0000\u00A4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00AD\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0081" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0082" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AC\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BB" +
- "\u0000\u0000\u0000\u00BF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00E0\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00B0\u00B1\u00B2\u00B3" +
- "\u00B4\u00B5\u00B6\u00B7\u00B8\u00B9\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u008B\u0000\u008A\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u008D\u0000\u0000\u0000\u008C\u0000\u0000\u0000" +
- "\u008E\u0000\u0000\u0000\u008F\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0089\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0085\u0084\u0083\u0086\u00A3\u00A2\u00A1" +
- "\u00A5\u00F6\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00EB\u0087\u00EC\u0000\u00ED\u0000" +
- "\u00EE\u0094\u00EF\u0090\u00F0\u0091\u00F1\u0092" +
- "\u00F2\u0093\u00C1\u00C2\u00DC\u00C3\u00DD\u00C4" +
- "\u0000\u00C5\u0080\u00C6\u0095\u00A6\u0000\u00C7" +
- "\u00DE\u00C8\u0000\u00A7\u0000\u00C9\u0000\u00CA" +
- "\u0000\u00A8\u0000\u00CB\u0000\u00A9\u0000\u00CC" +
- "\u0000\u00AA\u0000\u00CD\u0000\u00AB\u0000\u00CE" +
- "\u0000\u00AE\u0000\u00CF\u0000\u00D0\u0000\u00D1" +
- "\u0000\u00D2\u0000\u00D3\u0000\u00AF\u0000\u00D4" +
- "\u0000\u00BA\u0000\u00D5\u0000\u00BC\u0000\u00D6" +
- "\u0000\u00BD\u0000\u0000\u0000\u00D7\u0000\u0000" +
- "\u0000\u00D8\u0000\u00D9\u00BE\u00C0\u00DB\u00DA" +
- "\u0099\u009A\u009B\u00E1\u0000\u00DF\u0000\u00E2" +
- "\u0000\u00F3\u0000\u00E3\u0000\u00F4\u0000\u00E4" +
- "\u0000\u00F5\u0000\u00E5\u0000\u00FB\u0000\u00E6" +
- "\u0000\u00FC\u0000\u00FE\u0000\u00E7\u00FD\u00E8" +
- "\u0000\u00E9\u0096\u00EA\u0098\u0097\u0000\u00F7" +
- "\u009C\u00F8\u009D\u00F9\u009E\u00FA\u009F\u0000" +
- "\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 248, 248, 248, 248, 492, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 748, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 909, 248, 248, 248, 248, 248, 1162, 248,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1047.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1047.java
deleted file mode 100644
index 55eb9294b6b..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1047.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1047
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1047() {
- super("IBM1047", ExtendedCharsets.aliasesFor("IBM1047"));
- }
-
- public String historicalName() {
- return "Cp1047";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1047);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u005B\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00AC\u00A3\u00A5\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00DD\u00A8\u00AF\u005D\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u00FC\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u00D6\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u00E0\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\u00E7\u00F1\u00A2\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u0021\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u00D1\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00AD\u00E0\u00BD\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u004A\u00B1\u009F\u00B2\u006A\u00B5" +
- "\u00BB\u00B4\u009A\u008A\u00B0\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00BA\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1097.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1097.java
deleted file mode 100644
index 7a04f1e171e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1097.java
+++ /dev/null
@@ -1,342 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1097
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1097() {
- super("x-IBM1097", ExtendedCharsets.aliasesFor("x-IBM1097"));
- }
-
- public String historicalName() {
- return "Cp1097";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1097);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFB8A\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\uFEB1\uFEB3\uFEB5\uFEB7" + // 0x88 - 0x8F
- "\uFEB9\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\uFEBB\uFEBD\uFEBF\uFEC1\uFEC3\uFEC5" + // 0x98 - 0x9F
- "\uFEC7\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\uFEC9\uFECA\uFECB\uFECC\uFECD\uFECE" + // 0xA8 - 0xAF
- "\uFECF\uFED0\uFED1\uFED3\uFED5\uFED7\uFB8E\uFEDB" + // 0xB0 - 0xB7
- "\uFB92\uFB94\u005B\u005D\uFEDD\uFEDF\uFEE1\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\uFEE3\uFEE5\uFEE7\uFEED\uFEE9" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\uFEEB\uFEEC\uFBA4\uFBFC\uFBFD\uFBFE" + // 0xD8 - 0xDF
- "\\\u061F\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u0640\u06F0\u06F1\u06F2\u06F3\u06F4" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u06F5\u06F6\u06F7\u06F8\u06F9\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\u0085\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u060C\u064B\uFE81\uFE82\uF8FA\uFE8D" + // 0x40 - 0x47
- "\uFE8E\uF8FB\u00A4\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\uFE80\uFE83\uFE84\uF8F9\uFE85\uFE8B\uFE8F" + // 0x50 - 0x57
- "\uFE91\uFB56\u0021\u0024\u002A\u0029\u003B\u00AC" + // 0x58 - 0x5F
- "\u002D\u002F\uFB58\uFE95\uFE97\uFE99\uFE9B\uFE9D" + // 0x60 - 0x67
- "\uFE9F\uFB7A\u061B\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\uFB7C\uFEA1\uFEA3\uFEA5\uFEA7\uFEA9\uFEAB\uFEAD" + // 0x70 - 0x77
- "\uFEAF\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00BA\u00E0\u00BB\u0000\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u0000\u0000\u0000\u004A\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008A\u005F\u00CA\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008B\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0042\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u006A" +
- "\u0000\u0000\u0000\u00E1\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00EA\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0043" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00EB\u00EC\u00ED\u00EE" +
- "\u00EF\u00FA\u00FB\u00FC\u00FD\u00FE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0054" +
- "\u0046\u0049\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0059\u0000\u0062\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0069\u0000\u0070\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0080\u0000\u0000\u0000" +
- "\u00B6\u0000\u0000\u0000\u00B8\u0000\u00B9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DD\u00DE" +
- "\u00DF\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0051\u0044\u0045\u0052\u0053\u0055\u0000" +
- "\u0000\u0000\u0000\u0000\u0056\u0000\u0047\u0048" +
- "\u0057\u0000\u0058\u0000\u0000\u0000\u0063\u0000" +
- "\u0064\u0000\u0065\u0000\u0066\u0000\u0067\u0000" +
- "\u0068\u0000\u0071\u0000\u0072\u0000\u0073\u0000" +
- "\u0074\u0000\u0075\u0000\u0076\u0000\u0077\u0000" +
- "\u0078\u0000\u008C\u0000\u008D\u0000\u008E\u0000" +
- "\u008F\u0000\u0090\u0000\u009A\u0000\u009B\u0000" +
- "\u009C\u0000\u009D\u0000\u009E\u0000\u009F\u0000" +
- "\u00A0\u0000\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u0000\u00B3\u0000\u00B4\u0000" +
- "\u00B5\u0000\u0000\u0000\u00B7\u0000\u00BC\u0000" +
- "\u00BD\u0000\u00BE\u0000\u00CB\u0000\u00CC\u0000" +
- "\u00CD\u0000\u00CF\u0000\u00DA\u00DB\u00CE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000";
-
- private final static short index1[] = {
- 0, 216, 216, 216, 216, 216, 460, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 710, 216, 216, 962, 216, 216, 1217, 216,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1098.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1098.java
deleted file mode 100644
index e689023c146..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1098.java
+++ /dev/null
@@ -1,362 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1098
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1098() {
- super("x-IBM1098", ExtendedCharsets.aliasesFor("x-IBM1098"));
- }
-
- public String historicalName() {
- return "Cp1098";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1098);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFFFD\uFFFD\u060C\u061B\u061F\u064B\uFE81\uFE82" + // 0x80 - 0x87
- "\uF8FA\uFE8D\uFE8E\uF8FB\uFE80\uFE83\uFE84\uF8F9" + // 0x88 - 0x8F
- "\uFE85\uFE8B\uFE8F\uFE91\uFB56\uFB58\uFE95\uFE97" + // 0x90 - 0x97
- "\uFE99\uFE9B\uFE9D\uFE9F\uFB7A\uFB7C\u00D7\uFEA1" + // 0x98 - 0x9F
- "\uFEA3\uFEA5\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uFB8A" + // 0xA0 - 0xA7
- "\uFEB1\uFEB3\uFEB5\uFEB7\uFEB9\uFEBB\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\uFEBD\uFEBF\uFEC1" + // 0xB0 - 0xB7
- "\uFEC3\u2563\u2551\u2557\u255D\u00A4\uFEC5\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\uFEC7\uFEC9" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\uFFFD" + // 0xC8 - 0xCF
- "\uFECA\uFECB\uFECC\uFECD\uFECE\uFECF\uFED0\uFED1" + // 0xD0 - 0xD7
- "\uFED3\u2518\u250C\u2588\u2584\uFED5\uFED7\u2580" + // 0xD8 - 0xDF
- "\uFB8E\uFEDB\uFB92\uFB94\uFEDD\uFEDF\uFEE1\uFEE3" + // 0xE0 - 0xE7
- "\uFEE5\uFEE7\uFEED\uFEE9\uFEEB\uFEEC\uFBA4\uFBFC" + // 0xE8 - 0xEF
- "\u00AD\uFBFD\uFBFE\u0640\u06F0\u06F1\u06F2\u06F3" + // 0xF0 - 0xF7
- "\u06F4\u06F5\u06F6\u06F7\u06F8\u06F9\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0000\u0000\u00BD\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AE\u0000\u00F0\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u009E" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0082\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0083" +
- "\u0000\u0000\u0000\u0084\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F3\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0085" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000\u0000" +
- "\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000\u0000" +
- "\u00C3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B4\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C1\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00CD\u00BA\u0000\u0000" +
- "\u00C9\u0000\u0000\u00BB\u0000\u0000\u00C8\u0000" +
- "\u0000\u00BC\u0000\u0000\u00CC\u0000\u0000\u00B9" +
- "\u0000\u0000\u00CB\u0000\u0000\u00CA\u0000\u0000" +
- "\u00CE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DF\u0000\u0000\u0000" +
- "\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00B0\u00B1\u00B2" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00FE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u008F\u0088" +
- "\u008B\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0094" +
- "\u0000\u0095\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u009C\u0000\u009D\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00A7\u0000\u0000\u0000\u00E0" +
- "\u0000\u0000\u0000\u00E2\u0000\u00E3\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00EE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00EF\u00F1\u00F2" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u008C\u0086\u0087\u008D\u008E\u0090\u0000\u0000" +
- "\u0000\u0000\u0000\u0091\u0000\u0089\u008A\u0092" +
- "\u0000\u0093\u0000\u0000\u0000\u0096\u0000\u0097" +
- "\u0000\u0098\u0000\u0099\u0000\u009A\u0000\u009B" +
- "\u0000\u009F\u0000\u00A0\u0000\u00A1\u0000\u00A2" +
- "\u0000\u00A3\u0000\u00A4\u0000\u00A5\u0000\u00A6" +
- "\u0000\u00A8\u0000\u00A9\u0000\u00AA\u0000\u00AB" +
- "\u0000\u00AC\u0000\u00AD\u0000\u00B5\u0000\u00B6" +
- "\u0000\u00B7\u0000\u00B8\u0000\u00BE\u0000\u00C6" +
- "\u0000\u00C7\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5" +
- "\u00D6\u00D7\u0000\u00D8\u0000\u00DD\u0000\u00DE" +
- "\u0000\u0000\u0000\u00E1\u0000\u00E4\u0000\u00E5" +
- "\u0000\u00E6\u0000\u00E7\u0000\u00E8\u0000\u00E9" +
- "\u0000\u00EB\u0000\u00EC\u00ED\u00EA\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 216, 216, 216, 216, 216, 460, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 716, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216, 216,
- 216, 216, 216, 216, 216, 216, 216, 216, 877, 216, 216, 1129, 216, 216, 1384, 216,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1112.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1112.java
deleted file mode 100644
index 478f3fadb22..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1112.java
+++ /dev/null
@@ -1,266 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1112
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1112() {
- super("x-IBM1112", ExtendedCharsets.aliasesFor("x-IBM1112"));
- }
-
- public String historicalName() {
- return "Cp1112";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1112);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u0101\u017C\u0144\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u0156\u0157\u00E6\u0137\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u201D\u017A\u0100\u017B\u0143\u00AE" + // 0xA8 - 0xAF
- "\u005E\u00A3\u012B\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u005B\u005D\u0179\u0136\u013C\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u014D\u00F6\u0146\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u0107\u00FC\u0142\u015B\u2019" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u014C\u00D6\u0145\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u0106\u00DC\u0141\u015A\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u0161\u00E4\u0105\u012F\u016B\u00E5" + // 0x40 - 0x47
- "\u0113\u017E\u00A2\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\u00E9\u0119\u0117\u010D\u0173\u201E\u201C" + // 0x50 - 0x57
- "\u0123\u00DF\u0021\u0024\u002A\u0029\u003B\u00AC" + // 0x58 - 0x5F
- "\u002D\u002F\u0160\u00C4\u0104\u012E\u016A\u00C5" + // 0x60 - 0x67
- "\u0112\u017D\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u0118\u0116\u010C\u0172\u012A\u013B" + // 0x70 - 0x77
- "\u0122\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00BA\u00E0\u00BB\u00B0\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u0000\u004A\u00B1\u009F\u0000\u006A\u00B5" +
- "\u0000\u00B4\u0000\u008A\u005F\u00CA\u00AF\u0000" +
- "\u0090\u008F\u00EA\u00FA\u0000\u00A0\u00B6\u00B3" +
- "\u0000\u00DA\u0000\u008B\u00B7\u00B8\u00B9\u0000" +
- "\u0000\u0000\u0000\u0000\u0063\u0067\u009E\u0000" +
- "\u0000\u0071\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00EE\u0000\u00EF\u00EC\u00BF" +
- "\u0080\u0000\u0000\u0000\u00FC\u0000\u0000\u0059" +
- "\u0000\u0000\u0000\u0000\u0043\u0047\u009C\u0000" +
- "\u0000\u0051\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00CE\u0000\u00CF\u00CC\u00E1" +
- "\u0070\u0000\u0000\u0000\u00DC\u0000\u0000\u0000" +
- "\u00AC\u008C\u0000\u0000\u0064\u0044\u00FB\u00DB" +
- "\u0000\u0000\u0000\u0000\u0074\u0054\u0000\u0000" +
- "\u0000\u0000\u0068\u0048\u0000\u0000\u0073\u0053" +
- "\u0072\u0052\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0078\u0058\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0076\u00B2\u0000\u0000\u0065\u0045" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00BD\u009D" +
- "\u0000\u0000\u0000\u0077\u00BE\u0000\u0000\u0000" +
- "\u0000\u00FD\u00DD\u00AE\u008E\u00ED\u00CD\u0000" +
- "\u0000\u0000\u0000\u0000\u00EB\u00CB\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u009A\u009B" +
- "\u0000\u0000\u00FE\u00DE\u0000\u0000\u0000\u0000" +
- "\u0062\u0042\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0066\u0046\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0075\u0055\u0000\u0000\u0000\u0000" +
- "\u0000\u00BC\u00AB\u00AD\u008D\u0069\u0049\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00DF" +
- "\u0000\u0000\u0057\u00AA\u0056\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 614, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1122.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1122.java
deleted file mode 100644
index ff9205b545b..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1122.java
+++ /dev/null
@@ -1,262 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1122
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1122() {
- super("x-IBM1122", ExtendedCharsets.aliasesFor("x-IBM1122"));
- }
-
- public String historicalName() {
- return "Cp1122";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1122);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u0161\u00FD\u017E\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u005D" + // 0x98 - 0x9F
- "\u00B5\u00FC\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u0160\u00DD\u017D\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u00A3\u00A5\u00B7\u00A9\u005B\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u203E\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u00E4\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00A6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u00E5\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u007E\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\u00C9\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u0040\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u007B\u00E0\u00E1\u00E3\u007D" + // 0x40 - 0x47
- "\u00E7\u00F1\u00A7\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u0060\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u00A4\u00C5\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u0023\u00C0\u00C1\u00C3\u0024" + // 0x60 - 0x67
- "\u00C7\u00D1\u00F6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\\\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u00E9\u003A\u00C4\u00D6\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u0063\u0067\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00EC\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00B5\u0071\u009F\u005F\u006D" +
- "\u0051\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0043\u00BB\u0047\u00DC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u005A\u00B2\u00CC\u004A" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u0000" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u007B\u005B\u009E\u0068" +
- "\u0074\u00E0\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u0000\u0069\u00ED\u00EE\u00EB\u00EF\u007C\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u0000\u0059" +
- "\u0044\u0045\u0042\u0046\u00C0\u00D0\u009C\u0048" +
- "\u0054\u0079\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u0000\u0049\u00CD\u00CE\u00CB\u00CF\u006A\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00A1\u008D\u0000\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AC\u008C\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00AE\u008E\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BC" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000";
-
- private final static short index1[] = {
- 0, 256, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 577, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1123.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1123.java
deleted file mode 100644
index 595277d5c54..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1123.java
+++ /dev/null
@@ -1,272 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1123
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1123() {
- super("x-IBM1123", ExtendedCharsets.aliasesFor("x-IBM1123"));
- }
-
- public String historicalName() {
- return "Cp1123";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1123);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0446\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u0434\u0435\u0444\u0433\u0445\u0438" + // 0x88 - 0x8F
- "\u0439\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u043A\u043B\u043C\u043D\u043E\u043F" + // 0x98 - 0x9F
- "\u044F\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u0440\u0441\u0442\u0443\u0436\u0432" + // 0xA8 - 0xAF
- "\u044C\u044B\u0437\u0448\u044D\u0449\u0447\u044A" + // 0xB0 - 0xB7
- "\u042E\u0410\u0411\u0426\u0414\u0415\u0424\u0413" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u0425\u0418\u0419\u041A\u041B\u041C" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u041D\u041E\u041F\u042F\u0420\u0421" + // 0xD8 - 0xDF
- "\\\u00A7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u0422\u0423\u0416\u0412\u042C\u042B" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u0417\u0428\u042D\u0429\u0427\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u0452\u0491\u0451\u0454\u0455\u0456" + // 0x40 - 0x47
- "\u0457\u0458\u005B\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u0459\u045A\u045B\u045C\u045E\u045F\u042A" + // 0x50 - 0x57
- "\u2116\u0402\u005D\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u0490\u0401\u0404\u0405\u0406\u0407" + // 0x60 - 0x67
- "\u0408\u0409\u007C\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u040A\u040B\u040C\u00AD\u040E\u040F\u044E\u0430" + // 0x70 - 0x77
- "\u0431\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u006A\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u0000\u0000\u0000\u0000\u0000\u0000\u00E1" +
- "\u0000\u0000\u0000\u0000\u0000\u0073\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0063\u0059" +
- "\u0000\u0064\u0065\u0066\u0067\u0068\u0069\u0070" +
- "\u0071\u0072\u0000\u0074\u0075\u00B9\u00BA\u00ED" +
- "\u00BF\u00BC\u00BD\u00EC\u00FA\u00CB\u00CC\u00CD" +
- "\u00CE\u00CF\u00DA\u00DB\u00DC\u00DE\u00DF\u00EA" +
- "\u00EB\u00BE\u00CA\u00BB\u00FE\u00FB\u00FD\u0057" +
- "\u00EF\u00EE\u00FC\u00B8\u00DD\u0077\u0078\u00AF" +
- "\u008D\u008A\u008B\u00AE\u00B2\u008F\u0090\u009A" +
- "\u009B\u009C\u009D\u009E\u009F\u00AA\u00AB\u00AC" +
- "\u00AD\u008C\u008E\u0080\u00B6\u00B3\u00B5\u00B7" +
- "\u00B1\u00B0\u00B4\u0076\u00A0\u0000\u0044\u0042" +
- "\u0000\u0045\u0046\u0047\u0048\u0049\u0051\u0052" +
- "\u0053\u0054\u0000\u0055\u0056\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0062\u0043\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0058\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 174, 174, 174, 429, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 663, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1124.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1124.java
deleted file mode 100644
index 8f7a112f5b5..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1124.java
+++ /dev/null
@@ -1,272 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1124
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1124() {
- super("x-IBM1124", ExtendedCharsets.aliasesFor("x-IBM1124"));
- }
-
- public String historicalName() {
- return "Cp1124";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1124);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u0401\u0402\u0490\u0404\u0405\u0406\u0407" + // 0xA0 - 0xA7
- "\u0408\u0409\u040A\u040B\u040C\u00AD\u040E\u040F" + // 0xA8 - 0xAF
- "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417" + // 0xB0 - 0xB7
- "\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F" + // 0xB8 - 0xBF
- "\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427" + // 0xC0 - 0xC7
- "\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F" + // 0xC8 - 0xCF
- "\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437" + // 0xD0 - 0xD7
- "\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F" + // 0xD8 - 0xDF
- "\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447" + // 0xE0 - 0xE7
- "\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u044F" + // 0xE8 - 0xEF
- "\u2116\u0451\u0452\u0491\u0454\u0455\u0456\u0457" + // 0xF0 - 0xF7
- "\u0458\u0459\u045A\u045B\u045C\u00A7\u045E\u045F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u0000\u0000\u0000\u0000\u00FD" +
- "\u0000\u0000\u0000\u0000\u0000\u00AD\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A1\u00A2" +
- "\u0000\u00A4\u00A5\u00A6\u00A7\u00A8\u00A9\u00AA" +
- "\u00AB\u00AC\u0000\u00AE\u00AF\u00B0\u00B1\u00B2" +
- "\u00B3\u00B4\u00B5\u00B6\u00B7\u00B8\u00B9\u00BA" +
- "\u00BB\u00BC\u00BD\u00BE\u00BF\u00C0\u00C1\u00C2" +
- "\u00C3\u00C4\u00C5\u00C6\u00C7\u00C8\u00C9\u00CA" +
- "\u00CB\u00CC\u00CD\u00CE\u00CF\u00D0\u00D1\u00D2" +
- "\u00D3\u00D4\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA" +
- "\u00DB\u00DC\u00DD\u00DE\u00DF\u00E0\u00E1\u00E2" +
- "\u00E3\u00E4\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA" +
- "\u00EB\u00EC\u00ED\u00EE\u00EF\u0000\u00F1\u00F2" +
- "\u0000\u00F4\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA" +
- "\u00FB\u00FC\u0000\u00FE\u00FF\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A3\u00F3\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F0\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 174, 174, 174, 429, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 663, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1140.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1140.java
deleted file mode 100644
index 45509dafbe1..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1140.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1140
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1140() {
- super("IBM01140", ExtendedCharsets.aliasesFor("IBM01140"));
- }
-
- public String historicalName() {
- return "Cp1140";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1140);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM037.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x9F) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00BA\u00E0\u00BB\u00B0\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u004A\u00B1\u0000\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u005F\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
-
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1141.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1141.java
deleted file mode 100644
index 40050ed85d1..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1141.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1141
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1141() {
- super("IBM01141", ExtendedCharsets.aliasesFor("IBM01141"));
- }
-
- public String historicalName() {
- return "Cp1141";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1141);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
- private static class Decoder extends IBM273.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x9F) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00B5\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0063\u00EC\u00FC\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0043\u00BB\u00DC\u0059\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u0000\u00B2\u00CC\u007C" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u004A\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00E0\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u005A\u00AD\u00AE\u00A1" +
- "\u0044\u0045\u0042\u0046\u00C0\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u006A\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00D0\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1142.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1142.java
deleted file mode 100644
index e0682803948..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1142.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1142
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1142() {
- super("IBM01142", ExtendedCharsets.aliasesFor("IBM01142"));
- }
-
- public String historicalName() {
- return "Cp1142";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1142);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM277.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x5A) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u004A\u0067\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u0080\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u009E\u00E0\u009F\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u009C\u00BB\u0047\u00DC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u0000\u00B2\u0070\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u005B\u007B\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u007C\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u00D0\u00C0\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u006A\u00DD\u00DE\u00DB\u00A1\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u005A\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1143.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1143.java
deleted file mode 100644
index af02e542b7c..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1143.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1143
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1143() {
- super("IBM01143", ExtendedCharsets.aliasesFor("IBM01143"));
- }
-
- public String historicalName() {
- return "Cp1143";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1143);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM278.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x5A) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u0063\u0067\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00EC\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00B5\u0071\u009F\u005F\u006D" +
- "\u0051\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0043\u00BB\u0047\u00DC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u0000\u00B2\u00CC\u004A" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u007B\u005B\u009E\u0068" +
- "\u0074\u00E0\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u007C\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u00C0\u00D0\u009C\u0048" +
- "\u0054\u0079\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u006A\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00A1\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u005A\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1144.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1144.java
deleted file mode 100644
index d0cc741ed04..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1144.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1144
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1144() {
- super("IBM01144", ExtendedCharsets.aliasesFor("IBM01144"));
- }
-
- public String historicalName() {
- return "Cp1144";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1144);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM280.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x9F) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u00B1\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00B5\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0090\u0048\u0051\u005F\u006D" +
- "\u00DD\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0044\u00BB\u0054\u0058\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u007B\u0000\u00B2\u00CD\u007C" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u004A\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u00C0\u0045\u0042\u0046\u0043\u0047\u009C\u00E0" +
- "\u00D0\u005A\u0052\u0053\u00A1\u0055\u0056\u0057" +
- "\u008C\u0049\u006A\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u0079\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1145.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1145.java
deleted file mode 100644
index dd89c0ea5ca..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1145.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1145
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1145() {
- super("IBM01145", ExtendedCharsets.aliasesFor("IBM01145"));
- }
-
- public String historicalName() {
- return "Cp1145";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1145);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM284.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x9F) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u00BB\u007F\u0069\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u00BA\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00BD\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u0000\u00B2\u0049\u00B5" +
- "\u00A1\u00B4\u009A\u008A\u005F\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u007B\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u006A\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1146.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1146.java
deleted file mode 100644
index 27919498364..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1146.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1146
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1146() {
- super("IBM01146", ExtendedCharsets.aliasesFor("IBM01146"));
- }
-
- public String historicalName() {
- return "Cp1146";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1146);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM285.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x9F) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u004A\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00B1\u00E0\u00BB\u00BA\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00BC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u005B\u0000\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u005F\u00CA\u00AF\u00A1" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1147.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1147.java
deleted file mode 100644
index 9f79f842cc3..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1147.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1147
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1147() {
- super("IBM01147", ExtendedCharsets.aliasesFor("IBM01147"));
- }
-
- public String historicalName() {
- return "Cp1147";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1147);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM297.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x9F) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u00B1\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u0044\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0090\u0048\u00B5\u005F\u006D" +
- "\u00A0\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0051\u00BB\u0054\u00BD\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u007B\u0000\u00B2\u00DD\u005A" +
- "\u00A1\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u004A\u008F\u00EA\u00FA\u00BE\u0079\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u007C\u0045\u0042\u0046\u0043\u0047\u009C\u00E0" +
- "\u00D0\u00C0\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u006A\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1148.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1148.java
deleted file mode 100644
index 8adb4a5a24c..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1148.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1148
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1148() {
- super("IBM01148", ExtendedCharsets.aliasesFor("IBM01148"));
- }
-
- public String historicalName() {
- return "Cp1148";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1148);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM500.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x9F) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u00BB\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u0000\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM1149.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM1149.java
deleted file mode 100644
index 7359cea59e3..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM1149.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM1149
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM1149() {
- super("IBM01149", ExtendedCharsets.aliasesFor("IBM01149"));
- }
-
- public String historicalName() {
- return "Cp1149";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM1149);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return Encoder.index2;
- }
-
- private static class Decoder extends IBM871.Decoder {
- public Decoder(Charset cs) {
- super(cs);
- }
-
- public char decode(int byteIndex) {
- return (byteIndex == (byte)0x9F) ? '\u20AC' : super.decode(byteIndex);
- }
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0025\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00AC\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00AE\u00BE\u009E\u00EC\u006D" +
- "\u008C\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u008E\u00BB\u009C\u00CC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u0000\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00E0\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u005A\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u007C\u0069\u00ED\u00EE\u00EB\u00EF\u005F\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u004A\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u00D0\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u0079\u0049\u00CD\u00CE\u00CB\u00CF\u00A1\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u00C0\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 340, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM273.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM273.java
deleted file mode 100644
index 74a857e1f4b..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM273.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM273
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM273() {
- super("IBM273", ExtendedCharsets.aliasesFor("IBM273"));
- }
-
- public String historicalName() {
- return "Cp273";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM273);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u00DF\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u00A3\u00A5\u00B7\u00A9\u0040\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u00AF\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u00E4\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00A6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u00FC\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u007D\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\u00D6\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\\\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u005D\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u007B\u00E0\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\u00E7\u00F1\u00C4\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u007E\u00DC\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u005B\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u00D1\u00F6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u0060\u003A\u0023\u00A7\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00B5\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0063\u00EC\u00FC\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0043\u00BB\u00DC\u0059\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u009F\u00B2\u00CC\u007C" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u004A\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00E0\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u005A\u00AD\u00AE\u00A1" +
- "\u0044\u0045\u0042\u0046\u00C0\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u006A\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00D0\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM277.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM277.java
deleted file mode 100644
index d4917a0d272..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM277.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM277
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM277() {
- super("IBM277", ExtendedCharsets.aliasesFor("IBM277"));
- }
-
- public String historicalName() {
- return "Cp277";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM277);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0040\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u007B\u00B8\u005B\u005D" + // 0x98 - 0x9F
- "\u00B5\u00FC\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u00A3\u00A5\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u00AF\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u00E6\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u00E5\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u007E\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u00D6\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u00E0\u00E1\u00E3\u007D" + // 0x40 - 0x47
- "\u00E7\u00F1\u0023\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u00A4\u00C5\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u0024" + // 0x60 - 0x67
- "\u00C7\u00D1\u00F8\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00A6\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u0060\u003A\u00C6\u00D8\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u004A\u0067\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u0080\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u009E\u00E0\u009F\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u009C\u00BB\u0047\u00DC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u005A\u00B2\u0070\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u005B\u007B\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u007C\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u00D0\u00C0\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u006A\u00DD\u00DE\u00DB\u00A1\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM278.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM278.java
deleted file mode 100644
index 58db790768f..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM278.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM278
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM278() {
- super("IBM278", ExtendedCharsets.aliasesFor("IBM278"));
- }
-
- public String historicalName() {
- return "Cp278";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM278);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u005D" + // 0x98 - 0x9F
- "\u00B5\u00FC\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u00A3\u00A5\u00B7\u00A9\u005B\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u00AF\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u00E4\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00A6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u00E5\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u007E\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\u00C9\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u0040\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u007B\u00E0\u00E1\u00E3\u007D" + // 0x40 - 0x47
- "\u00E7\u00F1\u00A7\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u0060\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u00A4\u00C5\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u0023\u00C0\u00C1\u00C3\u0024" + // 0x60 - 0x67
- "\u00C7\u00D1\u00F6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\\\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u00E9\u003A\u00C4\u00D6\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u0063\u0067\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00EC\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00B5\u0071\u009F\u005F\u006D" +
- "\u0051\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0043\u00BB\u0047\u00DC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u005A\u00B2\u00CC\u004A" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u007B\u005B\u009E\u0068" +
- "\u0074\u00E0\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u007C\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u00C0\u00D0\u009C\u0048" +
- "\u0054\u0079\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u006A\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00A1\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM280.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM280.java
deleted file mode 100644
index 08d61d47fdf..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM280.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM280
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM280() {
- super("IBM280", ExtendedCharsets.aliasesFor("IBM280"));
- }
-
- public String historicalName() {
- return "Cp280";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM280);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u005B\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u00EC\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u0023\u00A5\u00B7\u00A9\u0040\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u00AF\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u00E0\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u00A6\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u00E8\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u00FC\u0060\u00FA\u00FF" + // 0xD8 - 0xDF
- "\u00E7\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u00D6\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u007B\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\\\u00F1\u00B0\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u005D\u00EA\u00EB\u007D\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u007E\u00DF\u00E9\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u00D1\u00F2\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u00F9\u003A\u00A3\u00A7\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u00B1\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00B5\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0090\u0048\u0051\u005F\u006D" +
- "\u00DD\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0044\u00BB\u0054\u0058\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u007B\u009F\u00B2\u00CD\u007C" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u004A\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u00C0\u0045\u0042\u0046\u0043\u0047\u009C\u00E0" +
- "\u00D0\u005A\u0052\u0053\u00A1\u0055\u0056\u0057" +
- "\u008C\u0049\u006A\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u0079\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM284.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM284.java
deleted file mode 100644
index ba612686884..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM284.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM284
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM284() {
- super("IBM284", ExtendedCharsets.aliasesFor("IBM284"));
- }
-
- public String historicalName() {
- return "Cp284";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM284);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u00A8\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u00A3\u00A5\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u005E\u0021\u00AF\u007E\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u00FC\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u00D6\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u00E0\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\u00E7\u00A6\u005B\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u005D\u0024\u002A\u0029\u003B\u00AC" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u0023\u00F1\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u0060\u003A\u00D1\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u00BB\u007F\u0069\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u00BA\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00BD\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u009F\u00B2\u0049\u00B5" +
- "\u00A1\u00B4\u009A\u008A\u005F\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u007B\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u006A\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM285.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM285.java
deleted file mode 100644
index b7a44c45bef..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM285.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM285
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM285() {
- super("IBM285", ExtendedCharsets.aliasesFor("IBM285"));
- }
-
- public String historicalName() {
- return "Cp285";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM285);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u00AF\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u005B\u00A5\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u005E\u005D\u007E\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u00FC\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u00D6\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u00E0\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\u00E7\u00F1\u0024\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u0021\u00A3\u002A\u0029\u003B\u00AC" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u00D1\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u004A\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00B1\u00E0\u00BB\u00BA\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00BC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u005B\u009F\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u005F\u00CA\u00AF\u00A1" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM297.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM297.java
deleted file mode 100644
index 74aecce606d..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM297.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM297
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM297() {
- super("IBM297", ExtendedCharsets.aliasesFor("IBM297"));
- }
-
- public String historicalName() {
- return "Cp297";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM297);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u005B\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u0060\u00A8\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u0023\u00A5\u00B7\u00A9\u005D\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u00AF\u007E\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u00E9\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u00E8\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u00FC\u00A6\u00FA\u00FF" + // 0xD8 - 0xDF
- "\u00E7\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u00D6\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u0040\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\\\u00F1\u00B0\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u007B\u00EA\u00EB\u007D\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u00A7\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u00D1\u00F9\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u00B5\u003A\u00A3\u00E0\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u00B1\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u0044\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0090\u0048\u00B5\u005F\u006D" +
- "\u00A0\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0051\u00BB\u0054\u00BD\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u007B\u009F\u00B2\u00DD\u005A" +
- "\u00A1\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u004A\u008F\u00EA\u00FA\u00BE\u0079\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u007C\u0045\u0042\u0046\u0043\u0047\u009C\u00E0" +
- "\u00D0\u00C0\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u006A\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM420.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM420.java
deleted file mode 100644
index f99c85ad759..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM420.java
+++ /dev/null
@@ -1,315 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM420
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM420() {
- super("IBM420", ExtendedCharsets.aliasesFor("IBM420"));
- }
-
- public String historicalName() {
- return "Cp420";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM420);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uF8F5\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\uFEB7\uF8F4\uFEBB\uF8F7\uFEBF\uFEC3" + // 0x88 - 0x8F
- "\uFEC7\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\uFEC9\uFECA\uFECB\uFECC\uFECD\uFECE" + // 0x98 - 0x9F
- "\uFECF\u00F7\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\uFED0\uFED1\uFED3\uFED5\uFED7\uFED9" + // 0xA8 - 0xAF
- "\uFEDB\uFEDD\uFEF5\uFEF6\uFEF7\uFEF8\uFFFD\uFFFD" + // 0xB0 - 0xB7
- "\uFEFB\uFEFC\uFEDF\uFEE1\uFEE3\uFEE5\uFEE7\uFEE9" + // 0xB8 - 0xBF
- "\u061B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\uFEEB\uFFFD\uFEEC\uFFFD\uFEED" + // 0xC8 - 0xCF
- "\u061F\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\uFEEF\uFEF0\uFEF1\uFEF2\uFEF3\u0660" + // 0xD8 - 0xDF
- "\u00D7\u2007\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u0661\u0662\uFFFD\u0663\u0664\u0665" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\uFFFD\u0666\u0667\u0668\u0669\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\uFE7C\uFE7D\u0640\uF8FC\uFE80\uFE81" + // 0x40 - 0x47
- "\uFE82\uFE83\u00A2\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\uFE84\uFE85\uFFFD\uFFFD\uFE8B\uFE8D\uFE8E" + // 0x50 - 0x57
- "\uFE8F\uFE91\u0021\u0024\u002A\u0029\u003B\u00AC" + // 0x58 - 0x5F
- "\u002D\u002F\uFE93\uFE95\uFE97\uFE99\uFE9B\uFE9D" + // 0x60 - 0x67
- "\uFE9F\uFEA1\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\uFEA3\uFEA5\uFEA7\uFEA9\uFEAB\uFEAD\uFEAF\uF8F6" + // 0x70 - 0x77
- "\uFEB3\u060C\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0000\u0000\u0000\u0000\u006D" +
- "\u0000\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u0000\u004F\u0000\u0000\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u0000\u004A\u0000\u0000\u0000\u006A\u0000" +
- "\u0000\u0000\u0000\u0000\u005F\u00CA\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00E0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00A1" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0079\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00C0" +
- "\u0000\u0000\u0000\u00D0\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0044\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DF\u00EA\u00EB\u00ED" +
- "\u00EE\u00EF\u00FB\u00FC\u00FD\u00FE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00E1\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u008B\u0080\u0077" +
- "\u008D\u0000\u0000\u0000\u0000\u0045\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0042\u0043\u0000\u0000\u0046\u0047" +
- "\u0048\u0049\u0051\u0052\u0000\u0000\u0000\u0000" +
- "\u0000\u0055\u0000\u0056\u0057\u0058\u0000\u0059" +
- "\u0000\u0062\u0000\u0063\u0000\u0064\u0000\u0065" +
- "\u0000\u0066\u0000\u0067\u0000\u0068\u0000\u0069" +
- "\u0000\u0070\u0000\u0071\u0000\u0072\u0000\u0073" +
- "\u0000\u0074\u0000\u0075\u0000\u0076\u0000\u0000" +
- "\u0000\u0078\u0000\u0000\u0000\u008A\u0000\u0000" +
- "\u0000\u008C\u0000\u0000\u0000\u008E\u0000\u0000" +
- "\u0000\u008F\u0000\u0000\u0000\u0090\u0000\u009A" +
- "\u009B\u009C\u009D\u009E\u009F\u00A0\u00AA\u00AB" +
- "\u0000\u00AC\u0000\u00AD\u0000\u00AE\u0000\u00AF" +
- "\u0000\u00B0\u0000\u00B1\u0000\u00BA\u0000\u00BB" +
- "\u0000\u00BC\u0000\u00BD\u0000\u00BE\u0000\u00BF" +
- "\u0000\u00CB\u00CD\u00CF\u0000\u00DA\u00DB\u00DC" +
- "\u00DD\u00DE\u0000\u00B2\u00B3\u00B4\u00B5\u0000" +
- "\u0000\u00B8\u00B9\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 248, 248, 248, 248, 492, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 741, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 753, 248, 248, 248, 248, 248, 1006, 248,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM424.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM424.java
deleted file mode 100644
index d4d2c6d4598..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM424.java
+++ /dev/null
@@ -1,256 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM424
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM424() {
- super("IBM424", ExtendedCharsets.aliasesFor("IBM424"));
- }
-
- public String historicalName() {
- return "Cp424";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM424);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFFFD\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\uFFFD\uFFFD\uFFFD\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\uFFFD\uFFFD\uFFFD\u00B8\uFFFD\u00A4" + // 0x98 - 0x9F
- "\u00B5\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u00AE" + // 0xA8 - 0xAF
- "\u005E\u00A3\u00A5\u2022\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u005B\u005D\u203E\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\uFFFD\uFFFD\uFFFD\uFFFD\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6" + // 0x40 - 0x47
- "\u05D7\u05D8\u00A2\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF" + // 0x50 - 0x57
- "\u05E0\u05E1\u0021\u0024\u002A\u0029\u003B\u00AC" + // 0x58 - 0x5F
- "\u002D\u002F\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7" + // 0x60 - 0x67
- "\u05E8\u05E9\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\uFFFD\u05EA\uFFFD\uFFFD\u00A0\uFFFD\uFFFD\uFFFD" + // 0x70 - 0x77
- "\u2017\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00BA\u00E0\u00BB\u00B0\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0074\u0000\u004A\u00B1\u009F\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u0000\u008A\u005F\u00CA\u00AF\u0000" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u0000" +
- "\u009D\u00DA\u0000\u008B\u00B7\u00B8\u00B9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00E1" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0041\u0042\u0043\u0044\u0045\u0046\u0047\u0048" +
- "\u0049\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u0071\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0078\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00B3\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00BC\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 248, 248, 248, 296, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 531, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM500.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM500.java
deleted file mode 100644
index a6e08103bd0..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM500.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM500
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM500() {
- super("IBM500", ExtendedCharsets.aliasesFor("IBM500"));
- }
-
- public String historicalName() {
- return "Cp500";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM500);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u00F0\u00FD\u00FE\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u00E6\u00B8\u00C6\u00A4" + // 0x98 - 0x9F
- "\u00B5\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u00D0\u00DD\u00DE\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u00A3\u00A5\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u00AF\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u00FC\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u00D6\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u00E0\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\u00E7\u00F1\u005B\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u005D\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u00D1\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u00BB\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u009F\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00BE\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u009E\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u00AC\u0069\u00ED\u00EE\u00EB\u00EF\u00EC\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u00AE\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u009C\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u008C\u0049\u00CD\u00CE\u00CB\u00CF\u00CC\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u008E\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM838.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM838.java
deleted file mode 100644
index 4c2f9f67c2e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM838.java
+++ /dev/null
@@ -1,243 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM838
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM838() {
- super("IBM-Thai", ExtendedCharsets.aliasesFor("IBM-Thai"));
- }
-
- public String historicalName() {
- return "Cp838";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM838);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0E4F\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u0E1D\u0E1E\u0E1F\u0E20\u0E21\u0E22" + // 0x88 - 0x8F
- "\u0E5A\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u0E23\u0E24\u0E25\u0E26\u0E27\u0E28" + // 0x98 - 0x9F
- "\u0E5B\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E" + // 0xA8 - 0xAF
- "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57" + // 0xB0 - 0xB7
- "\u0E58\u0E59\u0E2F\u0E30\u0E31\u0E32\u0E33\u0E34" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u0E49\u0E35\u0E36\u0E37\u0E38\u0E39" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u0E3A\u0E40\u0E41\u0E42\u0E43\u0E44" + // 0xD8 - 0xDF
- "\\\u0E4A\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u0E45\u0E46\u0E47\u0E48\u0E49\u0E4A" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u0E4B\u0E4C\u0E4D\u0E4B\u0E4C\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06" + // 0x40 - 0x47
- "\u0E07\u005B\u00A2\u002E\u003C\u0028\u002B\u007C" + // 0x48 - 0x4F
- "\u0026\u0E48\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D" + // 0x50 - 0x57
- "\u0E0E\u005D\u0021\u0024\u002A\u0029\u003B\u00AC" + // 0x58 - 0x5F
- "\u002D\u002F\u0E0F\u0E10\u0E11\u0E12\u0E13\u0E14" + // 0x60 - 0x67
- "\u0E15\u005E\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u0E3F\u0E4E\u0E16\u0E17\u0E18\u0E19\u0E1A\u0E1B" + // 0x70 - 0x77
- "\u0E1C\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u005A\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u0049\u00E0\u0059\u0069\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u004F\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u0000\u004A\u0000\u0000\u0000\u006A\u0000" +
- "\u0000\u0000\u0000\u0000\u005F\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0042\u0043\u0044" +
- "\u0045\u0046\u0047\u0048\u0052\u0053\u0054\u0055" +
- "\u0056\u0057\u0058\u0062\u0063\u0064\u0065\u0066" +
- "\u0067\u0068\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u008A\u008B\u008C\u008D\u008E\u008F\u009A" +
- "\u009B\u009C\u009D\u009E\u009F\u00AA\u00AB\u00AC" +
- "\u00AD\u00AE\u00AF\u00BA\u00BB\u00BC\u00BD\u00BE" +
- "\u00BF\u00CB\u00CC\u00CD\u00CE\u00CF\u00DA\u0000" +
- "\u0000\u0000\u0000\u0070\u00DB\u00DC\u00DD\u00DE" +
- "\u00DF\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF\u00FA" +
- "\u00FB\u00FC\u0071\u0080\u00B0\u00B1\u00B2\u00B3" +
- "\u00B4\u00B5\u00B6\u00B7\u00B8\u00B9\u0090\u00A0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 428, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
- 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM856.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM856.java
deleted file mode 100644
index 99280a4b22f..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM856.java
+++ /dev/null
@@ -1,288 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM856
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM856() {
- super("x-IBM856", ExtendedCharsets.aliasesFor("x-IBM856"));
- }
-
- public String historicalName() {
- return "Cp856";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM856);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7" + // 0x80 - 0x87
- "\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF" + // 0x88 - 0x8F
- "\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7" + // 0x90 - 0x97
- "\u05E8\u05E9\u05EA\uFFFD\u00A3\uFFFD\u00D7\uFFFD" + // 0x98 - 0x9F
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xA0 - 0xA7
- "\uFFFD\u00AE\u00AC\u00BD\u00BC\uFFFD\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\uFFFD\uFFFD\uFFFD" + // 0xB0 - 0xB7
- "\u00A9\u2563\u2551\u2557\u255D\u00A2\u00A5\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\uFFFD\uFFFD" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u00A4" + // 0xC8 - 0xCF
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xD0 - 0xD7
- "\uFFFD\u2518\u250C\u2588\u2584\u00A6\uFFFD\u2580" + // 0xD8 - 0xDF
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u00B5\uFFFD" + // 0xE0 - 0xE7
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u203E\u00B4" + // 0xE8 - 0xEF
- "\u00AD\u00B1\u2017\u00BE\u00B6\u00A7\u00F7\u00B8" + // 0xF0 - 0xF7
- "\u00B0\u00A8\u2022\u00B9\u00B3\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u00BD\u009C\u00CF\u00BE\u00DD\u00F5" +
- "\u00F9\u00B8\u0000\u00AE\u00AA\u00F0\u00A9\u0000" +
- "\u00F8\u00F1\u00FD\u00FC\u00EF\u00E6\u00F4\u0000" +
- "\u00F7\u00FB\u0000\u00AF\u00AC\u00AB\u00F3\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u009E" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F6" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00F2\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FA\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00EE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00C4\u0000\u00B3\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00DA" +
- "\u0000\u0000\u0000\u00BF\u0000\u0000\u0000\u00C0" +
- "\u0000\u0000\u0000\u00D9\u0000\u0000\u0000\u00C3" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B4" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00C2" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00C1" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00C5" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00CD\u00BA\u0000\u0000\u00C9" +
- "\u0000\u0000\u00BB\u0000\u0000\u00C8\u0000\u0000" +
- "\u00BC\u0000\u0000\u00CC\u0000\u0000\u00B9\u0000" +
- "\u0000\u00CB\u0000\u0000\u00CA\u0000\u0000\u00CE" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00DF\u0000\u0000\u0000\u00DC" +
- "\u0000\u0000\u0000\u00DB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00B0\u00B1\u00B2\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00FE\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 248, 248, 248, 296, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 531, 248, 248, 248, 248, 787, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM860.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM860.java
deleted file mode 100644
index 0aaa06c6d1b..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM860.java
+++ /dev/null
@@ -1,348 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM860
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM860() {
- super("IBM860", ExtendedCharsets.aliasesFor("IBM860"));
- }
-
- public String historicalName() {
- return "Cp860";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM860);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C7\u00FC\u00E9\u00E2\u00E3\u00E0\u00C1\u00E7" + // 0x80 - 0x87
- "\u00EA\u00CA\u00E8\u00CD\u00D4\u00EC\u00C3\u00C2" + // 0x88 - 0x8F
- "\u00C9\u00C0\u00C8\u00F4\u00F5\u00F2\u00DA\u00F9" + // 0x90 - 0x97
- "\u00CC\u00D5\u00DC\u00A2\u00A3\u00D9\u20A7\u00D3" + // 0x98 - 0x9F
- "\u00E1\u00ED\u00F3\u00FA\u00F1\u00D1\u00AA\u00BA" + // 0xA0 - 0xA7
- "\u00BF\u00D2\u00AC\u00BD\u00BC\u00A1\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556" + // 0xB0 - 0xB7
- "\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567" + // 0xC8 - 0xCF
- "\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B" + // 0xD0 - 0xD7
- "\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u03B1\u00DF\u0393\u03C0\u03A3\u03C3\u00B5\u03C4" + // 0xE0 - 0xE7
- "\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229" + // 0xE8 - 0xEF
- "\u2261\u00B1\u2265\u2264\u2320\u2321\u00F7\u2248" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u221A\u207F\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u00AD\u009B\u009C\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00A6\u00AE\u00AA\u0000\u0000\u0000" +
- "\u00F8\u00F1\u00FD\u0000\u0000\u00E6\u0000\u00FA" +
- "\u0000\u0000\u00A7\u00AF\u00AC\u00AB\u0000\u00A8" +
- "\u0091\u0086\u008F\u008E\u0000\u0000\u0000\u0080" +
- "\u0092\u0090\u0089\u0000\u0098\u008B\u0000\u0000" +
- "\u0000\u00A5\u00A9\u009F\u008C\u0099\u0000\u0000" +
- "\u0000\u009D\u0096\u0000\u009A\u0000\u0000\u00E1" +
- "\u0085\u00A0\u0083\u0084\u0000\u0000\u0000\u0087" +
- "\u008A\u0082\u0088\u0000\u008D\u00A1\u0000\u0000" +
- "\u0000\u00A4\u0095\u00A2\u0093\u0094\u0000\u00F6" +
- "\u0000\u0097\u00A3\u0000\u0081\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00E2\u0000\u0000" +
- "\u0000\u0000\u00E9\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00E4\u0000\u0000" +
- "\u00E8\u0000\u0000\u00EA\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E0\u0000\u0000\u00EB\u00EE" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00E3\u0000\u0000\u00E5\u00E7\u0000" +
- "\u00ED\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FC\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009E\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F9\u00FB\u0000\u0000\u0000\u00EC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00EF\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00F7\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F0\u0000\u0000\u00F3\u00F2\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00F4\u00F5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C4\u0000\u00B3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DA\u0000\u0000\u0000" +
- "\u00BF\u0000\u0000\u0000\u00C0\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u00C3\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00B4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C2\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C1\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CD\u00BA\u00D5\u00D6\u00C9\u00B8\u00B7\u00BB" +
- "\u00D4\u00D3\u00C8\u00BE\u00BD\u00BC\u00C6\u00C7" +
- "\u00CC\u00B5\u00B6\u00B9\u00D1\u00D2\u00CB\u00CF" +
- "\u00D0\u00CA\u00D8\u00D7\u00CE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DF\u0000\u0000\u0000\u00DC\u0000\u0000\u0000" +
- "\u00DB\u0000\u0000\u0000\u00DD\u0000\u0000\u0000" +
- "\u00DE\u00B0\u00B1\u00B2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 253, 253, 362, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 561, 253, 792, 1016, 253, 1272, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM861.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM861.java
deleted file mode 100644
index 018d2e4252b..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM861.java
+++ /dev/null
@@ -1,369 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM861
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM861() {
- super("IBM861", ExtendedCharsets.aliasesFor("IBM861"));
- }
-
- public String historicalName() {
- return "Cp861";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM861);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C7\u00FC\u00E9\u00E2\u00E4\u00E0\u00E5\u00E7" + // 0x80 - 0x87
- "\u00EA\u00EB\u00E8\u00D0\u00F0\u00DE\u00C4\u00C5" + // 0x88 - 0x8F
- "\u00C9\u00E6\u00C6\u00F4\u00F6\u00FE\u00FB\u00DD" + // 0x90 - 0x97
- "\u00FD\u00D6\u00DC\u00F8\u00A3\u00D8\u20A7\u0192" + // 0x98 - 0x9F
- "\u00E1\u00ED\u00F3\u00FA\u00C1\u00CD\u00D3\u00DA" + // 0xA0 - 0xA7
- "\u00BF\u2310\u00AC\u00BD\u00BC\u00A1\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556" + // 0xB0 - 0xB7
- "\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567" + // 0xC8 - 0xCF
- "\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B" + // 0xD0 - 0xD7
- "\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u03B1\u00DF\u0393\u03C0\u03A3\u03C3\u00B5\u03C4" + // 0xE0 - 0xE7
- "\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229" + // 0xE8 - 0xEF
- "\u2261\u00B1\u2265\u2264\u2320\u2321\u00F7\u2248" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u221A\u207F\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u00AD\u0000\u009C\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AE\u00AA\u0000\u0000\u0000" +
- "\u00F8\u00F1\u00FD\u0000\u0000\u00E6\u0000\u00FA" +
- "\u0000\u0000\u0000\u00AF\u00AC\u00AB\u0000\u00A8" +
- "\u0000\u00A4\u0000\u0000\u008E\u008F\u0092\u0080" +
- "\u0000\u0090\u0000\u0000\u0000\u00A5\u0000\u0000" +
- "\u008B\u0000\u0000\u00A6\u0000\u0000\u0099\u0000" +
- "\u009D\u0000\u00A7\u0000\u009A\u0097\u008D\u00E1" +
- "\u0085\u00A0\u0083\u0000\u0084\u0086\u0091\u0087" +
- "\u008A\u0082\u0088\u0089\u0000\u00A1\u0000\u0000" +
- "\u008C\u0000\u0000\u00A2\u0093\u0000\u0094\u00F6" +
- "\u009B\u0000\u00A3\u0096\u0081\u0098\u0095\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u009F\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00E2\u0000\u0000\u0000\u0000\u00E9" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00E4\u0000\u0000\u00E8\u0000\u0000" +
- "\u00EA\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E0\u0000\u0000\u00EB\u00EE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00E3" +
- "\u0000\u0000\u00E5\u00E7\u0000\u00ED\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FC\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u009E\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F9\u00FB" +
- "\u0000\u0000\u0000\u00EC\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00EF\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F0\u0000" +
- "\u0000\u00F3\u00F2\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A9\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F4\u00F5\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000" +
- "\u0000\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000" +
- "\u0000\u00C3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B4\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C1\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00CD\u00BA\u00D5" +
- "\u00D6\u00C9\u00B8\u00B7\u00BB\u00D4\u00D3\u00C8" +
- "\u00BE\u00BD\u00BC\u00C6\u00C7\u00CC\u00B5\u00B6" +
- "\u00B9\u00D1\u00D2\u00CB\u00CF\u00D0\u00CA\u00D8" +
- "\u00D7\u00CE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00DF\u0000\u0000" +
- "\u0000\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000" +
- "\u0000\u00DD\u0000\u0000\u0000\u00DE\u00B0\u00B1" +
- "\u00B2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 255, 402, 511, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 710, 402, 941, 1181, 402, 1437, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
- 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402, 402,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM863.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM863.java
deleted file mode 100644
index 32c9d1b298e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM863.java
+++ /dev/null
@@ -1,373 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM863
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM863() {
- super("IBM863", ExtendedCharsets.aliasesFor("IBM863"));
- }
-
- public String historicalName() {
- return "Cp863";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM863);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C7\u00FC\u00E9\u00E2\u00C2\u00E0\u00B6\u00E7" + // 0x80 - 0x87
- "\u00EA\u00EB\u00E8\u00EF\u00EE\u2017\u00C0\u00A7" + // 0x88 - 0x8F
- "\u00C9\u00C8\u00CA\u00F4\u00CB\u00CF\u00FB\u00F9" + // 0x90 - 0x97
- "\u00A4\u00D4\u00DC\u00A2\u00A3\u00D9\u00DB\u0192" + // 0x98 - 0x9F
- "\u00A6\u00B4\u00F3\u00FA\u00A8\u00B8\u00B3\u00AF" + // 0xA0 - 0xA7
- "\u00CE\u2310\u00AC\u00BD\u00BC\u00BE\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556" + // 0xB0 - 0xB7
- "\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567" + // 0xC8 - 0xCF
- "\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B" + // 0xD0 - 0xD7
- "\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u03B1\u00DF\u0393\u03C0\u03A3\u03C3\u00B5\u03C4" + // 0xE0 - 0xE7
- "\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229" + // 0xE8 - 0xEF
- "\u2261\u00B1\u2265\u2264\u2320\u2321\u00F7\u2248" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u221A\u207F\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u009B\u009C\u0098\u0000\u00A0\u008F" +
- "\u00A4\u0000\u0000\u00AE\u00AA\u0000\u0000\u00A7" +
- "\u00F8\u00F1\u00FD\u00A6\u00A1\u00E6\u0086\u00FA" +
- "\u00A5\u0000\u0000\u00AF\u00AC\u00AB\u00AD\u0000" +
- "\u008E\u0000\u0084\u0000\u0000\u0000\u0000\u0080" +
- "\u0091\u0090\u0092\u0094\u0000\u0000\u00A8\u0095" +
- "\u0000\u0000\u0000\u0000\u0099\u0000\u0000\u0000" +
- "\u0000\u009D\u0000\u009E\u009A\u0000\u0000\u00E1" +
- "\u0085\u0000\u0083\u0000\u0000\u0000\u0000\u0087" +
- "\u008A\u0082\u0088\u0089\u0000\u0000\u008C\u008B" +
- "\u0000\u0000\u0000\u00A2\u0093\u0000\u0000\u00F6" +
- "\u0000\u0097\u00A3\u0096\u0081\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u009F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E2\u0000\u0000\u0000\u0000\u00E9\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E4\u0000\u0000\u00E8\u0000\u0000\u00EA\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00E0\u0000" +
- "\u0000\u00EB\u00EE\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00E3\u0000\u0000" +
- "\u00E5\u00E7\u0000\u00ED\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u008D\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FC\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F9\u00FB" +
- "\u0000\u0000\u0000\u00EC\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00EF\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F0\u0000" +
- "\u0000\u00F3\u00F2\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A9\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F4\u00F5\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000" +
- "\u0000\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000" +
- "\u0000\u00C3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B4\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C1\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00CD\u00BA\u00D5" +
- "\u00D6\u00C9\u00B8\u00B7\u00BB\u00D4\u00D3\u00C8" +
- "\u00BE\u00BD\u00BC\u00C6\u00C7\u00CC\u00B5\u00B6" +
- "\u00B9\u00D1\u00D2\u00CB\u00CF\u00D0\u00CA\u00D8" +
- "\u00D7\u00CE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00DF\u0000\u0000" +
- "\u0000\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000" +
- "\u0000\u00DD\u0000\u0000\u0000\u00DE\u00B0\u00B1" +
- "\u00B2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 253, 400, 509, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 742, 400, 973, 1213, 400, 1469, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM864.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM864.java
deleted file mode 100644
index acfa0670ea7..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM864.java
+++ /dev/null
@@ -1,342 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM864
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM864() {
- super("IBM864", ExtendedCharsets.aliasesFor("IBM864"));
- }
-
- public String historicalName() {
- return "Cp864";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM864);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00B0\u00B7\u2219\u221A\u2592\u2500\u2502\u253C" + // 0x80 - 0x87
- "\u2524\u252C\u251C\u2534\u2510\u250C\u2514\u2518" + // 0x88 - 0x8F
- "\u03B2\u221E\u03C6\u00B1\u00BD\u00BC\u2248\u00AB" + // 0x90 - 0x97
- "\u00BB\uFEF7\uFEF8\uFFFD\uFFFD\uFEFB\uFEFC\uFFFD" + // 0x98 - 0x9F
- "\u00A0\u00AD\uFE82\u00A3\u00A4\uFE84\uFFFD\uFFFD" + // 0xA0 - 0xA7
- "\uFE8E\uFE8F\uFE95\uFE99\u060C\uFE9D\uFEA1\uFEA5" + // 0xA8 - 0xAF
- "\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667" + // 0xB0 - 0xB7
- "\u0668\u0669\uFED1\u061B\uFEB1\uFEB5\uFEB9\u061F" + // 0xB8 - 0xBF
- "\u00A2\uFE80\uFE81\uFE83\uFE85\uFECA\uFE8B\uFE8D" + // 0xC0 - 0xC7
- "\uFE91\uFE93\uFE97\uFE9B\uFE9F\uFEA3\uFEA7\uFEA9" + // 0xC8 - 0xCF
- "\uFEAB\uFEAD\uFEAF\uFEB3\uFEB7\uFEBB\uFEBF\uFEC1" + // 0xD0 - 0xD7
- "\uFEC5\uFECB\uFECF\u00A6\u00AC\u00F7\u00D7\uFEC9" + // 0xD8 - 0xDF
- "\u0640\uFED3\uFED7\uFEDB\uFEDF\uFEE3\uFEE7\uFEEB" + // 0xE0 - 0xE7
- "\uFEED\uFEEF\uFEF3\uFEBD\uFECC\uFECE\uFECD\uFEE1" + // 0xE8 - 0xEF
- "\uFE7D\u0651\uFEE5\uFEE9\uFEEC\uFEF0\uFEF2\uFED0" + // 0xF0 - 0xF7
- "\uFED5\uFEF5\uFEF6\uFEDD\uFED9\uFEF1\u25A0\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u066A\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0000\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u00C0\u00A3\u00A4\u0000\u00DB\u0000" +
- "\u0000\u0000\u0000\u0097\u00DC\u00A1\u0000\u0000" +
- "\u0080\u0093\u0000\u0000\u0000\u0000\u0000\u0081" +
- "\u0000\u0000\u0000\u0098\u0095\u0094\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00DE" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00DD" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0090\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0092\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00BB\u0000\u0000" +
- "\u0000\u00BF\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00E0\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F1\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5" +
- "\u00B6\u00B7\u00B8\u00B9\u0025\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0082\u0083\u0000\u0000\u0000\u0091" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0096\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0085\u0000\u0086\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u008D\u0000\u0000" +
- "\u0000\u008C\u0000\u0000\u0000\u008E\u0000\u0000" +
- "\u0000\u008F\u0000\u0000\u0000\u008A\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0088\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0089\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u008B\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0087\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0084\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00FE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F0" +
- "\u0000\u0000\u00C1\u00C2\u00A2\u00C3\u00A5\u00C4" +
- "\u0000\u0000\u0000\u0000\u0000\u00C6\u0000\u00C7" +
- "\u00A8\u00A9\u0000\u00C8\u0000\u00C9\u0000\u00AA" +
- "\u0000\u00CA\u0000\u00AB\u0000\u00CB\u0000\u00AD" +
- "\u0000\u00CC\u0000\u00AE\u0000\u00CD\u0000\u00AF" +
- "\u0000\u00CE\u0000\u00CF\u0000\u00D0\u0000\u00D1" +
- "\u0000\u00D2\u0000\u00BC\u0000\u00D3\u0000\u00BD" +
- "\u0000\u00D4\u0000\u00BE\u0000\u00D5\u0000\u00EB" +
- "\u0000\u00D6\u0000\u00D7\u0000\u0000\u0000\u00D8" +
- "\u0000\u0000\u0000\u00DF\u00C5\u00D9\u00EC\u00EE" +
- "\u00ED\u00DA\u00F7\u00BA\u0000\u00E1\u0000\u00F8" +
- "\u0000\u00E2\u0000\u00FC\u0000\u00E3\u0000\u00FB" +
- "\u0000\u00E4\u0000\u00EF\u0000\u00E5\u0000\u00F2" +
- "\u0000\u00E6\u0000\u00F3\u0000\u00E7\u00F4\u00E8" +
- "\u0000\u00E9\u00F5\u00FD\u00F6\u00EA\u0000\u00F9" +
- "\u00FA\u0099\u009A\u0000\u0000\u009D\u009E\u0000" +
- "\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 248, 326, 248, 248, 570, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 801, 248, 248, 1057, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 1218, 248,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM865.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM865.java
deleted file mode 100644
index 01a45a89a5c..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM865.java
+++ /dev/null
@@ -1,369 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM865
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM865() {
- super("IBM865", ExtendedCharsets.aliasesFor("IBM865"));
- }
-
- public String historicalName() {
- return "Cp865";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM865);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C7\u00FC\u00E9\u00E2\u00E4\u00E0\u00E5\u00E7" + // 0x80 - 0x87
- "\u00EA\u00EB\u00E8\u00EF\u00EE\u00EC\u00C4\u00C5" + // 0x88 - 0x8F
- "\u00C9\u00E6\u00C6\u00F4\u00F6\u00F2\u00FB\u00F9" + // 0x90 - 0x97
- "\u00FF\u00D6\u00DC\u00F8\u00A3\u00D8\u20A7\u0192" + // 0x98 - 0x9F
- "\u00E1\u00ED\u00F3\u00FA\u00F1\u00D1\u00AA\u00BA" + // 0xA0 - 0xA7
- "\u00BF\u2310\u00AC\u00BD\u00BC\u00A1\u00AB\u00A4" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u2561\u2562\u2556" + // 0xB0 - 0xB7
- "\u2555\u2563\u2551\u2557\u255D\u255C\u255B\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u255E\u255F" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u2567" + // 0xC8 - 0xCF
- "\u2568\u2564\u2565\u2559\u2558\u2552\u2553\u256B" + // 0xD0 - 0xD7
- "\u256A\u2518\u250C\u2588\u2584\u258C\u2590\u2580" + // 0xD8 - 0xDF
- "\u03B1\u00DF\u0393\u03C0\u03A3\u03C3\u00B5\u03C4" + // 0xE0 - 0xE7
- "\u03A6\u0398\u03A9\u03B4\u221E\u03C6\u03B5\u2229" + // 0xE8 - 0xEF
- "\u2261\u00B1\u2265\u2264\u2320\u2321\u00F7\u2248" + // 0xF0 - 0xF7
- "\u00B0\u2219\u00B7\u221A\u207F\u00B2\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u00AD\u0000\u009C\u00AF\u0000\u0000\u0000" +
- "\u0000\u0000\u00A6\u00AE\u00AA\u0000\u0000\u0000" +
- "\u00F8\u00F1\u00FD\u0000\u0000\u00E6\u0000\u00FA" +
- "\u0000\u0000\u00A7\u0000\u00AC\u00AB\u0000\u00A8" +
- "\u0000\u0000\u0000\u0000\u008E\u008F\u0092\u0080" +
- "\u0000\u0090\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00A5\u0000\u0000\u0000\u0000\u0099\u0000" +
- "\u009D\u0000\u0000\u0000\u009A\u0000\u0000\u00E1" +
- "\u0085\u00A0\u0083\u0000\u0084\u0086\u0091\u0087" +
- "\u008A\u0082\u0088\u0089\u008D\u00A1\u008C\u008B" +
- "\u0000\u00A4\u0095\u00A2\u0093\u0000\u0094\u00F6" +
- "\u009B\u0097\u00A3\u0096\u0081\u0000\u0000\u0098" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u009F\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E2\u0000\u0000\u0000\u0000" +
- "\u00E9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E4\u0000\u0000\u00E8\u0000" +
- "\u0000\u00EA\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00E0\u0000\u0000\u00EB\u00EE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E3\u0000\u0000\u00E5\u00E7\u0000\u00ED\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00FC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u009E\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F9" +
- "\u00FB\u0000\u0000\u0000\u00EC\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00EF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F7\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F0" +
- "\u0000\u0000\u00F3\u00F2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00A9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F4\u00F5" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00C4\u0000" +
- "\u00B3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00DA\u0000\u0000\u0000\u00BF\u0000" +
- "\u0000\u0000\u00C0\u0000\u0000\u0000\u00D9\u0000" +
- "\u0000\u0000\u00C3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00B4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C2\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C1\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C5\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CD\u00BA" +
- "\u00D5\u00D6\u00C9\u00B8\u00B7\u00BB\u00D4\u00D3" +
- "\u00C8\u00BE\u00BD\u00BC\u00C6\u00C7\u00CC\u00B5" +
- "\u00B6\u00B9\u00D1\u00D2\u00CB\u00CF\u00D0\u00CA" +
- "\u00D8\u00D7\u00CE\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DF\u0000" +
- "\u0000\u0000\u00DC\u0000\u0000\u0000\u00DB\u0000" +
- "\u0000\u0000\u00DD\u0000\u0000\u0000\u00DE\u00B0" +
- "\u00B1\u00B2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00FE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 403, 512, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 711, 403, 942, 1182, 403, 1438, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM868.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM868.java
deleted file mode 100644
index c3e0a32b933..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM868.java
+++ /dev/null
@@ -1,359 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM868
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM868() {
- super("IBM868", ExtendedCharsets.aliasesFor("IBM868"));
- }
-
- public String historicalName() {
- return "Cp868";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM868);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u06F0\u06F1\u06F2\u06F3\u06F4\u06F5\u06F6\u06F7" + // 0x80 - 0x87
- "\u06F8\u06F9\u060C\u061B\u061F\uFE81\uFE8D\uFE8E" + // 0x88 - 0x8F
- "\uF8FB\uFE8F\uFE91\uFB56\uFB58\uFE93\uFE95\uFE97" + // 0x90 - 0x97
- "\uFB66\uFB68\uFE99\uFE9B\uFE9D\uFE9F\uFB7A\uFB7C" + // 0x98 - 0x9F
- "\uFEA1\uFEA3\uFEA5\uFEA7\uFEA9\uFB88\uFEAB\uFEAD" + // 0xA0 - 0xA7
- "\uFB8C\uFEAF\uFB8A\uFEB1\uFEB3\uFEB5\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\uFEB7\uFEB9\uFEBB" + // 0xB0 - 0xB7
- "\uFEBD\u2563\u2551\u2557\u255D\uFEBF\uFEC3\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\uFEC7\uFEC9" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\uFECA" + // 0xC8 - 0xCF
- "\uFECB\uFECC\uFECD\uFECE\uFECF\uFED0\uFED1\uFED3" + // 0xD0 - 0xD7
- "\uFED5\u2518\u250C\u2588\u2584\uFED7\uFB8E\u2580" + // 0xD8 - 0xDF
- "\uFEDB\uFB92\uFB94\uFEDD\uFEDF\uFEE0\uFEE1\uFEE3" + // 0xE0 - 0xE7
- "\uFB9E\uFEE5\uFEE7\uFE85\uFEED\uFBA6\uFBA8\uFBA9" + // 0xE8 - 0xEF
- "\u00AD\uFBAA\uFE80\uFE89\uFE8A\uFE8B\uFBFC\uFBFD" + // 0xF0 - 0xF7
- "\uFBFE\uFBB0\uFBAE\uFE7C\uFE7D\uFFFD\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AE\u0000\u00F0\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u008A\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008B\u0000\u0000\u0000\u008C" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C4\u0000\u00B3\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DA\u0000\u0000\u0000" +
- "\u00BF\u0000\u0000\u0000\u00C0\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u00C3\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00B4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C2\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C1\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CD\u00BA\u0000\u0000\u00C9\u0000\u0000\u00BB" +
- "\u0000\u0000\u00C8\u0000\u0000\u00BC\u0000\u0000" +
- "\u00CC\u0000\u0000\u00B9\u0000\u0000\u00CB\u0000" +
- "\u0000\u00CA\u0000\u0000\u00CE\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DF\u0000\u0000\u0000\u00DC\u0000\u0000\u0000" +
- "\u00DB\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B0\u00B1\u00B2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0090\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0093\u0000\u0094\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0098\u0000\u0099\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u009E" +
- "\u0000\u009F\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A5\u0000\u00AA" +
- "\u0000\u00A8\u0000\u00DE\u0000\u0000\u0000\u00E1" +
- "\u0000\u00E2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E8\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00ED\u0000\u00EE\u00EF\u00F1" +
- "\u0000\u0000\u0000\u00FA\u0000\u00F9\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F6\u00F7\u00F8\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FB\u00FC\u0000\u0000\u00F2\u008D\u0000\u0000" +
- "\u0000\u00EB\u0000\u0000\u0000\u00F3\u00F4\u00F5" +
- "\u0000\u008E\u008F\u0091\u0000\u0092\u0000\u0095" +
- "\u0000\u0096\u0000\u0097\u0000\u009A\u0000\u009B" +
- "\u0000\u009C\u0000\u009D\u0000\u00A0\u0000\u00A1" +
- "\u0000\u00A2\u0000\u00A3\u0000\u00A4\u0000\u00A6" +
- "\u0000\u00A7\u0000\u00A9\u0000\u00AB\u0000\u00AC" +
- "\u0000\u00AD\u0000\u00B5\u0000\u00B6\u0000\u00B7" +
- "\u0000\u00B8\u0000\u00BD\u0000\u0000\u0000\u00BE" +
- "\u0000\u0000\u0000\u00C6\u0000\u00C7\u00CF\u00D0" +
- "\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u0000\u00D7" +
- "\u0000\u00D8\u0000\u00DD\u0000\u0000\u0000\u00E0" +
- "\u0000\u00E3\u0000\u00E4\u00E5\u00E6\u0000\u00E7" +
- "\u0000\u00E9\u0000\u00EA\u0000\u0000\u0000\u0000" +
- "\u0000\u00EC\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 188, 188, 188, 188, 188, 432, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 688, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 849, 188, 188, 1101, 188, 188, 1356, 188,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM869.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM869.java
deleted file mode 100644
index d9375265f10..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM869.java
+++ /dev/null
@@ -1,290 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM869
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM869() {
- super("IBM869", ExtendedCharsets.aliasesFor("IBM869"));
- }
-
- public String historicalName() {
- return "Cp869";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM869);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u0386\uFFFD" + // 0x80 - 0x87
- "\u00B7\u00AC\u00A6\u2018\u2019\u0388\u2015\u0389" + // 0x88 - 0x8F
- "\u038A\u03AA\u038C\uFFFD\uFFFD\u038E\u03AB\u00A9" + // 0x90 - 0x97
- "\u038F\u00B2\u00B3\u03AC\u00A3\u03AD\u03AE\u03AF" + // 0x98 - 0x9F
- "\u03CA\u0390\u03CC\u03CD\u0391\u0392\u0393\u0394" + // 0xA0 - 0xA7
- "\u0395\u0396\u0397\u00BD\u0398\u0399\u00AB\u00BB" + // 0xA8 - 0xAF
- "\u2591\u2592\u2593\u2502\u2524\u039A\u039B\u039C" + // 0xB0 - 0xB7
- "\u039D\u2563\u2551\u2557\u255D\u039E\u039F\u2510" + // 0xB8 - 0xBF
- "\u2514\u2534\u252C\u251C\u2500\u253C\u03A0\u03A1" + // 0xC0 - 0xC7
- "\u255A\u2554\u2569\u2566\u2560\u2550\u256C\u03A3" + // 0xC8 - 0xCF
- "\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9\u03B1\u03B2" + // 0xD0 - 0xD7
- "\u03B3\u2518\u250C\u2588\u2584\u03B4\u03B5\u2580" + // 0xD8 - 0xDF
- "\u03B6\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC\u03BD" + // 0xE0 - 0xE7
- "\u03BE\u03BF\u03C0\u03C1\u03C3\u03C2\u03C4\u0384" + // 0xE8 - 0xEF
- "\u00AD\u00B1\u03C5\u03C6\u03C7\u00A7\u03C8\u0385" + // 0xF0 - 0xF7
- "\u00B0\u00A8\u03C9\u03CB\u03B0\u03CE\u25A0\u00A0" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0000\u009C\u0000\u0000\u008A\u00F5" +
- "\u00F9\u0097\u0000\u00AE\u0089\u00F0\u0000\u0000" +
- "\u00F8\u00F1\u0099\u009A\u0000\u0000\u0000\u0088" +
- "\u0000\u0000\u0000\u00AF\u0000\u00AB\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00EF\u00F7" +
- "\u0086\u0000\u008D\u008F\u0090\u0000\u0092\u0000" +
- "\u0095\u0098\u00A1\u00A4\u00A5\u00A6\u00A7\u00A8" +
- "\u00A9\u00AA\u00AC\u00AD\u00B5\u00B6\u00B7\u00B8" +
- "\u00BD\u00BE\u00C6\u00C7\u0000\u00CF\u00D0\u00D1" +
- "\u00D2\u00D3\u00D4\u00D5\u0091\u0096\u009B\u009D" +
- "\u009E\u009F\u00FC\u00D6\u00D7\u00D8\u00DD\u00DE" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00ED\u00EC\u00EE\u00F2" +
- "\u00F3\u00F4\u00F6\u00FA\u00A0\u00FB\u00A2\u00A3" +
- "\u00FD\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u008E\u0000\u0000\u008B\u008C\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00C4\u0000\u00B3" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DA\u0000\u0000\u0000\u00BF\u0000\u0000" +
- "\u0000\u00C0\u0000\u0000\u0000\u00D9\u0000\u0000" +
- "\u0000\u00C3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B4\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C2\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C1\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00CD\u00BA\u0000" +
- "\u0000\u00C9\u0000\u0000\u00BB\u0000\u0000\u00C8" +
- "\u0000\u0000\u00BC\u0000\u0000\u00CC\u0000\u0000" +
- "\u00B9\u0000\u0000\u00CB\u0000\u0000\u00CA\u0000" +
- "\u0000\u00CE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00DF\u0000\u0000" +
- "\u0000\u00DC\u0000\u0000\u0000\u00DB\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00B0\u00B1" +
- "\u00B2\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 190, 190, 314, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 549, 190, 190, 190, 190, 805, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM870.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM870.java
deleted file mode 100644
index f756a764cee..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM870.java
+++ /dev/null
@@ -1,244 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM870
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM870() {
- super("IBM870", ExtendedCharsets.aliasesFor("IBM870"));
- }
-
- public String historicalName() {
- return "Cp870";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM870);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u02D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u015B\u0148\u0111\u00FD\u0159\u015F" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u0142\u0144\u0161\u00B8\u02DB\u00A4" + // 0x98 - 0x9F
- "\u0105\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u015A\u0147\u0110\u00DD\u0158\u015E" + // 0xA8 - 0xAF
- "\u02D9\u0104\u017C\u0162\u017B\u00A7\u017E\u017A" + // 0xB0 - 0xB7
- "\u017D\u0179\u0141\u0143\u0160\u00A8\u00B4\u00D7" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u00F6\u0155\u00F3\u0151" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u011A\u0171\u00FC\u0165\u00FA\u011B" + // 0xD8 - 0xDF
- "\\\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u010F\u00D4\u00D6\u0154\u00D3\u0150" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u010E\u0170\u00DC\u0164\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u0163\u00E1\u0103\u010D" + // 0x40 - 0x47
- "\u00E7\u0107\u005B\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u00E9\u0119\u00EB\u016F\u00ED\u00EE\u013E" + // 0x50 - 0x57
- "\u013A\u00DF\u005D\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u02DD\u00C1\u0102\u010C" + // 0x60 - 0x67
- "\u00C7\u0106\u007C\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u02C7\u00C9\u0118\u00CB\u016E\u00CD\u00CE\u013D" + // 0x70 - 0x77
- "\u0139\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u006A\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u0000\u0000\u0000\u009F\u0000\u0000\u00B5" +
- "\u00BD\u0000\u0000\u0000\u0000\u00CA\u0000\u0000" +
- "\u0090\u0000\u0000\u0000\u00BE\u0000\u0000\u0000" +
- "\u009D\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0065\u0062\u0000\u0063\u0000\u0000\u0068" +
- "\u0000\u0071\u0000\u0073\u0000\u0075\u0076\u0000" +
- "\u0000\u0000\u0000\u00EE\u00EB\u0000\u00EC\u00BF" +
- "\u0000\u0000\u00FE\u0000\u00FC\u00AD\u0000\u0059" +
- "\u0000\u0045\u0042\u0000\u0043\u0000\u0000\u0048" +
- "\u0000\u0051\u0000\u0053\u0000\u0055\u0056\u0000" +
- "\u0000\u0000\u0000\u00CE\u00CB\u0000\u00CC\u00E1" +
- "\u0000\u0000\u00DE\u0000\u00DC\u008D\u0000\u0000" +
- "\u0066\u0046\u00B1\u00A0\u0069\u0049\u0000\u0000" +
- "\u0000\u0000\u0067\u0047\u00FA\u00EA\u00AC\u008C" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0072\u0052" +
- "\u00DA\u00DF\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0078" +
- "\u0058\u0000\u0000\u0077\u0057\u0000\u0000\u00BA" +
- "\u009A\u00BB\u009B\u0000\u0000\u00AB\u008B\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00EF\u00CF" +
- "\u0000\u0000\u00ED\u00CD\u0000\u0000\u00AE\u008E" +
- "\u00AA\u008A\u0000\u0000\u00AF\u008F\u00BC\u009C" +
- "\u00B3\u0044\u00FD\u00DD\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0074\u0054\u00FB\u00DB" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B9" +
- "\u00B7\u00B4\u00B2\u00B8\u00B6\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0070\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0080\u00B0" +
- "\u0000\u009E\u0000\u0064\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 254, 438, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
- 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381, 381,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM871.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM871.java
deleted file mode 100644
index c2c3b96a297..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM871.java
+++ /dev/null
@@ -1,221 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM871
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM871() {
- super("IBM871", ExtendedCharsets.aliasesFor("IBM871"));
- }
-
- public String historicalName() {
- return "Cp871";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM871);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00D8\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u00AB\u00BB\u0060\u00FD\u007B\u00B1" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u00AA\u00BA\u007D\u00B8\u005D\u00A4" + // 0x98 - 0x9F
- "\u00B5\u00F6\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u00A1\u00BF\u0040\u00DD\u005B\u00AE" + // 0xA8 - 0xAF
- "\u00A2\u00A3\u00A5\u00B7\u00A9\u00A7\u00B6\u00BC" + // 0xB0 - 0xB7
- "\u00BD\u00BE\u00AC\u007C\u00AF\u00A8\\\u00D7" + // 0xB8 - 0xBF
- "\u00FE\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u00F4\u007E\u00F2\u00F3\u00F5" + // 0xC8 - 0xCF
- "\u00E6\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B9\u00FB\u00FC\u00F9\u00FA\u00FF" + // 0xD8 - 0xDF
- "\u00B4\u00F7\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00D4\u005E\u00D2\u00D3\u00D5" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00DB\u00DC\u00D9\u00DA\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u00E2\u00E4\u00E0\u00E1\u00E3\u00E5" + // 0x40 - 0x47
- "\u00E7\u00F1\u00DE\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u00E9\u00EA\u00EB\u00E8\u00ED\u00EE\u00EF" + // 0x50 - 0x57
- "\u00EC\u00DF\u00C6\u0024\u002A\u0029\u003B\u00D6" + // 0x58 - 0x5F
- "\u002D\u002F\u00C2\u00C4\u00C0\u00C1\u00C3\u00C5" + // 0x60 - 0x67
- "\u00C7\u00D1\u00A6\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00F8\u00C9\u00CA\u00CB\u00C8\u00CD\u00CE\u00CF" + // 0x70 - 0x77
- "\u00CC\u00F0\u003A\u0023\u00D0\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u00AC\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00AE\u00BE\u009E\u00EC\u006D" +
- "\u008C\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u008E\u00BB\u009C\u00CC\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u00AA\u00B0\u00B1\u009F\u00B2\u006A\u00B5" +
- "\u00BD\u00B4\u009A\u008A\u00BA\u00CA\u00AF\u00BC" +
- "\u0090\u008F\u00EA\u00FA\u00E0\u00A0\u00B6\u00B3" +
- "\u009D\u00DA\u009B\u008B\u00B7\u00B8\u00B9\u00AB" +
- "\u0064\u0065\u0062\u0066\u0063\u0067\u005A\u0068" +
- "\u0074\u0071\u0072\u0073\u0078\u0075\u0076\u0077" +
- "\u007C\u0069\u00ED\u00EE\u00EB\u00EF\u005F\u00BF" +
- "\u0080\u00FD\u00FE\u00FB\u00FC\u00AD\u004A\u0059" +
- "\u0044\u0045\u0042\u0046\u0043\u0047\u00D0\u0048" +
- "\u0054\u0051\u0052\u0053\u0058\u0055\u0056\u0057" +
- "\u0079\u0049\u00CD\u00CE\u00CB\u00CF\u00A1\u00E1" +
- "\u0070\u00DD\u00DE\u00DB\u00DC\u008D\u00C0\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
- 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM875.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM875.java
deleted file mode 100644
index c3453081c81..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM875.java
+++ /dev/null
@@ -1,258 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM875
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM875() {
- super("x-IBM875", ExtendedCharsets.aliasesFor("x-IBM875"));
- }
-
- public String historicalName() {
- return "Cp875";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM875);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0385\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\u03B1\u03B2\u03B3\u03B4\u03B5\u03B6" + // 0x88 - 0x8F
- "\u00B0\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\u03B7\u03B8\u03B9\u03BA\u03BB\u03BC" + // 0x98 - 0x9F
- "\u00B4\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\u03BD\u03BE\u03BF\u03C0\u03C1\u03C3" + // 0xA8 - 0xAF
- "\u00A3\u03AC\u03AD\u03AE\u03CA\u03AF\u03CC\u03CD" + // 0xB0 - 0xB7
- "\u03CB\u03CE\u03C2\u03C4\u03C5\u03C6\u03C7\u03C8" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\u03C9\u0390\u03B0\u2018\u2015" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\u00B1\u00BD\uFFFD\u0387\u2019\u00A6" + // 0xD8 - 0xDF
- "\\\uFFFD\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\u00B2\u00A7\uFFFD\uFFFD\u00AB\u00AC" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\u00B3\u00A9\uFFFD\uFFFD\u00BB\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u0391\u0392\u0393\u0394\u0395\u0396\u0397" + // 0x40 - 0x47
- "\u0398\u0399\u005B\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\u039A\u039B\u039C\u039D\u039E\u039F\u03A0" + // 0x50 - 0x57
- "\u03A1\u03A3\u005D\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\u03A4\u03A5\u03A6\u03A7\u03A8\u03A9" + // 0x60 - 0x67
- "\u03AA\u03AB\u007C\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u00A8\u0386\u0388\u0389\u00A0\u038A\u038C\u038E" + // 0x70 - 0x77
- "\u038F\u0060\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u005F\u006D" +
- "\u0079\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u006A\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0074\u0000\u0000\u00B0\u0000\u0000\u00DF\u00EB" +
- "\u0070\u00FB\u0000\u00EE\u00EF\u00CA\u0000\u0000" +
- "\u0090\u00DA\u00EA\u00FA\u00A0\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00FE\u0000\u00DB\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0080\u0071" +
- "\u00DD\u0072\u0073\u0075\u0000\u0076\u0000\u0077" +
- "\u0078\u00CC\u0041\u0042\u0043\u0044\u0045\u0046" +
- "\u0047\u0048\u0049\u0051\u0052\u0053\u0054\u0055" +
- "\u0056\u0057\u0058\u0000\u0059\u0062\u0063\u0064" +
- "\u0065\u0066\u0067\u0068\u0069\u00B1\u00B2\u00B3" +
- "\u00B5\u00CD\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u009A\u009B\u009C\u009D\u009E\u009F\u00AA\u00AB" +
- "\u00AC\u00AD\u00AE\u00BA\u00AF\u00BB\u00BC\u00BD" +
- "\u00BE\u00BF\u00CB\u00B4\u00B8\u00B6\u00B7\u00B9" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00CF\u0000\u0000\u00CE\u00DE\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 190, 190, 313, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 548, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
- 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM918.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM918.java
deleted file mode 100644
index 62a2e8dcca9..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM918.java
+++ /dev/null
@@ -1,336 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM918
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM918() {
- super("IBM918", ExtendedCharsets.aliasesFor("IBM918"));
- }
-
- public String historicalName() {
- return "Cp918";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM918);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFEA7\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x80 - 0x87
- "\u0068\u0069\uFEA9\uFB88\uFEAB\uFEAD\uFB8C\uFEAF" + // 0x88 - 0x8F
- "\uFB8A\u006A\u006B\u006C\u006D\u006E\u006F\u0070" + // 0x90 - 0x97
- "\u0071\u0072\uFEB1\uFEB3\uFEB5\uFEB7\uFEB9\uFEBB" + // 0x98 - 0x9F
- "\uFEBD\u007E\u0073\u0074\u0075\u0076\u0077\u0078" + // 0xA0 - 0xA7
- "\u0079\u007A\uFEBF\uFEC3\uFEC7\uFEC9\uFECA\uFECB" + // 0xA8 - 0xAF
- "\uFECC\uFECD\uFECE\uFECF\uFED0\uFED1\uFED3\uFED5" + // 0xB0 - 0xB7
- "\uFED7\uFB8E\uFEDB\u007C\uFB92\uFB94\uFEDD\uFEDF" + // 0xB8 - 0xBF
- "\u007B\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0xC0 - 0xC7
- "\u0048\u0049\u00AD\uFEE0\uFEE1\uFEE3\uFB9E\uFEE5" + // 0xC8 - 0xCF
- "\u007D\u004A\u004B\u004C\u004D\u004E\u004F\u0050" + // 0xD0 - 0xD7
- "\u0051\u0052\uFEE7\uFE85\uFEED\uFBA6\uFBA8\uFBA9" + // 0xD8 - 0xDF
- "\\\uFBAA\u0053\u0054\u0055\u0056\u0057\u0058" + // 0xE0 - 0xE7
- "\u0059\u005A\uFE80\uFE89\uFE8A\uFE8B\uFBFC\uFBFD" + // 0xE8 - 0xEF
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0xF0 - 0xF7
- "\u0038\u0039\uFBFE\uFBB0\uFBAE\uFE7C\uFE7D\u009F" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u009C\t\u0086\u007F" + // 0x00 - 0x07
- "\u0097\u008D\u008E\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u009D\n\b\u0087" + // 0x10 - 0x17
- "\u0018\u0019\u0092\u008F\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0080\u0081\u0082\u0083\u0084\n\u0017\u001B" + // 0x20 - 0x27
- "\u0088\u0089\u008A\u008B\u008C\u0005\u0006\u0007" + // 0x28 - 0x2F
- "\u0090\u0091\u0016\u0093\u0094\u0095\u0096\u0004" + // 0x30 - 0x37
- "\u0098\u0099\u009A\u009B\u0014\u0015\u009E\u001A" + // 0x38 - 0x3F
- "\u0020\u00A0\u060C\u061B\u061F\uFE81\uFE8D\uFE8E" + // 0x40 - 0x47
- "\uF8FB\uFE8F\u005B\u002E\u003C\u0028\u002B\u0021" + // 0x48 - 0x4F
- "\u0026\uFE91\uFB56\uFB58\uFE93\uFE95\uFE97\uFB66" + // 0x50 - 0x57
- "\uFB68\uFE99\u005D\u0024\u002A\u0029\u003B\u005E" + // 0x58 - 0x5F
- "\u002D\u002F\uFE9B\uFE9D\uFE9F\uFB7A\uFB7C\uFEA1" + // 0x60 - 0x67
- "\uFEA3\uFEA5\u0060\u002C\u0025\u005F\u003E\u003F" + // 0x68 - 0x6F
- "\u06F0\u06F1\u06F2\u06F3\u06F4\u06F5\u06F6\u06F7" + // 0x70 - 0x77
- "\u06F8\u06F9\u003A\u0023\u0040\'\u003D\""; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0037\u002D\u002E\u002F" +
- "\u0016\u0005\u0015\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u003C\u003D\u0032\u0026" +
- "\u0018\u0019\u003F\'\u001C\u001D\u001E\u001F" +
- "\u0040\u004F\u007F\u007B\u005B\u006C\u0050\u007D" +
- "\u004D\u005D\\\u004E\u006B\u0060\u004B\u0061" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u007A\u005E\u004C\u007E\u006E\u006F" +
- "\u007C\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u004A\u00E0\u005A\u005F\u006D" +
- "\u006A\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u0091\u0092\u0093\u0094\u0095\u0096" +
- "\u0097\u0098\u0099\u00A2\u00A3\u00A4\u00A5\u00A6" +
- "\u00A7\u00A8\u00A9\u00C0\u00BB\u00D0\u00A1\u0007" +
- "\u0020\u0021\"\u0023\u0024\u0015\u0006\u0017" +
- "\u0028\u0029\u002A\u002B\u002C\t\n\u001B" +
- "\u0030\u0031\u001A\u0033\u0034\u0035\u0036\b" +
- "\u0038\u0039\u003A\u003B\u0004\u0014\u003E\u00FF" +
- "\u0041\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00CA\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0042\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0043\u0000\u0000" +
- "\u0000\u0044\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0070\u0071\u0072\u0073\u0074\u0075" +
- "\u0076\u0077\u0078\u0079\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0048" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0052\u0000" +
- "\u0053\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0057\u0000" +
- "\u0058\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0065\u0000\u0066\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u008B\u0000\u0090\u0000\u008E\u0000\u00B9\u0000" +
- "\u0000\u0000\u00BC\u0000\u00BD\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DD\u0000" +
- "\u00DE\u00DF\u00E1\u0000\u0000\u0000\u00FC\u0000" +
- "\u00FB\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00EE\u00EF\u00FA\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00FD\u00FE\u0000\u0000\u00EA" +
- "\u0045\u0000\u0000\u0000\u00DB\u0000\u0000\u0000" +
- "\u00EB\u00EC\u00ED\u0000\u0046\u0047\u0049\u0000" +
- "\u0051\u0000\u0054\u0000\u0055\u0000\u0056\u0000" +
- "\u0059\u0000\u0062\u0000\u0063\u0000\u0064\u0000" +
- "\u0067\u0000\u0068\u0000\u0069\u0000\u0080\u0000" +
- "\u008A\u0000\u008C\u0000\u008D\u0000\u008F\u0000" +
- "\u009A\u0000\u009B\u0000\u009C\u0000\u009D\u0000" +
- "\u009E\u0000\u009F\u0000\u00A0\u0000\u00AA\u0000" +
- "\u0000\u0000\u00AB\u0000\u0000\u0000\u00AC\u0000" +
- "\u00AD\u00AE\u00AF\u00B0\u00B1\u00B2\u00B3\u00B4" +
- "\u00B5\u0000\u00B6\u0000\u00B7\u0000\u00B8\u0000" +
- "\u0000\u0000\u00BA\u0000\u00BE\u0000\u00BF\u00CB" +
- "\u00CC\u0000\u00CD\u0000\u00CF\u0000\u00DA\u0000" +
- "\u0000\u0000\u0000\u0000\u00DC\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 174, 174, 174, 174, 174, 418, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 668, 174, 174, 920, 174, 174, 1175, 174,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM921.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM921.java
deleted file mode 100644
index 763a97e02db..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM921.java
+++ /dev/null
@@ -1,266 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM921
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM921() {
- super("x-IBM921", ExtendedCharsets.aliasesFor("x-IBM921"));
- }
-
- public String historicalName() {
- return "Cp921";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM921);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u201D\u00A2\u00A3\u00A4\u201E\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00D8\u00A9\u0156\u00AB\u00AC\u00AD\u00AE\u00C6" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u201C\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00F8\u00B9\u0157\u00BB\u00BC\u00BD\u00BE\u00E6" + // 0xB8 - 0xBF
- "\u0104\u012E\u0100\u0106\u00C4\u00C5\u0118\u0112" + // 0xC0 - 0xC7
- "\u010C\u00C9\u0179\u0116\u0122\u0136\u012A\u013B" + // 0xC8 - 0xCF
- "\u0160\u0143\u0145\u00D3\u014C\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u0172\u0141\u015A\u016A\u00DC\u017B\u017D\u00DF" + // 0xD8 - 0xDF
- "\u0105\u012F\u0101\u0107\u00E4\u00E5\u0119\u0113" + // 0xE0 - 0xE7
- "\u010D\u00E9\u017A\u0117\u0123\u0137\u012B\u013C" + // 0xE8 - 0xEF
- "\u0161\u0144\u0146\u00F3\u014D\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u0173\u0142\u015B\u016B\u00FC\u017C\u017E\u2019" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u00A2\u00A3\u00A4\u0000\u00A6\u00A7" +
- "\u0000\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u0000" +
- "\u00B0\u00B1\u00B2\u00B3\u0000\u00B5\u00B6\u00B7" +
- "\u0000\u00B9\u0000\u00BB\u00BC\u00BD\u00BE\u0000" +
- "\u0000\u0000\u0000\u0000\u00C4\u00C5\u00AF\u0000" +
- "\u0000\u00C9\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00D3\u0000\u00D5\u00D6\u00D7" +
- "\u00A8\u0000\u0000\u0000\u00DC\u0000\u0000\u00DF" +
- "\u0000\u0000\u0000\u0000\u00E4\u00E5\u00BF\u0000" +
- "\u0000\u00E9\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F3\u0000\u00F5\u00F6\u00F7" +
- "\u00B8\u0000\u0000\u0000\u00FC\u0000\u0000\u0000" +
- "\u00C2\u00E2\u0000\u0000\u00C0\u00E0\u00C3\u00E3" +
- "\u0000\u0000\u0000\u0000\u00C8\u00E8\u0000\u0000" +
- "\u0000\u0000\u00C7\u00E7\u0000\u0000\u00CB\u00EB" +
- "\u00C6\u00E6\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CC\u00EC\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CE\u00EE\u0000\u0000\u00C1\u00E1" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00CD\u00ED" +
- "\u0000\u0000\u0000\u00CF\u00EF\u0000\u0000\u0000" +
- "\u0000\u00D9\u00F9\u00D1\u00F1\u00D2\u00F2\u0000" +
- "\u0000\u0000\u0000\u0000\u00D4\u00F4\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AA\u00BA" +
- "\u0000\u0000\u00DA\u00FA\u0000\u0000\u0000\u0000" +
- "\u00D0\u00F0\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00DB\u00FB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00D8\u00F8\u0000\u0000\u0000\u0000" +
- "\u0000\u00CA\u00EA\u00DD\u00FD\u00DE\u00FE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00FF" +
- "\u0000\u0000\u00B4\u00A1\u00A5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 614, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/IBM922.java b/jdk/src/share/classes/sun/nio/cs/ext/IBM922.java
deleted file mode 100644
index 05280c93577..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/IBM922.java
+++ /dev/null
@@ -1,262 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class IBM922
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public IBM922() {
- super("x-IBM922", ExtendedCharsets.aliasesFor("x-IBM922"));
- }
-
- public String historicalName() {
- return "Cp922";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof IBM922);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u203E" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" + // 0xB8 - 0xBF
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" + // 0xC0 - 0xC7
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" + // 0xC8 - 0xCF
- "\u0160\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD\u017D\u00DF" + // 0xD8 - 0xDF
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" + // 0xE0 - 0xE7
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" + // 0xE8 - 0xEF
- "\u0161\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u017E\u00FF" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u0000" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u0000\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD\u0000\u00DF" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u0000\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD\u0000\u00FF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D0\u00F0\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00DE\u00FE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00AF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000";
-
- private final static short index1[] = {
- 0, 256, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 577, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_11.java b/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_11.java
deleted file mode 100644
index 8e49b22c5ec..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_11.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*
- * Copyright 2003 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-/*
- *
- * NIO charset Support for Latin/Thai x-ISO-8859-11 charset
- * (Currently not IANA registered)
- */
-
-package sun.nio.cs.ext;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.SingleByteDecoder;
-
-public class ISO_8859_11 extends Charset
-{
-
- public ISO_8859_11() {
- super("x-iso-8859-11", ExtendedCharsets.aliasesFor("x-iso-8859-11"));
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_11));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
- protected static class Decoder extends SingleByteDecoder {
-
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07" + // 0xA0 - 0xA7
- "\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F" + // 0xA8 - 0xAF
- "\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17" + // 0xB0 - 0xB7
- "\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F" + // 0xB8 - 0xBF
- "\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27" + // 0xC0 - 0xC7
- "\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F" + // 0xC8 - 0xCF
- "\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37" + // 0xD0 - 0xD7
- "\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F" + // 0xD8 - 0xDF
- "\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47" + // 0xE0 - 0xE7
- "\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F" + // 0xE8 - 0xEF
- "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57" + // 0xF0 - 0xF7
- "\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- protected static class Encoder extends SingleByteEncoder {
-
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u0000\u0000\u0000\u0000\u00DF" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 416, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_3.java b/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_3.java
deleted file mode 100644
index 6554891055c..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_3.java
+++ /dev/null
@@ -1,243 +0,0 @@
-
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class ISO_8859_3
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_3() {
- super("ISO-8859-3", ExtendedCharsets.aliasesFor("ISO-8859-3"));
- }
-
- public String historicalName() {
- return "ISO8859_3";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_3));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\u0126\u02D8\u00A3\u00A4\uFFFD\u0124\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u0130\u015E\u011E\u0134\u00AD\uFFFD\u017B" + // 0xA8 - 0xAF
- "\u00B0\u0127\u00B2\u00B3\u00B4\u00B5\u0125\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u0131\u015F\u011F\u0135\u00BD\uFFFD\u017C" + // 0xB8 - 0xBF
- "\u00C0\u00C1\u00C2\uFFFD\u00C4\u010A\u0108\u00C7" + // 0xC0 - 0xC7
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" + // 0xC8 - 0xCF
- "\uFFFD\u00D1\u00D2\u00D3\u00D4\u0120\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u011C\u00D9\u00DA\u00DB\u00DC\u016C\u015C\u00DF" + // 0xD8 - 0xDF
- "\u00E0\u00E1\u00E2\uFFFD\u00E4\u010B\u0109\u00E7" + // 0xE0 - 0xE7
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" + // 0xE8 - 0xEF
- "\uFFFD\u00F1\u00F2\u00F3\u00F4\u0121\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u011D\u00F9\u00FA\u00FB\u00FC\u016D\u015D\u02D9" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u00A3\u00A4\u0000\u0000\u00A7" +
- "\u00A8\u0000\u0000\u0000\u0000\u00AD\u0000\u0000" +
- "\u00B0\u0000\u00B2\u00B3\u00B4\u00B5\u0000\u00B7" +
- "\u00B8\u0000\u0000\u0000\u0000\u00BD\u0000\u0000" +
- "\u00C0\u00C1\u00C2\u0000\u00C4\u0000\u0000\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u0000\u00D1\u00D2\u00D3\u00D4\u0000\u00D6\u00D7" +
- "\u0000\u00D9\u00DA\u00DB\u00DC\u0000\u0000\u00DF" +
- "\u00E0\u00E1\u00E2\u0000\u00E4\u0000\u0000\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u0000\u00F1\u00F2\u00F3\u00F4\u0000\u00F6\u00F7" +
- "\u0000\u00F9\u00FA\u00FB\u00FC\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00C6\u00E6\u00C5" +
- "\u00E5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00D8\u00F8\u00AB\u00BB\u00D5\u00F5\u0000" +
- "\u0000\u00A6\u00B6\u00A1\u00B1\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A9\u00B9\u0000" +
- "\u0000\u00AC\u00BC\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DE\u00FE\u00AA\u00BA\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DD\u00FD\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AF\u00BF\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00A2\u00FF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000";
-
- private final static short index1[] = {
- 0, 253, 418, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378, 378,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_6.java b/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_6.java
deleted file mode 100644
index 56b7cf43088..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_6.java
+++ /dev/null
@@ -1,246 +0,0 @@
-
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class ISO_8859_6
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_6() {
- super("ISO-8859-6", ExtendedCharsets.aliasesFor("ISO-8859-6"));
- }
-
- public String historicalName() {
- return "ISO8859_6";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_6));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\uFFFD\uFFFD\uFFFD\u00A4\uFFFD\uFFFD\uFFFD" + // 0xA0 - 0xA7
- "\uFFFD\uFFFD\uFFFD\uFFFD\u060C\u00AD\uFFFD\uFFFD" + // 0xA8 - 0xAF
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xB0 - 0xB7
- "\uFFFD\uFFFD\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F" + // 0xB8 - 0xBF
- "\uFFFD\u0621\u0622\u0623\u0624\u0625\u0626\u0627" + // 0xC0 - 0xC7
- "\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F" + // 0xC8 - 0xCF
- "\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637" + // 0xD0 - 0xD7
- "\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xD8 - 0xDF
- "\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647" + // 0xE0 - 0xE7
- "\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F" + // 0xE8 - 0xEF
- "\u0650\u0651\u0652\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xF0 - 0xF7
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u0000\u0000\u00A4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00AD\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00BB\u0000\u0000" +
- "\u0000\u00BF\u0000\u00C1\u00C2\u00C3\u00C4\u00C5" +
- "\u00C6\u00C7\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD" +
- "\u00CE\u00CF\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5" +
- "\u00D6\u00D7\u00D8\u00D9\u00DA\u0000\u0000\u0000" +
- "\u0000\u0000\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5" +
- "\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED" +
- "\u00EE\u00EF\u00F0\u00F1\u00F2\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000";
-
- private final static short index1[] = {
- 0, 174, 174, 174, 174, 174, 418, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_8.java b/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_8.java
deleted file mode 100644
index fca3a86f116..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/ISO_8859_8.java
+++ /dev/null
@@ -1,259 +0,0 @@
-
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-
-public class ISO_8859_8
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public ISO_8859_8() {
- super("ISO-8859-8", ExtendedCharsets.aliasesFor("ISO-8859-8"));
- }
-
- public String historicalName() {
- return "ISO8859_8";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof ISO_8859_8));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" + // 0x80 - 0x87
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" + // 0x88 - 0x8F
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" + // 0x90 - 0x97
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" + // 0x98 - 0x9F
- "\u00A0\uFFFD\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u00D7\u00AB\u00AC\u00AD\u00AE\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u00B9\u00F7\u00BB\u00BC\u00BD\u00BE\uFFFD" + // 0xB8 - 0xBF
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xC0 - 0xC7
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xC8 - 0xCF
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xD0 - 0xD7
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u2017" + // 0xD8 - 0xDF
- "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7" + // 0xE0 - 0xE7
- "\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF" + // 0xE8 - 0xEF
- "\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7" + // 0xF0 - 0xF7
- "\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0080\u0081\u0082\u0083\u0084\u0085\u0086\u0087" +
- "\u0088\u0089\u008A\u008B\u008C\u008D\u008E\u008F" +
- "\u0090\u0091\u0092\u0093\u0094\u0095\u0096\u0097" +
- "\u0098\u0099\u009A\u009B\u009C\u009D\u009E\u009F" +
- "\u00A0\u0000\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u0000\u00BB\u00BC\u00BD\u00BE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00AA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FD\u00FE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DF\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000";
- private final static short index1[] = {
- 0, 248, 248, 248, 248, 296, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 538, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MS1255.java b/jdk/src/share/classes/sun/nio/cs/ext/MS1255.java
deleted file mode 100644
index d249f1d9503..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MS1255.java
+++ /dev/null
@@ -1,333 +0,0 @@
-
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-
-public class MS1255
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public String historicalName() {
- return "Cp1255";
- }
-
- public MS1255() {
- super("windows-1255", ExtendedCharsets.aliasesFor("windows-1255"));
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS1255));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return MS1255.Decoder.byteToCharTable;
- }
-
- public short[] getEncoderIndex1() {
- return MS1255.Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return MS1255.Encoder.index2;
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\u02C6\u2030\uFFFD\u2039\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\u02DC\u2122\uFFFD\u203A\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x98 - 0x9F
- "\u00A0\u00A1\u00A2\u00A3\u20AA\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u00D7\u00AB\u00AC\u00AD\u00AE\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u00B9\u00F7\u00BB\u00BC\u00BD\u00BE\u00BF" + // 0xB8 - 0xBF
- "\u05B0\u05B1\u05B2\u05B3\u05B4\u05B5\u05B6\u05B7" + // 0xC0 - 0xC7
- "\u05B8\u05B9\uFFFD\u05BB\u05BC\u05BD\u05BE\u05BF" + // 0xC8 - 0xCF
- "\u05C0\u05C1\u05C2\u05C3\u05F0\u05F1\u05F2\u05F3" + // 0xD0 - 0xD7
- "\u05F4\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xD8 - 0xDF
- "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7" + // 0xE0 - 0xE7
- "\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF" + // 0xE8 - 0xEF
- "\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7" + // 0xF0 - 0xF7
- "\u05E8\u05E9\u05EA\uFFFD\uFFFD\u200E\u200F\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u00A1\u00A2\u00A3\u0000\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u0000\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00AA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0083\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0088\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0098\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5" +
- "\u00C6\u00C7\u00C8\u00C9\u0000\u00CB\u00CC\u00CD" +
- "\u00CE\u00CF\u00D0\u00D1\u00D2\u00D3\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5" +
- "\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED" +
- "\u00EE\u00EF\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5" +
- "\u00F6\u00F7\u00F8\u00F9\u00FA\u0000\u0000\u0000" +
- "\u0000\u0000\u00D4\u00D5\u00D6\u00D7\u00D8\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00FD\u00FE\u0000" +
- "\u0000\u0000\u0096\u0097\u0000\u0000\u0000\u0091" +
- "\u0092\u0082\u0000\u0093\u0094\u0084\u0000\u0086" +
- "\u0087\u0095\u0000\u0000\u0000\u0085\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0089" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u008B\u009B\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00A4\u0000\u0080\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0099" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 453, 395, 395, 674, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 919, 1141, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MS1256.java b/jdk/src/share/classes/sun/nio/cs/ext/MS1256.java
deleted file mode 100644
index 3f6522580a9..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MS1256.java
+++ /dev/null
@@ -1,334 +0,0 @@
-
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MS1256
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public String historicalName() {
- return "Cp1256";
- }
-
- public MS1256() {
- super("windows-1256", ExtendedCharsets.aliasesFor("windows-1256"));
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS1256));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return MS1256.Decoder.byteToCharTable;
- }
-
- public short[] getEncoderIndex1() {
- return MS1256.Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return MS1256.Encoder.index2;
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\u067E\u201A\u0192\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\u02C6\u2030\u0679\u2039\u0152\u0686\u0698\u0688" + // 0x88 - 0x8F
- "\u06AF\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\u06A9\u2122\u0691\u203A\u0153\u200C\u200D\u06BA" + // 0x98 - 0x9F
- "\u00A0\u060C\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u06BE\u00AB\u00AC\u00AD\u00AE\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u00B9\u061B\u00BB\u00BC\u00BD\u00BE\u061F" + // 0xB8 - 0xBF
- "\u06C1\u0621\u0622\u0623\u0624\u0625\u0626\u0627" + // 0xC0 - 0xC7
- "\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F" + // 0xC8 - 0xCF
- "\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u00D7" + // 0xD0 - 0xD7
- "\u0637\u0638\u0639\u063A\u0640\u0641\u0642\u0643" + // 0xD8 - 0xDF
- "\u00E0\u0644\u00E2\u0645\u0646\u0647\u0648\u00E7" + // 0xE0 - 0xE7
- "\u00E8\u00E9\u00EA\u00EB\u0649\u064A\u00EE\u00EF" + // 0xE8 - 0xEF
- "\u064B\u064C\u064D\u064E\u00F4\u064F\u0650\u00F7" + // 0xF0 - 0xF7
- "\u0651\u00F9\u0652\u00FB\u00FC\u200E\u200F\u06D2" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u0000\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u0000\u00BB\u00BC\u00BD\u00BE\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00D7" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E0\u0000\u00E2\u0000\u0000\u0000\u0000\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u0000\u0000\u00EE\u00EF" +
- "\u0000\u0000\u0000\u0000\u00F4\u0000\u0000\u00F7" +
- "\u0000\u00F9\u0000\u00FB\u00FC\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u008C" +
- "\u009C\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0083" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0088\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00A1\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00BA\u0000\u0000\u0000\u00BF\u0000\u00C1" +
- "\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7\u00C8\u00C9" +
- "\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF\u00D0\u00D1" +
- "\u00D2\u00D3\u00D4\u00D5\u00D6\u00D8\u00D9\u00DA" +
- "\u00DB\u0000\u0000\u0000\u0000\u0000\u00DC\u00DD" +
- "\u00DE\u00DF\u00E1\u00E3\u00E4\u00E5\u00E6\u00EC" +
- "\u00ED\u00F0\u00F1\u00F2\u00F3\u00F5\u00F6\u00F8" +
- "\u00FA\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u008A" +
- "\u0000\u0000\u0000\u0000\u0081\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u008D\u0000\u008F\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u009A" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u008E\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0098" +
- "\u0000\u0000\u0000\u0000\u0000\u0090\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u00AA\u0000\u0000\u00C0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00FF\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u009D\u009E" +
- "\u00FD\u00FE\u0000\u0000\u0000\u0096\u0097\u0000" +
- "\u0000\u0000\u0091\u0092\u0082\u0000\u0093\u0094" +
- "\u0084\u0000\u0086\u0087\u0095\u0000\u0000\u0000" +
- "\u0085\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0089\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008B\u009B\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0080\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0099\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 253, 458, 400, 400, 400, 702, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 946, 1168, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MS1258.java b/jdk/src/share/classes/sun/nio/cs/ext/MS1258.java
deleted file mode 100644
index 6e8d6cca393..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MS1258.java
+++ /dev/null
@@ -1,340 +0,0 @@
-
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MS1258
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public String historicalName() {
- return "Cp1258";
- }
-
- public MS1258() {
- super("windows-1258", ExtendedCharsets.aliasesFor("windows-1258"));
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS1258));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return MS1258.Decoder.byteToCharTable;
- }
-
- public short[] getEncoderIndex1() {
- return MS1258.Encoder.index1;
- }
-
- public String getEncoderIndex2() {
- return MS1258.Encoder.index2;
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u20AC\uFFFD\u201A\u0192\u201E\u2026\u2020\u2021" + // 0x80 - 0x87
- "\u02C6\u2030\uFFFD\u2039\u0152\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\u02DC\u2122\uFFFD\u203A\u0153\uFFFD\uFFFD\u0178" + // 0x98 - 0x9F
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" + // 0xA0 - 0xA7
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" + // 0xB0 - 0xB7
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" + // 0xB8 - 0xBF
- "\u00C0\u00C1\u00C2\u0102\u00C4\u00C5\u00C6\u00C7" + // 0xC0 - 0xC7
- "\u00C8\u00C9\u00CA\u00CB\u0300\u00CD\u00CE\u00CF" + // 0xC8 - 0xCF
- "\u0110\u00D1\u0309\u00D3\u00D4\u01A0\u00D6\u00D7" + // 0xD0 - 0xD7
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u01AF\u0303\u00DF" + // 0xD8 - 0xDF
- "\u00E0\u00E1\u00E2\u0103\u00E4\u00E5\u00E6\u00E7" + // 0xE0 - 0xE7
- "\u00E8\u00E9\u00EA\u00EB\u0301\u00ED\u00EE\u00EF" + // 0xE8 - 0xEF
- "\u0111\u00F1\u0323\u00F3\u00F4\u01A1\u00F6\u00F7" + // 0xF0 - 0xF7
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u01B0\u20AB\u00FF" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u00C0\u00C1\u00C2\u0000\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u0000\u00CD\u00CE\u00CF" +
- "\u0000\u00D1\u0000\u00D3\u00D4\u0000\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u00DB\u00DC\u0000\u0000\u00DF" +
- "\u00E0\u00E1\u00E2\u0000\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u0000\u00ED\u00EE\u00EF" +
- "\u0000\u00F1\u0000\u00F3\u00F4\u0000\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u00FC\u0000\u0000\u00FF" +
- "\u0000\u0000\u00C3\u00E3\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D0\u00F0\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u008C\u009C\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u009F\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0083\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D5\u00F5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00DD" +
- "\u00FD\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0088\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0098" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00CC\u00EC\u0000\u00DE\u0000" +
- "\u0000\u0000\u0000\u0000\u00D2\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F2\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0096\u0097\u0000\u0000\u0000" +
- "\u0091\u0092\u0082\u0000\u0093\u0094\u0084\u0000" +
- "\u0086\u0087\u0095\u0000\u0000\u0000\u0085\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0089\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u008B\u009B\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00FE\u0080\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0099\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 491, 747, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 984, 1206, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MS874.java b/jdk/src/share/classes/sun/nio/cs/ext/MS874.java
deleted file mode 100644
index 70940698ee8..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MS874.java
+++ /dev/null
@@ -1,267 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-/*
- */
-
-package sun.nio.cs.ext;
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MS874 extends Charset implements HistoricallyNamedCharset
-{
- public MS874() {
- super("x-windows-874", ExtendedCharsets.aliasesFor("x-windows-874"));
- }
-
- public String historicalName() {
- return "MS874";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof MS874));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- protected static class Decoder extends SingleByteDecoder {
-
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
- "\u20AC\uFFFD\uFFFD\uFFFD\uFFFD\u2026\uFFFD\uFFFD" + // 0x80 - 0x87
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\u2018\u2019\u201C\u201D\u2022\u2013\u2014" + // 0x90 - 0x97
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x98 - 0x9F
- "\u00A0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07" + // 0xA0 - 0xA7
- "\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F" + // 0xA8 - 0xAF
- "\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17" + // 0xB0 - 0xB7
- "\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F" + // 0xB8 - 0xBF
- "\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27" + // 0xC0 - 0xC7
- "\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F" + // 0xC8 - 0xCF
- "\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37" + // 0xD0 - 0xD7
- "\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F" + // 0xD8 - 0xDF
- "\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47" + // 0xE0 - 0xE7
- "\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F" + // 0xE8 - 0xEF
- "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57" + // 0xF0 - 0xF7
- "\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- protected static class Encoder extends SingleByteEncoder {
-
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u0000\u0000\u0000\u0000\u00DF" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0096\u0097\u0000\u0000\u0000\u0091\u0092\u0000" +
- "\u0000\u0093\u0094\u0000\u0000\u0000\u0000\u0095" +
- "\u0000\u0000\u0000\u0085\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0080\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 416, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 653, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacArabic.java b/jdk/src/share/classes/sun/nio/cs/ext/MacArabic.java
deleted file mode 100644
index 7d4d4b7d471..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacArabic.java
+++ /dev/null
@@ -1,279 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacArabic
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacArabic() {
- super("x-MacArabic", ExtendedCharsets.aliasesFor("x-MacArabic"));
- }
-
- public String historicalName() {
- return "MacArabic";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacArabic);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\u00A0\u00C7\u00C9\u00D1\u00D6\u00DC\u00E1" + // 0x80 - 0x87
- "\u00E0\u00E2\u00E4\u06BA\u00AB\u00E7\u00E9\u00E8" + // 0x88 - 0x8F
- "\u00EA\u00EB\u00ED\u2026\u00EE\u00EF\u00F1\u00F3" + // 0x90 - 0x97
- "\u00BB\u00F4\u00F6\u00F7\u00FA\u00F9\u00FB\u00FC" + // 0x98 - 0x9F
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u066A\uFFFD\uFFFD" + // 0xA0 - 0xA7
- "\uFFFD\uFFFD\uFFFD\uFFFD\u060C\uFFFD\uFFFD\uFFFD" + // 0xA8 - 0xAF
- "\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667" + // 0xB0 - 0xB7
- "\u0668\u0669\uFFFD\u061B\uFFFD\uFFFD\uFFFD\u061F" + // 0xB8 - 0xBF
- "\u066D\u0621\u0622\u0623\u0624\u0625\u0626\u0627" + // 0xC0 - 0xC7
- "\u0628\u0629\u062A\u062B\u062C\u062D\u062E\u062F" + // 0xC8 - 0xCF
- "\u0630\u0631\u0632\u0633\u0634\u0635\u0636\u0637" + // 0xD0 - 0xD7
- "\u0638\u0639\u063A\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xD8 - 0xDF
- "\u0640\u0641\u0642\u0643\u0644\u0645\u0646\u0647" + // 0xE0 - 0xE7
- "\u0648\u0649\u064A\u064B\u064C\u064D\u064E\u064F" + // 0xE8 - 0xEF
- "\u0650\u0651\u0652\u067E\u0679\u0686\u06D5\u06A4" + // 0xF0 - 0xF7
- "\u06AF\u0688\u0691\uFFFD\uFFFD\uFFFD\u0698\u06D2" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0081\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008C\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0098\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0080\u0000\u0000\u0082" +
- "\u0000\u0083\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0084\u0000\u0000\u0000\u0000\u0085\u0000" +
- "\u0000\u0000\u0000\u0000\u0086\u0000\u0000\u0000" +
- "\u0088\u0087\u0089\u0000\u008A\u0000\u0000\u008D" +
- "\u008F\u008E\u0090\u0091\u0000\u0092\u0094\u0095" +
- "\u0000\u0096\u0000\u0097\u0099\u0000\u009A\u009B" +
- "\u0000\u009D\u009C\u009E\u009F\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00AC\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00BB\u0000\u0000\u0000" +
- "\u00BF\u0000\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6" +
- "\u00C7\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE" +
- "\u00CF\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6" +
- "\u00D7\u00D8\u00D9\u00DA\u0000\u0000\u0000\u0000" +
- "\u0000\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6" +
- "\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE" +
- "\u00EF\u00F0\u00F1\u00F2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6" +
- "\u00B7\u00B8\u00B9\u00A5\u0000\u0000\u00C0\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00F4\u0000\u0000\u0000\u0000\u00F3" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F5" +
- "\u0000\u00F9\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00FA\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00FE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00F8\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u008B\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00FF\u0000\u0000\u00F6\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0093\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 253, 253, 253, 253, 253, 497, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 715, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacCentralEurope.java b/jdk/src/share/classes/sun/nio/cs/ext/MacCentralEurope.java
deleted file mode 100644
index f3c1510d794..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacCentralEurope.java
+++ /dev/null
@@ -1,346 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacCentralEurope
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacCentralEurope() {
- super("x-MacCentralEurope", ExtendedCharsets.aliasesFor("x-MacCentralEurope"));
- }
-
- public String historicalName() {
- return "MacCentralEurope";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacCentralEurope);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\u0100\u0101\u00C9\u0104\u00D6\u00DC\u00E1" + // 0x80 - 0x87
- "\u0105\u010C\u00E4\u010D\u0106\u0107\u00E9\u0179" + // 0x88 - 0x8F
- "\u017A\u010E\u00ED\u010F\u0112\u0113\u0116\u00F3" + // 0x90 - 0x97
- "\u0117\u00F4\u00F6\u00F5\u00FA\u011A\u011B\u00FC" + // 0x98 - 0x9F
- "\u2020\u00B0\u0118\u00A3\u00A7\u2022\u00B6\u00DF" + // 0xA0 - 0xA7
- "\u00AE\u00A9\u2122\u0119\u00A8\u2260\u0123\u012E" + // 0xA8 - 0xAF
- "\u012F\u012A\u2264\u2265\u012B\u0136\u2202\u2211" + // 0xB0 - 0xB7
- "\u0142\u013B\u013C\u013D\u013E\u0139\u013A\u0145" + // 0xB8 - 0xBF
- "\u0146\u0143\u00AC\u221A\u0144\u0147\u2206\u00AB" + // 0xC0 - 0xC7
- "\u00BB\u2026\u00A0\u0148\u0150\u00D5\u0151\u014C" + // 0xC8 - 0xCF
- "\u2013\u2014\u201C\u201D\u2018\u2019\u00F7\u25CA" + // 0xD0 - 0xD7
- "\u014D\u0154\u0155\u0158\u2039\u203A\u0159\u0156" + // 0xD8 - 0xDF
- "\u0157\u0160\u201A\u201E\u0161\u015A\u015B\u00C1" + // 0xE0 - 0xE7
- "\u0164\u0165\u00CD\u017D\u017E\u016A\u00D3\u00D4" + // 0xE8 - 0xEF
- "\u016B\u016E\u00DA\u016F\u0170\u0171\u0172\u0173" + // 0xF0 - 0xF7
- "\u00DD\u00FD\u0137\u017B\u0141\u017C\u0122\u02C7" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u0000\u0000\u00A3\u0000\u0000\u0000\u00A4" +
- "\u00AC\u00A9\u0000\u00C7\u00C2\u0000\u00A8\u0000" +
- "\u00A1\u0000\u0000\u0000\u0000\u0000\u00A6\u0000" +
- "\u0000\u0000\u0000\u00C8\u0000\u0000\u0000\u0000" +
- "\u0000\u00E7\u0000\u0000\u0080\u0000\u0000\u0000" +
- "\u0000\u0083\u0000\u0000\u0000\u00EA\u0000\u0000" +
- "\u0000\u0000\u0000\u00EE\u00EF\u00CD\u0085\u0000" +
- "\u0000\u0000\u00F2\u0000\u0086\u00F8\u0000\u00A7" +
- "\u0000\u0087\u0000\u0000\u008A\u0000\u0000\u0000" +
- "\u0000\u008E\u0000\u0000\u0000\u0092\u0000\u0000" +
- "\u0000\u0000\u0000\u0097\u0099\u009B\u009A\u00D6" +
- "\u0000\u0000\u009C\u0000\u009F\u00F9\u0000\u0000" +
- "\u0081\u0082\u0000\u0000\u0084\u0088\u008C\u008D" +
- "\u0000\u0000\u0000\u0000\u0089\u008B\u0091\u0093" +
- "\u0000\u0000\u0094\u0095\u0000\u0000\u0096\u0098" +
- "\u00A2\u00AB\u009D\u009E\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00FE\u00AE\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00B1\u00B4\u0000\u0000\u00AF\u00B0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00B5\u00FA" +
- "\u0000\u00BD\u00BE\u00B9\u00BA\u00BB\u00BC\u0000" +
- "\u0000\u00FC\u00B8\u00C1\u00C4\u00BF\u00C0\u00C5" +
- "\u00CB\u0000\u0000\u0000\u00CF\u00D8\u0000\u0000" +
- "\u00CC\u00CE\u0000\u0000\u00D9\u00DA\u00DF\u00E0" +
- "\u00DB\u00DE\u00E5\u00E6\u0000\u0000\u0000\u0000" +
- "\u00E1\u00E4\u0000\u0000\u00E8\u00E9\u0000\u0000" +
- "\u0000\u0000\u00ED\u00F0\u0000\u0000\u00F1\u00F3" +
- "\u00F4\u00F5\u00F6\u00F7\u0000\u0000\u0000\u0000" +
- "\u0000\u008F\u0090\u00FB\u00FD\u00EB\u00EC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00FF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D0\u00D1\u0000\u0000\u0000\u00D4\u00D5\u00E2" +
- "\u0000\u00D2\u00D3\u00E3\u0000\u00A0\u0000\u00A5" +
- "\u0000\u0000\u0000\u00C9\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DC\u00DD" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00AA\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B6\u0000\u0000\u0000\u00C6" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00B7\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00C3\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00AD\u0000\u0000\u0000\u00B2\u00B3\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00D7\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 440, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 677, 899, 1153, 383, 383, 1255, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
- 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacCroatian.java b/jdk/src/share/classes/sun/nio/cs/ext/MacCroatian.java
deleted file mode 100644
index f3bd5a5bfc0..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacCroatian.java
+++ /dev/null
@@ -1,402 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacCroatian
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacCroatian() {
- super("x-MacCroatian", ExtendedCharsets.aliasesFor("x-MacCroatian"));
- }
-
- public String historicalName() {
- return "MacCroatian";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacCroatian);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\u00C5\u00C7\u00C9\u00D1\u00D6\u00DC\u00E1" + // 0x80 - 0x87
- "\u00E0\u00E2\u00E4\u00E3\u00E5\u00E7\u00E9\u00E8" + // 0x88 - 0x8F
- "\u00EA\u00EB\u00ED\u00EC\u00EE\u00EF\u00F1\u00F3" + // 0x90 - 0x97
- "\u00F2\u00F4\u00F6\u00F5\u00FA\u00F9\u00FB\u00FC" + // 0x98 - 0x9F
- "\u2020\u00B0\u00A2\u00A3\u00A7\u2022\u00B6\u00DF" + // 0xA0 - 0xA7
- "\u00AE\u0160\u2122\u00B4\u00A8\u2260\u017D\u00D8" + // 0xA8 - 0xAF
- "\u221E\u00B1\u2264\u2265\u2206\u00B5\u2202\u2211" + // 0xB0 - 0xB7
- "\u220F\u0161\u222B\u00AA\u00BA\u2126\u017E\u00F8" + // 0xB8 - 0xBF
- "\u00BF\u00A1\u00AC\u221A\u0192\u2248\u0106\u00AB" + // 0xC0 - 0xC7
- "\u010C\u2026\u00A0\u00C0\u00C3\u00D5\u0152\u0153" + // 0xC8 - 0xCF
- "\u0110\u2014\u201C\u201D\u2018\u2019\u00F7\u25CA" + // 0xD0 - 0xD7
- "\uF8FF\u00A9\u2044\u00A4\u2039\u203A\u00C6\u00BB" + // 0xD8 - 0xDF
- "\u2013\u00B7\u201A\u201E\u2030\u00C2\u0107\u00C1" + // 0xE0 - 0xE7
- "\u010D\u00C8\u00CD\u00CE\u00CF\u00CC\u00D3\u00D4" + // 0xE8 - 0xEF
- "\u0111\u00D2\u00DA\u00DB\u00D9\u0131\u02C6\u02DC" + // 0xF0 - 0xF7
- "\u00AF\u03C0\u00CB\u02DA\u00B8\u00CA\u00E6\u02C7" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u00C1\u00A2\u00A3\u00DB\u0000\u0000\u00A4" +
- "\u00AC\u00D9\u00BB\u00C7\u00C2\u0000\u00A8\u00F8" +
- "\u00A1\u00B1\u0000\u0000\u00AB\u00B5\u00A6\u00E1" +
- "\u00FC\u0000\u00BC\u00DF\u0000\u0000\u0000\u00C0" +
- "\u00CB\u00E7\u00E5\u00CC\u0080\u0081\u00DE\u0082" +
- "\u00E9\u0083\u00FD\u00FA\u00ED\u00EA\u00EB\u00EC" +
- "\u0000\u0084\u00F1\u00EE\u00EF\u00CD\u0085\u0000" +
- "\u00AF\u00F4\u00F2\u00F3\u0086\u0000\u0000\u00A7" +
- "\u0088\u0087\u0089\u008B\u008A\u008C\u00FE\u008D" +
- "\u008F\u008E\u0090\u0091\u0093\u0092\u0094\u0095" +
- "\u0000\u0096\u0098\u0097\u0099\u009B\u009A\u00D6" +
- "\u00BF\u009D\u009C\u009E\u009F\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00C6\u00E6\u0000\u0000\u0000" +
- "\u0000\u00C8\u00E8\u0000\u0000\u00D0\u00F0\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00F5\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00CE" +
- "\u00CF\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00A9\u00B9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00AE\u00BE\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00C4" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00F6\u00FF\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00FB\u0000\u00F7\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F9" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00E0" +
- "\u00D1\u0000\u0000\u0000\u00D4\u00D5\u00E2\u0000" +
- "\u00D2\u00D3\u00E3\u0000\u00A0\u0000\u00A5\u0000" +
- "\u0000\u0000\u00C9\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00E4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00DC\u00DD\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DA\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00AA\u0000\u0000\u0000" +
- "\u00BD\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00B6\u0000\u0000\u0000\u00B4\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B8" +
- "\u0000\u00B7\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C3\u0000\u0000\u0000\u00B0\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00BA\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AD\u0000\u0000\u0000\u00B2\u00B3\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D7\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D8";
-
- private final static short index1[] = {
- 0, 253, 458, 679, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 916, 1138, 1392, 400, 400, 1494, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
- 400, 400, 400, 400, 400, 400, 400, 400, 1697, 400, 400, 400, 400, 400, 400, 400,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacCyrillic.java b/jdk/src/share/classes/sun/nio/cs/ext/MacCyrillic.java
deleted file mode 100644
index 87a5148f598..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacCyrillic.java
+++ /dev/null
@@ -1,361 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacCyrillic
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacCyrillic() {
- super("x-MacCyrillic", ExtendedCharsets.aliasesFor("x-MacCyrillic"));
- }
-
- public String historicalName() {
- return "MacCyrillic";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacCyrillic);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417" + // 0x80 - 0x87
- "\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F" + // 0x88 - 0x8F
- "\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427" + // 0x90 - 0x97
- "\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F" + // 0x98 - 0x9F
- "\u2020\u00B0\u00A2\u00A3\u00A7\u2022\u00B6\u0406" + // 0xA0 - 0xA7
- "\u00AE\u00A9\u2122\u0402\u0452\u2260\u0403\u0453" + // 0xA8 - 0xAF
- "\u221E\u00B1\u2264\u2265\u0456\u00B5\u2202\u0408" + // 0xB0 - 0xB7
- "\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A" + // 0xB8 - 0xBF
- "\u0458\u0405\u00AC\u221A\u0192\u2248\u2206\u00AB" + // 0xC0 - 0xC7
- "\u00BB\u2026\u00A0\u040B\u045B\u040C\u045C\u0455" + // 0xC8 - 0xCF
- "\u2013\u2014\u201C\u201D\u2018\u2019\u00F7\u201E" + // 0xD0 - 0xD7
- "\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F" + // 0xD8 - 0xDF
- "\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437" + // 0xE0 - 0xE7
- "\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F" + // 0xE8 - 0xEF
- "\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447" + // 0xF0 - 0xF7
- "\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u00A4" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u0000\u00A2\u00A3\u00FF\u0000\u0000\u00A4" +
- "\u0000\u00A9\u0000\u00C7\u00C2\u0000\u00A8\u0000" +
- "\u00A1\u00B1\u0000\u0000\u0000\u00B5\u00A6\u0000" +
- "\u0000\u0000\u0000\u00C8\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00D6" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00DD\u00AB\u00AE\u00B8\u00C1" +
- "\u00A7\u00BA\u00B7\u00BC\u00BE\u00CB\u00CD\u0000" +
- "\u00D8\u00DA\u0080\u0081\u0082\u0083\u0084\u0085" +
- "\u0086\u0087\u0088\u0089\u008A\u008B\u008C\u008D" +
- "\u008E\u008F\u0090\u0091\u0092\u0093\u0094\u0095" +
- "\u0096\u0097\u0098\u0099\u009A\u009B\u009C\u009D" +
- "\u009E\u009F\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5" +
- "\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED" +
- "\u00EE\u00EF\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5" +
- "\u00F6\u00F7\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD" +
- "\u00FE\u00DF\u0000\u00DE\u00AC\u00AF\u00B9\u00CF" +
- "\u00B4\u00BB\u00C0\u00BD\u00BF\u00CC\u00CE\u0000" +
- "\u00D9\u00DB\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00D0\u00D1\u0000\u0000\u0000\u00D4" +
- "\u00D5\u0000\u0000\u00D2\u00D3\u00D7\u0000\u00A0" +
- "\u0000\u00A5\u0000\u0000\u0000\u00C9\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00DC" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AA\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00B6\u0000\u0000\u0000\u00C6\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C3\u0000\u0000\u0000\u00B0\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00C5" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00AD" +
- "\u0000\u0000\u0000\u00B2\u00B3\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 395, 395, 650, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 887, 1121, 1375, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacDingbat.java b/jdk/src/share/classes/sun/nio/cs/ext/MacDingbat.java
deleted file mode 100644
index f608424254b..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacDingbat.java
+++ /dev/null
@@ -1,316 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacDingbat
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacDingbat() {
- super("x-MacDingbat", ExtendedCharsets.aliasesFor("x-MacDingbat"));
- }
-
- public String historicalName() {
- return "MacDingbat";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacDingbat);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x80 - 0x87
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x90 - 0x97
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x98 - 0x9F
- "\uFFFD\u2761\u2762\u2763\u2764\u2765\u2766\u2767" + // 0xA0 - 0xA7
- "\u2663\u2666\u2665\u2660\u2460\u2461\u2462\u2463" + // 0xA8 - 0xAF
- "\u2464\u2465\u2466\u2467\u2468\u2469\u2776\u2777" + // 0xB0 - 0xB7
- "\u2778\u2779\u277A\u277B\u277C\u277D\u277E\u277F" + // 0xB8 - 0xBF
- "\u2780\u2781\u2782\u2783\u2784\u2785\u2786\u2787" + // 0xC0 - 0xC7
- "\u2788\u2789\u278A\u278B\u278C\u278D\u278E\u278F" + // 0xC8 - 0xCF
- "\u2790\u2791\u2792\u2793\u2794\u2192\u2194\u2195" + // 0xD0 - 0xD7
- "\u2798\u2799\u279A\u279B\u279C\u279D\u279E\u279F" + // 0xD8 - 0xDF
- "\u27A0\u27A1\u27A2\u27A3\u27A4\u27A5\u27A6\u27A7" + // 0xE0 - 0xE7
- "\u27A8\u27A9\u27AA\u27AB\u27AC\u27AD\u27AE\u27AF" + // 0xE8 - 0xEF
- "\uFFFD\u27B1\u27B2\u27B3\u27B4\u27B5\u27B6\u27B7" + // 0xF0 - 0xF7
- "\u27B8\u27B9\u27BA\u27BB\u27BC\u27BD\u27BE\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u2701\u2702\u2703\u2704\u260E\u2706\u2707" + // 0x20 - 0x27
- "\u2708\u2709\u261B\u261E\u270C\u270D\u270E\u270F" + // 0x28 - 0x2F
- "\u2710\u2711\u2712\u2713\u2714\u2715\u2716\u2717" + // 0x30 - 0x37
- "\u2718\u2719\u271A\u271B\u271C\u271D\u271E\u271F" + // 0x38 - 0x3F
- "\u2720\u2721\u2722\u2723\u2724\u2725\u2726\u2727" + // 0x40 - 0x47
- "\u2605\u2729\u272A\u272B\u272C\u272D\u272E\u272F" + // 0x48 - 0x4F
- "\u2730\u2731\u2732\u2733\u2734\u2735\u2736\u2737" + // 0x50 - 0x57
- "\u2738\u2739\u273A\u273B\u273C\u273D\u273E\u273F" + // 0x58 - 0x5F
- "\u2740\u2741\u2742\u2743\u2744\u2745\u2746\u2747" + // 0x60 - 0x67
- "\u2748\u2749\u274A\u274B\u25CF\u274D\u25A0\u274F" + // 0x68 - 0x6F
- "\u2750\u2751\u2752\u25B2\u25BC\u25C6\u2756\u25D7" + // 0x70 - 0x77
- "\u2758\u2759\u275A\u275B\u275C\u275D\u275E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D5\u0000\u00D6\u00D7\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AC\u00AD" +
- "\u00AE\u00AF\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u006E\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0073\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0074\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0075\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u006C" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0077" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0048\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0025\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u002A\u0000" +
- "\u0000\u002B\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AB\u0000\u0000\u00A8\u0000" +
- "\u00AA\u00A9\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0021\"\u0023\u0024\u0000" +
- "\u0026\'\u0028\u0029\u0000\u0000\u002C\u002D" +
- "\u002E\u002F\u0030\u0031\u0032\u0033\u0034\u0035" +
- "\u0036\u0037\u0038\u0039\u003A\u003B\u003C\u003D" +
- "\u003E\u003F\u0040\u0041\u0042\u0043\u0044\u0045" +
- "\u0046\u0047\u0000\u0049\u004A\u004B\u004C\u004D" +
- "\u004E\u004F\u0050\u0051\u0052\u0053\u0054\u0055" +
- "\u0056\u0057\u0058\u0059\u005A\u005B\\\u005D" +
- "\u005E\u005F\u0060\u0061\u0062\u0063\u0064\u0065" +
- "\u0066\u0067\u0068\u0069\u006A\u006B\u0000\u006D" +
- "\u0000\u006F\u0070\u0071\u0072\u0000\u0000\u0000" +
- "\u0076\u0000\u0078\u0079\u007A\u007B\u007C\u007D" +
- "\u007E\u0000\u0000\u00A1\u00A2\u00A3\u00A4\u00A5" +
- "\u00A6\u00A7\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00B6\u00B7\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD" +
- "\u00BE\u00BF\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5" +
- "\u00C6\u00C7\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD" +
- "\u00CE\u00CF\u00D0\u00D1\u00D2\u00D3\u00D4\u0000" +
- "\u0000\u0000\u00D8\u00D9\u00DA\u00DB\u00DC\u00DD" +
- "\u00DE\u00DF\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5" +
- "\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED" +
- "\u00EE\u00EF\u0000\u00F1\u00F2\u00F3\u00F4\u00F5" +
- "\u00F6\u00F7\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD" +
- "\u00FE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000";
-
- private final static short index1[] = {
- 0, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 238, 128, 128, 398, 504, 755, 1010, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
- 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacGreek.java b/jdk/src/share/classes/sun/nio/cs/ext/MacGreek.java
deleted file mode 100644
index ebf93a6387b..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacGreek.java
+++ /dev/null
@@ -1,327 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacGreek
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacGreek() {
- super("x-MacGreek", ExtendedCharsets.aliasesFor("x-MacGreek"));
- }
-
- public String historicalName() {
- return "MacGreek";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacGreek);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\u00B9\u00B2\u00C9\u00B3\u00D6\u00DC\u0385" + // 0x80 - 0x87
- "\u00E0\u00E2\u00E4\u0384\u00A8\u00E7\u00E9\u00E8" + // 0x88 - 0x8F
- "\u00EA\u00EB\u00A3\u2122\u00EE\u00EF\u2022\u00BD" + // 0x90 - 0x97
- "\u2030\u00F4\u00F6\u00A6\u00AD\u00F9\u00FB\u00FC" + // 0x98 - 0x9F
- "\u2020\u0393\u0394\u0398\u039B\u039E\u03A0\u00DF" + // 0xA0 - 0xA7
- "\u00AE\u00A9\u03A3\u03AA\u00A7\u2260\u00B0\u0387" + // 0xA8 - 0xAF
- "\u0391\u00B1\u2264\u2265\u00A5\u0392\u0395\u0396" + // 0xB0 - 0xB7
- "\u0397\u0399\u039A\u039C\u03A6\u03AB\u03A8\u03A9" + // 0xB8 - 0xBF
- "\u03AC\u039D\u00AC\u039F\u03A1\u2248\u03A4\u00AB" + // 0xC0 - 0xC7
- "\u00BB\u2026\u00A0\u03A5\u03A7\u0386\u0388\u0153" + // 0xC8 - 0xCF
- "\u2013\u2015\u201C\u201D\u2018\u2019\u00F7\u0389" + // 0xD0 - 0xD7
- "\u038A\u038C\u038E\u03AD\u03AE\u03AF\u03CC\u038F" + // 0xD8 - 0xDF
- "\u03CD\u03B1\u03B2\u03C8\u03B4\u03B5\u03C6\u03B3" + // 0xE0 - 0xE7
- "\u03B7\u03B9\u03BE\u03BA\u03BB\u03BC\u03BD\u03BF" + // 0xE8 - 0xEF
- "\u03C0\u03CE\u03C1\u03C3\u03C4\u03B8\u03C9\u03C2" + // 0xF0 - 0xF7
- "\u03C7\u03C5\u03B6\u03CA\u03CB\u0390\u03B0\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u0000\u0000\u0092\u0000\u00B4\u009B\u00AC" +
- "\u008C\u00A9\u0000\u00C7\u00C2\u009C\u00A8\u0000" +
- "\u00AE\u00B1\u0082\u0084\u0000\u0000\u0000\u0000" +
- "\u0000\u0081\u0000\u00C8\u0000\u0097\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0080\u0000\u0000\u0000" +
- "\u0000\u0083\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0085\u0000" +
- "\u0000\u0000\u0000\u0000\u0086\u0000\u0000\u00A7" +
- "\u0088\u0000\u0089\u0000\u008A\u0000\u0000\u008D" +
- "\u008F\u008E\u0090\u0091\u0000\u0000\u0094\u0095" +
- "\u0000\u0000\u0000\u0000\u0099\u0000\u009A\u00D6" +
- "\u0000\u009D\u0000\u009E\u009F\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CF\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u008B\u0087\u00CD\u00AF\u00CE\u00D7\u00D8" +
- "\u0000\u00D9\u0000\u00DA\u00DF\u00FD\u00B0\u00B5" +
- "\u00A1\u00A2\u00B6\u00B7\u00B8\u00A3\u00B9\u00BA" +
- "\u00A4\u00BB\u00C1\u00A5\u00C3\u00A6\u00C4\u0000" +
- "\u00AA\u00C6\u00CB\u00BC\u00CC\u00BE\u00BF\u00AB" +
- "\u00BD\u00C0\u00DB\u00DC\u00DD\u00FE\u00E1\u00E2" +
- "\u00E7\u00E4\u00E5\u00FA\u00E8\u00F5\u00E9\u00EB" +
- "\u00EC\u00ED\u00EE\u00EA\u00EF\u00F0\u00F2\u00F7" +
- "\u00F3\u00F4\u00F9\u00E6\u00F8\u00E3\u00F6\u00FB" +
- "\u00FC\u00DE\u00E0\u00F1\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00D0\u0000\u00D1" +
- "\u0000\u0000\u00D4\u00D5\u0000\u0000\u00D2\u00D3" +
- "\u0000\u0000\u00A0\u0000\u0096\u0000\u0000\u0000" +
- "\u00C9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0098\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0093\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AD\u0000\u0000\u0000\u00B2\u00B3\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 253, 337, 461, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 698, 920, 1104, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
- 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337, 337,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacHebrew.java b/jdk/src/share/classes/sun/nio/cs/ext/MacHebrew.java
deleted file mode 100644
index 6765157aafb..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacHebrew.java
+++ /dev/null
@@ -1,289 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacHebrew
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacHebrew() {
- super("x-MacHebrew", ExtendedCharsets.aliasesFor("x-MacHebrew"));
- }
-
- public String historicalName() {
- return "MacHebrew";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacHebrew);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\uFB1F\u00C7\u00C9\u00D1\u00D6\u00DC\u00E1" + // 0x80 - 0x87
- "\u00E0\u00E2\u00E4\u00E3\u00E5\u00E7\u00E9\u00E8" + // 0x88 - 0x8F
- "\u00EA\u00EB\u00ED\u00EC\u00EE\u00EF\u00F1\u00F3" + // 0x90 - 0x97
- "\u00F2\u00F4\u00F6\u00F5\u00FA\u00F9\u00FB\u00FC" + // 0x98 - 0x9F
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u20AA\uFFFD" + // 0xA0 - 0xA7
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xA8 - 0xAF
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xB0 - 0xB7
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xB8 - 0xBF
- "\uFFFD\u201E\uFFFD\uFFFD\uFFFD\uFFFD\u05BC\uFB4B" + // 0xC0 - 0xC7
- "\uFB35\u2026\u00A0\u05B8\u05B7\u05B5\u05B6\u05B4" + // 0xC8 - 0xCF
- "\u2013\u2014\u201C\u201D\u2018\u2019\uFB2A\uFB2B" + // 0xD0 - 0xD7
- "\u05BF\u05B0\u05B2\u05B1\u05BB\u05B9\uFFFD\u05B3" + // 0xD8 - 0xDF
- "\u05D0\u05D1\u05D2\u05D3\u05D4\u05D5\u05D6\u05D7" + // 0xE0 - 0xE7
- "\u05D8\u05D9\u05DA\u05DB\u05DC\u05DD\u05DE\u05DF" + // 0xE8 - 0xEF
- "\u05E0\u05E1\u05E2\u05E3\u05E4\u05E5\u05E6\u05E7" + // 0xF0 - 0xF7
- "\u05E8\u05E9\u05EA\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0080\u0000\u0000\u0082" +
- "\u0000\u0083\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0084\u0000\u0000\u0000\u0000\u0085\u0000" +
- "\u0000\u0000\u0000\u0000\u0086\u0000\u0000\u0000" +
- "\u0088\u0087\u0089\u008B\u008A\u008C\u0000\u008D" +
- "\u008F\u008E\u0090\u0091\u0093\u0092\u0094\u0095" +
- "\u0000\u0096\u0098\u0097\u0099\u009B\u009A\u0000" +
- "\u0000\u009D\u009C\u009E\u009F\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00D9\u00DB\u00DA" +
- "\u00DF\u00CF\u00CD\u00CE\u00CC\u00CB\u00DD\u0000" +
- "\u00DC\u00C6\u0000\u0000\u00D8\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00E0\u00E1\u00E2" +
- "\u00E3\u00E4\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA" +
- "\u00EB\u00EC\u00ED\u00EE\u00EF\u00F0\u00F1\u00F2" +
- "\u00F3\u00F4\u00F5\u00F6\u00F7\u00F8\u00F9\u00FA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00D0\u00D1\u0000" +
- "\u0000\u0000\u00D4\u00D5\u0000\u0000\u00D2\u00D3" +
- "\u00C1\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00A6\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0081\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00D6\u00D7\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C8\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00C7\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 253, 253, 253, 253, 333, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 570, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
- 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 253, 795, 253, 253, 253, 253,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacIceland.java b/jdk/src/share/classes/sun/nio/cs/ext/MacIceland.java
deleted file mode 100644
index 988a3f09833..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacIceland.java
+++ /dev/null
@@ -1,402 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacIceland
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacIceland() {
- super("x-MacIceland", ExtendedCharsets.aliasesFor("x-MacIceland"));
- }
-
- public String historicalName() {
- return "MacIceland";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacIceland);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\u00C5\u00C7\u00C9\u00D1\u00D6\u00DC\u00E1" + // 0x80 - 0x87
- "\u00E0\u00E2\u00E4\u00E3\u00E5\u00E7\u00E9\u00E8" + // 0x88 - 0x8F
- "\u00EA\u00EB\u00ED\u00EC\u00EE\u00EF\u00F1\u00F3" + // 0x90 - 0x97
- "\u00F2\u00F4\u00F6\u00F5\u00FA\u00F9\u00FB\u00FC" + // 0x98 - 0x9F
- "\u00DD\u00B0\u00A2\u00A3\u00A7\u2022\u00B6\u00DF" + // 0xA0 - 0xA7
- "\u00AE\u00A9\u2122\u00B4\u00A8\u2260\u00C6\u00D8" + // 0xA8 - 0xAF
- "\u221E\u00B1\u2264\u2265\u00A5\u00B5\u2202\u2211" + // 0xB0 - 0xB7
- "\u220F\u03C0\u222B\u00AA\u00BA\u2126\u00E6\u00F8" + // 0xB8 - 0xBF
- "\u00BF\u00A1\u00AC\u221A\u0192\u2248\u2206\u00AB" + // 0xC0 - 0xC7
- "\u00BB\u2026\u00A0\u00C0\u00C3\u00D5\u0152\u0153" + // 0xC8 - 0xCF
- "\u2013\u2014\u201C\u201D\u2018\u2019\u00F7\u25CA" + // 0xD0 - 0xD7
- "\u00FF\u0178\u2044\u00A4\u00D0\u00F0\u00DE\u00FE" + // 0xD8 - 0xDF
- "\u00FD\u00B7\u201A\u201E\u2030\u00C2\u00CA\u00C1" + // 0xE0 - 0xE7
- "\u00CB\u00C8\u00CD\u00CE\u00CF\u00CC\u00D3\u00D4" + // 0xE8 - 0xEF
- "\uF8FF\u00D2\u00DA\u00DB\u00D9\u0131\u02C6\u02DC" + // 0xF0 - 0xF7
- "\u00AF\u02D8\u02D9\u02DA\u00B8\u02DD\u02DB\u02C7" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u00C1\u00A2\u00A3\u00DB\u00B4\u0000\u00A4" +
- "\u00AC\u00A9\u00BB\u00C7\u00C2\u0000\u00A8\u00F8" +
- "\u00A1\u00B1\u0000\u0000\u00AB\u00B5\u00A6\u00E1" +
- "\u00FC\u0000\u00BC\u00C8\u0000\u0000\u0000\u00C0" +
- "\u00CB\u00E7\u00E5\u00CC\u0080\u0081\u00AE\u0082" +
- "\u00E9\u0083\u00E6\u00E8\u00ED\u00EA\u00EB\u00EC" +
- "\u00DC\u0084\u00F1\u00EE\u00EF\u00CD\u0085\u0000" +
- "\u00AF\u00F4\u00F2\u00F3\u0086\u00A0\u00DE\u00A7" +
- "\u0088\u0087\u0089\u008B\u008A\u008C\u00BE\u008D" +
- "\u008F\u008E\u0090\u0091\u0093\u0092\u0094\u0095" +
- "\u00DD\u0096\u0098\u0097\u0099\u009B\u009A\u00D6" +
- "\u00BF\u009D\u009C\u009E\u009F\u00E0\u00DF\u00D8" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CE\u00CF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F6\u00FF\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F9\u00FA\u00FB" +
- "\u00FE\u00F7\u00FD\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B9\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00D0\u00D1\u0000\u0000\u0000" +
- "\u00D4\u00D5\u00E2\u0000\u00D2\u00D3\u00E3\u0000" +
- "\u0000\u0000\u00A5\u0000\u0000\u0000\u00C9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E4\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DA\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AA\u0000\u0000\u0000\u00BD\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00B6\u0000" +
- "\u0000\u0000\u00C6\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B8\u0000\u00B7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00C3\u0000" +
- "\u0000\u0000\u00B0\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00AD\u0000\u0000\u0000" +
- "\u00B2\u00B3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00D7\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F0";
-
- private final static short index1[] = {
- 0, 256, 461, 683, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 920, 1142, 1396, 403, 403, 1498, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 1701, 403, 403, 403, 403, 403, 403, 403,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacRoman.java b/jdk/src/share/classes/sun/nio/cs/ext/MacRoman.java
deleted file mode 100644
index 8fd75a96b5e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacRoman.java
+++ /dev/null
@@ -1,434 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacRoman
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacRoman() {
- super("x-MacRoman", ExtendedCharsets.aliasesFor("x-MacRoman"));
- }
-
- public String historicalName() {
- return "MacRoman";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacRoman);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\u00C5\u00C7\u00C9\u00D1\u00D6\u00DC\u00E1" + // 0x80 - 0x87
- "\u00E0\u00E2\u00E4\u00E3\u00E5\u00E7\u00E9\u00E8" + // 0x88 - 0x8F
- "\u00EA\u00EB\u00ED\u00EC\u00EE\u00EF\u00F1\u00F3" + // 0x90 - 0x97
- "\u00F2\u00F4\u00F6\u00F5\u00FA\u00F9\u00FB\u00FC" + // 0x98 - 0x9F
- "\u2020\u00B0\u00A2\u00A3\u00A7\u2022\u00B6\u00DF" + // 0xA0 - 0xA7
- "\u00AE\u00A9\u2122\u00B4\u00A8\u2260\u00C6\u00D8" + // 0xA8 - 0xAF
- "\u221E\u00B1\u2264\u2265\u00A5\u00B5\u2202\u2211" + // 0xB0 - 0xB7
- "\u220F\u03C0\u222B\u00AA\u00BA\u03A9\u00E6\u00F8" + // 0xB8 - 0xBF
- "\u00BF\u00A1\u00AC\u221A\u0192\u2248\u2206\u00AB" + // 0xC0 - 0xC7
- "\u00BB\u2026\u00A0\u00C0\u00C3\u00D5\u0152\u0153" + // 0xC8 - 0xCF
- "\u2013\u2014\u201C\u201D\u2018\u2019\u00F7\u25CA" + // 0xD0 - 0xD7
- "\u00FF\u0178\u2044\u20AC\u2039\u203A\uFB01\uFB02" + // 0xD8 - 0xDF
- "\u2021\u00B7\u201A\u201E\u2030\u00C2\u00CA\u00C1" + // 0xE0 - 0xE7
- "\u00CB\u00C8\u00CD\u00CE\u00CF\u00CC\u00D3\u00D4" + // 0xE8 - 0xEF
- "\uF8FF\u00D2\u00DA\u00DB\u00D9\u0131\u02C6\u02DC" + // 0xF0 - 0xF7
- "\u00AF\u02D8\u02D9\u02DA\u00B8\u02DD\u02DB\u02C7" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u00C1\u00A2\u00A3\u0000\u00B4\u0000\u00A4" +
- "\u00AC\u00A9\u00BB\u00C7\u00C2\u0000\u00A8\u00F8" +
- "\u00A1\u00B1\u0000\u0000\u00AB\u00B5\u00A6\u00E1" +
- "\u00FC\u0000\u00BC\u00C8\u0000\u0000\u0000\u00C0" +
- "\u00CB\u00E7\u00E5\u00CC\u0080\u0081\u00AE\u0082" +
- "\u00E9\u0083\u00E6\u00E8\u00ED\u00EA\u00EB\u00EC" +
- "\u0000\u0084\u00F1\u00EE\u00EF\u00CD\u0085\u0000" +
- "\u00AF\u00F4\u00F2\u00F3\u0086\u0000\u0000\u00A7" +
- "\u0088\u0087\u0089\u008B\u008A\u008C\u00BE\u008D" +
- "\u008F\u008E\u0090\u0091\u0093\u0092\u0094\u0095" +
- "\u0000\u0096\u0098\u0097\u0099\u009B\u009A\u00D6" +
- "\u00BF\u009D\u009C\u009E\u009F\u0000\u0000\u00D8" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CE\u00CF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F6\u00FF\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F9\u00FA\u00FB" +
- "\u00FE\u00F7\u00FD\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00BD\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B9\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00D0\u00D1\u0000\u0000\u0000" +
- "\u00D4\u00D5\u00E2\u0000\u00D2\u00D3\u00E3\u0000" +
- "\u00A0\u00E0\u00A5\u0000\u0000\u0000\u00C9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E4\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DC\u00DD\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DA\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DB\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AA\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00B6\u0000" +
- "\u0000\u0000\u00C6\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B8\u0000\u00B7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00C3\u0000" +
- "\u0000\u0000\u00B0\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00AD\u0000\u0000\u0000" +
- "\u00B2\u00B3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00D7\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F0\u0000\u00DE\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 256, 461, 683, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 920, 1142, 1396, 403, 403, 1498, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 1701, 403, 403, 1957, 403, 403, 403, 403,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacRomania.java b/jdk/src/share/classes/sun/nio/cs/ext/MacRomania.java
deleted file mode 100644
index f5e48d8cb7e..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacRomania.java
+++ /dev/null
@@ -1,402 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacRomania
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacRomania() {
- super("x-MacRomania", ExtendedCharsets.aliasesFor("x-MacRomania"));
- }
-
- public String historicalName() {
- return "MacRomania";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacRomania);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\u00C5\u00C7\u00C9\u00D1\u00D6\u00DC\u00E1" + // 0x80 - 0x87
- "\u00E0\u00E2\u00E4\u00E3\u00E5\u00E7\u00E9\u00E8" + // 0x88 - 0x8F
- "\u00EA\u00EB\u00ED\u00EC\u00EE\u00EF\u00F1\u00F3" + // 0x90 - 0x97
- "\u00F2\u00F4\u00F6\u00F5\u00FA\u00F9\u00FB\u00FC" + // 0x98 - 0x9F
- "\u2020\u00B0\u00A2\u00A3\u00A7\u2022\u00B6\u00DF" + // 0xA0 - 0xA7
- "\u00AE\u00A9\u2122\u00B4\u00A8\u2260\u0102\u015E" + // 0xA8 - 0xAF
- "\u221E\u00B1\u2264\u2265\u00A5\u00B5\u2202\u2211" + // 0xB0 - 0xB7
- "\u220F\u03C0\u222B\u00AA\u00BA\u2126\u0103\u015F" + // 0xB8 - 0xBF
- "\u00BF\u00A1\u00AC\u221A\u0192\u2248\u2206\u00AB" + // 0xC0 - 0xC7
- "\u00BB\u2026\u00A0\u00C0\u00C3\u00D5\u0152\u0153" + // 0xC8 - 0xCF
- "\u2013\u2014\u201C\u201D\u2018\u2019\u00F7\u25CA" + // 0xD0 - 0xD7
- "\u00FF\u0178\u2044\u00A4\u2039\u203A\u0162\u0163" + // 0xD8 - 0xDF
- "\u2021\u00B7\u201A\u201E\u2030\u00C2\u00CA\u00C1" + // 0xE0 - 0xE7
- "\u00CB\u00C8\u00CD\u00CE\u00CF\u00CC\u00D3\u00D4" + // 0xE8 - 0xEF
- "\uF8FF\u00D2\u00DA\u00DB\u00D9\u0131\u02C6\u02DC" + // 0xF0 - 0xF7
- "\u00AF\u02D8\u02D9\u02DA\u00B8\u02DD\u02DB\u02C7" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u00C1\u00A2\u00A3\u00DB\u00B4\u0000\u00A4" +
- "\u00AC\u00A9\u00BB\u00C7\u00C2\u0000\u00A8\u00F8" +
- "\u00A1\u00B1\u0000\u0000\u00AB\u00B5\u00A6\u00E1" +
- "\u00FC\u0000\u00BC\u00C8\u0000\u0000\u0000\u00C0" +
- "\u00CB\u00E7\u00E5\u00CC\u0080\u0081\u0000\u0082" +
- "\u00E9\u0083\u00E6\u00E8\u00ED\u00EA\u00EB\u00EC" +
- "\u0000\u0084\u00F1\u00EE\u00EF\u00CD\u0085\u0000" +
- "\u0000\u00F4\u00F2\u00F3\u0086\u0000\u0000\u00A7" +
- "\u0088\u0087\u0089\u008B\u008A\u008C\u0000\u008D" +
- "\u008F\u008E\u0090\u0091\u0093\u0092\u0094\u0095" +
- "\u0000\u0096\u0098\u0097\u0099\u009B\u009A\u00D6" +
- "\u0000\u009D\u009C\u009E\u009F\u0000\u0000\u00D8" +
- "\u0000\u0000\u00AE\u00BE\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F5\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CE\u00CF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00AF\u00BF" +
- "\u0000\u0000\u00DE\u00DF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F6\u00FF\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F9\u00FA\u00FB" +
- "\u00FE\u00F7\u00FD\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B9\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00D0\u00D1\u0000\u0000\u0000" +
- "\u00D4\u00D5\u00E2\u0000\u00D2\u00D3\u00E3\u0000" +
- "\u00A0\u00E0\u00A5\u0000\u0000\u0000\u00C9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E4\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00DC\u00DD\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00DA\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AA\u0000\u0000\u0000\u00BD\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00B6\u0000" +
- "\u0000\u0000\u00C6\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B8\u0000\u00B7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00C3\u0000" +
- "\u0000\u0000\u00B0\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00AD\u0000\u0000\u0000" +
- "\u00B2\u00B3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00D7\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F0";
-
- private final static short index1[] = {
- 0, 256, 461, 683, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 920, 1142, 1396, 403, 403, 1498, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 1701, 403, 403, 403, 403, 403, 403, 403,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacSymbol.java b/jdk/src/share/classes/sun/nio/cs/ext/MacSymbol.java
deleted file mode 100644
index 580a53557b0..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacSymbol.java
+++ /dev/null
@@ -1,425 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacSymbol
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacSymbol() {
- super("x-MacSymbol", ExtendedCharsets.aliasesFor("x-MacSymbol"));
- }
-
- public String historicalName() {
- return "MacSymbol";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacSymbol);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x80 - 0x87
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x90 - 0x97
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x98 - 0x9F
- "\u20AC\u03D2\u2032\u2264\u2044\u221E\u0192\u2663" + // 0xA0 - 0xA7
- "\u2666\u2665\u2660\u2194\u2190\u2191\u2192\u2193" + // 0xA8 - 0xAF
- "\u00B0\u00B1\u2033\u2265\u00D7\u221D\u2202\u2022" + // 0xB0 - 0xB7
- "\u00F7\u2260\u2261\u2248\u2026\uF8E6\uF8E7\u21B5" + // 0xB8 - 0xBF
- "\u2135\u2111\u211C\u2118\u2297\u2295\u2205\u2229" + // 0xC0 - 0xC7
- "\u222A\u2283\u2287\u2284\u2282\u2286\u2208\u2209" + // 0xC8 - 0xCF
- "\u2220\u2207\u00AE\u00A9\u2122\u220F\u221A\u22C5" + // 0xD0 - 0xD7
- "\u00AC\u2227\u2228\u21D4\u21D0\u21D1\u21D2\u21D3" + // 0xD8 - 0xDF
- "\u22C4\u3008\uFFFD\uFFFD\uFFFD\u2211\uFFFD\uFFFD" + // 0xE0 - 0xE7
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uF8F4" + // 0xE8 - 0xEF
- "\uF8FF\u3009\u222B\u2320\uFFFD\u2321\uFFFD\uFFFD" + // 0xF0 - 0xF7
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\u2200\u0023\u2203\u0025\u0026\u220D" + // 0x20 - 0x27
- "\u0028\u0029\u2217\u002B\u002C\u2212\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u2245\u0391\u0392\u03A7\u0394\u0395\u03A6\u0393" + // 0x40 - 0x47
- "\u0397\u0399\u03D1\u039A\u039B\u039C\u039D\u039F" + // 0x48 - 0x4F
- "\u03A0\u0398\u03A1\u03A3\u03A4\u03A5\u03C2\u03A9" + // 0x50 - 0x57
- "\u039E\u03A8\u0396\u005B\u2234\u005D\u22A5\u005F" + // 0x58 - 0x5F
- "\uF8E5\u03B1\u03B2\u03C7\u03B4\u03B5\u03C6\u03B3" + // 0x60 - 0x67
- "\u03B7\u03B9\u03D5\u03BA\u03BB\u03BC\u03BD\u03BF" + // 0x68 - 0x6F
- "\u03C0\u03B8\u03C1\u03C3\u03C4\u03C5\u03D6\u03C9" + // 0x70 - 0x77
- "\u03BE\u03C8\u03B6\u007B\u007C\u007D\u223C\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\u0000\u0023\u0000\u0025\u0026\u0000" +
- "\u0028\u0029\u0000\u002B\u002C\u0000\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u005B\u0000\u005D\u0000\u005F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u007B\u007C\u007D\u0000\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00D3\u0000\u0000\u00D8\u0000\u00D2\u0000" +
- "\u00B0\u00B1\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B4" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B8" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00A6\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0041\u0042\u0047\u0044\u0045" +
- "\u005A\u0048\u0051\u0049\u004B\u004C\u004D\u004E" +
- "\u0058\u004F\u0050\u0052\u0000\u0053\u0054\u0055" +
- "\u0046\u0043\u0059\u0057\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0061\u0062\u0067\u0064\u0065" +
- "\u007A\u0068\u0071\u0069\u006B\u006C\u006D\u006E" +
- "\u0078\u006F\u0070\u0072\u0056\u0073\u0074\u0075" +
- "\u0066\u0063\u0079\u0077\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u004A\u00A1\u0000\u0000\u006A" +
- "\u0076\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00B7\u0000\u0000\u0000\u00BC\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00A2\u00B2\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00A4\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00A0\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00C1\u0000\u0000\u0000\u0000\u0000\u0000\u00C3" +
- "\u0000\u0000\u0000\u00C2\u0000\u0000\u0000\u0000" +
- "\u0000\u00D4\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C0\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00AC" +
- "\u00AD\u00AE\u00AF\u00AB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00BF\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00DC" +
- "\u00DD\u00DE\u00DF\u00DB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\"" +
- "\u0000\u00B6\u0024\u0000\u00C6\u0000\u00D1\u00CE" +
- "\u00CF\u0000\u0000\u0000\'\u0000\u00D5\u0000" +
- "\u00E5\u002D\u0000\u0000\u0000\u0000\u002A\u0000" +
- "\u0000\u00D6\u0000\u0000\u00B5\u00A5\u0000\u00D0" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00D9\u00DA" +
- "\u00C7\u00C8\u00F2\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\\\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u007E\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0040\u0000\u0000\u00BB" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00B9" +
- "\u00BA\u0000\u0000\u00A3\u00B3\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00CC\u00C9\u00CB\u0000\u00CD\u00CA\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u00C4\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u005E\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00E0\u00D7\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00F3" +
- "\u00F5\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00AA" +
- "\u0000\u0000\u00A7\u0000\u00A9\u00A8\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00E1" +
- "\u00F1\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0060" +
- "\u00BD\u00BE\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00EF\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00F0";
-
- private final static short index1[] = {
- 0, 248, 395, 506, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 728, 967, 1223, 1447, 395, 395, 1607, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 1855, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 1882, 395, 395, 395, 395, 395, 395, 395,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacThai.java b/jdk/src/share/classes/sun/nio/cs/ext/MacThai.java
deleted file mode 100644
index 0c82884aab0..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacThai.java
+++ /dev/null
@@ -1,338 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacThai
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacThai() {
- super("x-MacThai", ExtendedCharsets.aliasesFor("x-MacThai"));
- }
-
- public String historicalName() {
- return "MacThai";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacThai);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00AB\u00BB\u2026\uF88C\uF88F\uF892\uF895\uF898" + // 0x80 - 0x87
- "\uF88B\uF88E\uF891\uF894\uF897\u201C\u201D\uF899" + // 0x88 - 0x8F
- "\uFFFD\u2022\uF884\uF889\uF885\uF886\uF887\uF888" + // 0x90 - 0x97
- "\uF88A\uF88D\uF890\uF893\uF896\u2018\u2019\uFFFD" + // 0x98 - 0x9F
- "\u00A0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07" + // 0xA0 - 0xA7
- "\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F" + // 0xA8 - 0xAF
- "\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17" + // 0xB0 - 0xB7
- "\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F" + // 0xB8 - 0xBF
- "\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27" + // 0xC0 - 0xC7
- "\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F" + // 0xC8 - 0xCF
- "\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37" + // 0xD0 - 0xD7
- "\u0E38\u0E39\u0E3A\uFEFF\u200B\u2013\u2014\u0E3F" + // 0xD8 - 0xDF
- "\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47" + // 0xE0 - 0xE7
- "\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u2122\u0E4F" + // 0xE8 - 0xEF
- "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57" + // 0xF0 - 0xF7
- "\u0E58\u0E59\u00AE\u00A9\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00FB\u0000\u0080\u0000\u0000\u00FA\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0081\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00A1\u00A2\u00A3\u00A4" +
- "\u00A5\u00A6\u00A7\u00A8\u00A9\u00AA\u00AB\u00AC" +
- "\u00AD\u00AE\u00AF\u00B0\u00B1\u00B2\u00B3\u00B4" +
- "\u00B5\u00B6\u00B7\u00B8\u00B9\u00BA\u00BB\u00BC" +
- "\u00BD\u00BE\u00BF\u00C0\u00C1\u00C2\u00C3\u00C4" +
- "\u00C5\u00C6\u00C7\u00C8\u00C9\u00CA\u00CB\u00CC" +
- "\u00CD\u00CE\u00CF\u00D0\u00D1\u00D2\u00D3\u00D4" +
- "\u00D5\u00D6\u00D7\u00D8\u00D9\u00DA\u0000\u0000" +
- "\u0000\u0000\u00DF\u00E0\u00E1\u00E2\u00E3\u00E4" +
- "\u00E5\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC" +
- "\u00ED\u0000\u00EF\u00F0\u00F1\u00F2\u00F3\u00F4" +
- "\u00F5\u00F6\u00F7\u00F8\u00F9\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00DC\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00DD\u00DE\u0000\u0000\u0000" +
- "\u009D\u009E\u0000\u0000\u008D\u008E\u0000\u0000" +
- "\u0000\u0000\u0091\u0000\u0000\u0000\u0082\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00EE\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0092\u0094" +
- "\u0095\u0096\u0097\u0093\u0098\u0088\u0083\u0099" +
- "\u0089\u0084\u009A\u008A\u0085\u009B\u008B\u0086" +
- "\u009C\u008C\u0087\u008F\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00DB";
-
- private final static short index1[] = {
- 0, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 443, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 688, 910, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
- 188, 188, 188, 188, 188, 188, 188, 188, 1034, 188, 188, 188, 188, 188, 1188, 188,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacTurkish.java b/jdk/src/share/classes/sun/nio/cs/ext/MacTurkish.java
deleted file mode 100644
index 23fe73bc6d0..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacTurkish.java
+++ /dev/null
@@ -1,402 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacTurkish
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacTurkish() {
- super("x-MacTurkish", ExtendedCharsets.aliasesFor("x-MacTurkish"));
- }
-
- public String historicalName() {
- return "MacTurkish";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacTurkish);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u00C4\u00C5\u00C7\u00C9\u00D1\u00D6\u00DC\u00E1" + // 0x80 - 0x87
- "\u00E0\u00E2\u00E4\u00E3\u00E5\u00E7\u00E9\u00E8" + // 0x88 - 0x8F
- "\u00EA\u00EB\u00ED\u00EC\u00EE\u00EF\u00F1\u00F3" + // 0x90 - 0x97
- "\u00F2\u00F4\u00F6\u00F5\u00FA\u00F9\u00FB\u00FC" + // 0x98 - 0x9F
- "\u2020\u00B0\u00A2\u00A3\u00A7\u2022\u00B6\u00DF" + // 0xA0 - 0xA7
- "\u00AE\u00A9\u2122\u00B4\u00A8\u2260\u00C6\u00D8" + // 0xA8 - 0xAF
- "\u221E\u00B1\u2264\u2265\u00A5\u00B5\u2202\u2211" + // 0xB0 - 0xB7
- "\u220F\u03C0\u222B\u00AA\u00BA\u2126\u00E6\u00F8" + // 0xB8 - 0xBF
- "\u00BF\u00A1\u00AC\u221A\u0192\u2248\u2206\u00AB" + // 0xC0 - 0xC7
- "\u00BB\u2026\u00A0\u00C0\u00C3\u00D5\u0152\u0153" + // 0xC8 - 0xCF
- "\u2013\u2014\u201C\u201D\u2018\u2019\u00F7\u25CA" + // 0xD0 - 0xD7
- "\u00FF\u0178\u011E\u011F\u0130\u0131\u015E\u015F" + // 0xD8 - 0xDF
- "\u2021\u00B7\u201A\u201E\u2030\u00C2\u00CA\u00C1" + // 0xE0 - 0xE7
- "\u00CB\u00C8\u00CD\u00CE\u00CF\u00CC\u00D3\u00D4" + // 0xE8 - 0xEF
- "\uF8FF\u00D2\u00DA\u00DB\u00D9\uFFFD\u02C6\u02DC" + // 0xF0 - 0xF7
- "\u00AF\u02D8\u02D9\u02DA\u00B8\u02DD\u02DB\u02C7" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u00C1\u00A2\u00A3\u0000\u00B4\u0000\u00A4" +
- "\u00AC\u00A9\u00BB\u00C7\u00C2\u0000\u00A8\u00F8" +
- "\u00A1\u00B1\u0000\u0000\u00AB\u00B5\u00A6\u00E1" +
- "\u00FC\u0000\u00BC\u00C8\u0000\u0000\u0000\u00C0" +
- "\u00CB\u00E7\u00E5\u00CC\u0080\u0081\u00AE\u0082" +
- "\u00E9\u0083\u00E6\u00E8\u00ED\u00EA\u00EB\u00EC" +
- "\u0000\u0084\u00F1\u00EE\u00EF\u00CD\u0085\u0000" +
- "\u00AF\u00F4\u00F2\u00F3\u0086\u0000\u0000\u00A7" +
- "\u0088\u0087\u0089\u008B\u008A\u008C\u00BE\u008D" +
- "\u008F\u008E\u0090\u0091\u0093\u0092\u0094\u0095" +
- "\u0000\u0096\u0098\u0097\u0099\u009B\u009A\u00D6" +
- "\u00BF\u009D\u009C\u009E\u009F\u0000\u0000\u00D8" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DA\u00DB" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00DC\u00DD\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00CE\u00CF\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00DE\u00DF" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00D9\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00F6\u00FF\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00F9\u00FA\u00FB" +
- "\u00FE\u00F7\u00FD\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B9\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00D0\u00D1\u0000\u0000\u0000" +
- "\u00D4\u00D5\u00E2\u0000\u00D2\u00D3\u00E3\u0000" +
- "\u00A0\u00E0\u00A5\u0000\u0000\u0000\u00C9\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00E4\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00AA\u0000\u0000\u0000\u00BD\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00B6\u0000" +
- "\u0000\u0000\u00C6\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00B8\u0000\u00B7\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u00C3\u0000" +
- "\u0000\u0000\u00B0\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00BA" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00C5\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00AD\u0000\u0000\u0000" +
- "\u00B2\u00B3\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00D7\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u00F0";
-
- private final static short index1[] = {
- 0, 256, 461, 683, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 920, 1142, 1396, 403, 403, 1498, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
- 403, 403, 403, 403, 403, 403, 403, 403, 1701, 403, 403, 403, 403, 403, 403, 403,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/MacUkraine.java b/jdk/src/share/classes/sun/nio/cs/ext/MacUkraine.java
deleted file mode 100644
index 678c62f380f..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/MacUkraine.java
+++ /dev/null
@@ -1,361 +0,0 @@
-
-/*
- * Copyright 2003-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class MacUkraine
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public MacUkraine() {
- super("x-MacUkraine", ExtendedCharsets.aliasesFor("x-MacUkraine"));
- }
-
- public String historicalName() {
- return "MacUkraine";
- }
-
- public boolean contains(Charset cs) {
- return (cs instanceof MacUkraine);
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417" + // 0x80 - 0x87
- "\u0418\u0419\u041A\u041B\u041C\u041D\u041E\u041F" + // 0x88 - 0x8F
- "\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u0427" + // 0x90 - 0x97
- "\u0428\u0429\u042A\u042B\u042C\u042D\u042E\u042F" + // 0x98 - 0x9F
- "\u2020\u00B0\u0490\u00A3\u00A7\u2022\u00B6\u0406" + // 0xA0 - 0xA7
- "\u00AE\u00A9\u2122\u0402\u0452\u2260\u0403\u0453" + // 0xA8 - 0xAF
- "\u221E\u00B1\u2264\u2265\u0456\u00B5\u0491\u0408" + // 0xB0 - 0xB7
- "\u0404\u0454\u0407\u0457\u0409\u0459\u040A\u045A" + // 0xB8 - 0xBF
- "\u0458\u0405\u00AC\u221A\u0192\u2248\u2206\u00AB" + // 0xC0 - 0xC7
- "\u00BB\u2026\u00A0\u040B\u045B\u040C\u045C\u0455" + // 0xC8 - 0xCF
- "\u2013\u2014\u201C\u201D\u2018\u2019\u00F7\u201E" + // 0xD0 - 0xD7
- "\u040E\u045E\u040F\u045F\u2116\u0401\u0451\u044F" + // 0xD8 - 0xDF
- "\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437" + // 0xE0 - 0xE7
- "\u0438\u0439\u043A\u043B\u043C\u043D\u043E\u043F" + // 0xE8 - 0xEF
- "\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u0447" + // 0xF0 - 0xF7
- "\u0448\u0449\u044A\u044B\u044C\u044D\u044E\u00A4" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
-
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00CA\u0000\u0000\u00A3\u00FF\u0000\u0000\u00A4" +
- "\u0000\u00A9\u0000\u00C7\u00C2\u0000\u00A8\u0000" +
- "\u00A1\u00B1\u0000\u0000\u0000\u00B5\u00A6\u0000" +
- "\u0000\u0000\u0000\u00C8\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00D6" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00C4\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00DD\u00AB\u00AE\u00B8\u00C1" +
- "\u00A7\u00BA\u00B7\u00BC\u00BE\u00CB\u00CD\u0000" +
- "\u00D8\u00DA\u0080\u0081\u0082\u0083\u0084\u0085" +
- "\u0086\u0087\u0088\u0089\u008A\u008B\u008C\u008D" +
- "\u008E\u008F\u0090\u0091\u0092\u0093\u0094\u0095" +
- "\u0096\u0097\u0098\u0099\u009A\u009B\u009C\u009D" +
- "\u009E\u009F\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5" +
- "\u00E6\u00E7\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED" +
- "\u00EE\u00EF\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5" +
- "\u00F6\u00F7\u00F8\u00F9\u00FA\u00FB\u00FC\u00FD" +
- "\u00FE\u00DF\u0000\u00DE\u00AC\u00AF\u00B9\u00CF" +
- "\u00B4\u00BB\u00C0\u00BD\u00BF\u00CC\u00CE\u0000" +
- "\u00D9\u00DB\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00A2\u00B6\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u00D0\u00D1\u0000\u0000\u0000\u00D4" +
- "\u00D5\u0000\u0000\u00D2\u00D3\u00D7\u0000\u00A0" +
- "\u0000\u00A5\u0000\u0000\u0000\u00C9\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u00DC" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AA\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00C6\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u00C3\u0000\u0000" +
- "\u0000\u00B0\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00C5\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u00AD\u0000\u0000\u0000\u00B2" +
- "\u00B3\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 248, 395, 395, 650, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 887, 1121, 1371, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
- 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395, 395,
-
- };
- }
-}
diff --git a/jdk/src/share/classes/sun/nio/cs/ext/TIS_620.java b/jdk/src/share/classes/sun/nio/cs/ext/TIS_620.java
deleted file mode 100644
index 973135a98b3..00000000000
--- a/jdk/src/share/classes/sun/nio/cs/ext/TIS_620.java
+++ /dev/null
@@ -1,244 +0,0 @@
-
-/*
- * Copyright 2002-2004 Sun Microsystems, Inc. All Rights Reserved.
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * This code is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 2 only, as
- * published by the Free Software Foundation. Sun designates this
- * particular file as subject to the "Classpath" exception as provided
- * by Sun in the LICENSE file that accompanied this code.
- *
- * This code is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
- * version 2 for more details (a copy is included in the LICENSE file that
- * accompanied this code).
- *
- * You should have received a copy of the GNU General Public License version
- * 2 along with this work; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- *
- * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
- * CA 95054 USA or visit www.sun.com if you need additional information or
- * have any questions.
- */
-
-package sun.nio.cs.ext;
-
-
-import java.nio.ByteBuffer;
-import java.nio.CharBuffer;
-import java.nio.charset.Charset;
-import java.nio.charset.CharsetDecoder;
-import java.nio.charset.CharsetEncoder;
-import java.nio.charset.CharacterCodingException;
-import java.nio.charset.MalformedInputException;
-import java.nio.charset.UnmappableCharacterException;
-import sun.nio.cs.StandardCharsets;
-import sun.nio.cs.SingleByteDecoder;
-import sun.nio.cs.SingleByteEncoder;
-import sun.nio.cs.HistoricallyNamedCharset;
-
-public class TIS_620
- extends Charset
- implements HistoricallyNamedCharset
-{
-
- public TIS_620() {
- super("TIS-620", ExtendedCharsets.aliasesFor("TIS-620"));
- }
-
- public String historicalName() {
- return "TIS620";
- }
-
- public boolean contains(Charset cs) {
- return ((cs.name().equals("US-ASCII"))
- || (cs instanceof TIS_620));
- }
-
- public CharsetDecoder newDecoder() {
- return new Decoder(this);
- }
-
- public CharsetEncoder newEncoder() {
- return new Encoder(this);
- }
-
-
- /**
- * These accessors are temporarily supplied while sun.io
- * converters co-exist with the sun.nio.cs.{ext} charset coders
- * These facilitate sharing of conversion tables between the
- * two co-existing implementations. When sun.io converters
- * are made extinct these will be unncessary and should be removed
- */
-
- public String getDecoderSingleByteMappings() {
- return Decoder.byteToCharTable;
-
- }
-
- public short[] getEncoderIndex1() {
- return Encoder.index1;
-
- }
- public String getEncoderIndex2() {
- return Encoder.index2;
-
- }
-
- private static class Decoder extends SingleByteDecoder {
- public Decoder(Charset cs) {
- super(cs, byteToCharTable);
- }
-
- private final static String byteToCharTable =
-
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x80 - 0x87
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x88 - 0x8F
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x90 - 0x97
- "\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD" + // 0x98 - 0x9F
- "\u00A0\u0E01\u0E02\u0E03\u0E04\u0E05\u0E06\u0E07" + // 0xA0 - 0xA7
- "\u0E08\u0E09\u0E0A\u0E0B\u0E0C\u0E0D\u0E0E\u0E0F" + // 0xA8 - 0xAF
- "\u0E10\u0E11\u0E12\u0E13\u0E14\u0E15\u0E16\u0E17" + // 0xB0 - 0xB7
- "\u0E18\u0E19\u0E1A\u0E1B\u0E1C\u0E1D\u0E1E\u0E1F" + // 0xB8 - 0xBF
- "\u0E20\u0E21\u0E22\u0E23\u0E24\u0E25\u0E26\u0E27" + // 0xC0 - 0xC7
- "\u0E28\u0E29\u0E2A\u0E2B\u0E2C\u0E2D\u0E2E\u0E2F" + // 0xC8 - 0xCF
- "\u0E30\u0E31\u0E32\u0E33\u0E34\u0E35\u0E36\u0E37" + // 0xD0 - 0xD7
- "\u0E38\u0E39\u0E3A\uFFFD\uFFFD\uFFFD\uFFFD\u0E3F" + // 0xD8 - 0xDF
- "\u0E40\u0E41\u0E42\u0E43\u0E44\u0E45\u0E46\u0E47" + // 0xE0 - 0xE7
- "\u0E48\u0E49\u0E4A\u0E4B\u0E4C\u0E4D\u0E4E\u0E4F" + // 0xE8 - 0xEF
- "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57" + // 0xF0 - 0xF7
- "\u0E58\u0E59\u0E5A\u0E5B\uFFFD\uFFFD\uFFFD\uFFFD" + // 0xF8 - 0xFF
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" + // 0x00 - 0x07
- "\b\t\n\u000B\f\r\u000E\u000F" + // 0x08 - 0x0F
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" + // 0x10 - 0x17
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" + // 0x18 - 0x1F
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" + // 0x20 - 0x27
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" + // 0x28 - 0x2F
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" + // 0x30 - 0x37
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" + // 0x38 - 0x3F
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" + // 0x40 - 0x47
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" + // 0x48 - 0x4F
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" + // 0x50 - 0x57
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" + // 0x58 - 0x5F
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" + // 0x60 - 0x67
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" + // 0x68 - 0x6F
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" + // 0x70 - 0x77
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F"; // 0x78 - 0x7F
- }
-
- private static class Encoder extends SingleByteEncoder {
- public Encoder(Charset cs) {
- super(cs, index1, index2, 0xFF00, 0x00FF, 8);
- }
-
- private final static String index2 =
-
- "\u0000\u0001\u0002\u0003\u0004\u0005\u0006\u0007" +
- "\b\t\n\u000B\f\r\u000E\u000F" +
- "\u0010\u0011\u0012\u0013\u0014\u0015\u0016\u0017" +
- "\u0018\u0019\u001A\u001B\u001C\u001D\u001E\u001F" +
- "\u0020\u0021\"\u0023\u0024\u0025\u0026\'" +
- "\u0028\u0029\u002A\u002B\u002C\u002D\u002E\u002F" +
- "\u0030\u0031\u0032\u0033\u0034\u0035\u0036\u0037" +
- "\u0038\u0039\u003A\u003B\u003C\u003D\u003E\u003F" +
- "\u0040\u0041\u0042\u0043\u0044\u0045\u0046\u0047" +
- "\u0048\u0049\u004A\u004B\u004C\u004D\u004E\u004F" +
- "\u0050\u0051\u0052\u0053\u0054\u0055\u0056\u0057" +
- "\u0058\u0059\u005A\u005B\\\u005D\u005E\u005F" +
- "\u0060\u0061\u0062\u0063\u0064\u0065\u0066\u0067" +
- "\u0068\u0069\u006A\u006B\u006C\u006D\u006E\u006F" +
- "\u0070\u0071\u0072\u0073\u0074\u0075\u0076\u0077" +
- "\u0078\u0079\u007A\u007B\u007C\u007D\u007E\u007F" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u00A0\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u00A1\u00A2\u00A3\u00A4\u00A5\u00A6\u00A7" +
- "\u00A8\u00A9\u00AA\u00AB\u00AC\u00AD\u00AE\u00AF" +
- "\u00B0\u00B1\u00B2\u00B3\u00B4\u00B5\u00B6\u00B7" +
- "\u00B8\u00B9\u00BA\u00BB\u00BC\u00BD\u00BE\u00BF" +
- "\u00C0\u00C1\u00C2\u00C3\u00C4\u00C5\u00C6\u00C7" +
- "\u00C8\u00C9\u00CA\u00CB\u00CC\u00CD\u00CE\u00CF" +
- "\u00D0\u00D1\u00D2\u00D3\u00D4\u00D5\u00D6\u00D7" +
- "\u00D8\u00D9\u00DA\u0000\u0000\u0000\u0000\u00DF" +
- "\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5\u00E6\u00E7" +
- "\u00E8\u00E9\u00EA\u00EB\u00EC\u00ED\u00EE\u00EF" +
- "\u00F0\u00F1\u00F2\u00F3\u00F4\u00F5\u00F6\u00F7" +
- "\u00F8\u00F9\u00FA\u00FB\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000" +
- "\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000";
-
- private final static short index1[] = {
- 0, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 416, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, 161,
- };
- }
-}
From e0d2bfab81e2b9c577c6989ded28d8f1ee0784c1 Mon Sep 17 00:00:00 2001
From: Coleen Phillimore
Date: Wed, 10 Dec 2008 15:14:29 -0800
Subject: [PATCH 48/68] 6727377: VM stack guard pages on Windows should
PAGE_READWRITE not PAGE_EXECUTE_READWRITE
Make reguard_stack change access to RW, not execute and use os::protect_memory with the new parameter when change needed to X.
Reviewed-by: acorn, jcoomes
---
hotspot/src/os/linux/vm/os_linux.cpp | 2 +-
hotspot/src/os/solaris/vm/os_solaris.cpp | 4 +++-
hotspot/src/os/windows/vm/os_windows.cpp | 9 +++++----
hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp | 5 +++--
hotspot/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp | 5 +++--
hotspot/src/share/vm/prims/jni.cpp | 3 ++-
hotspot/src/share/vm/runtime/os.cpp | 5 +++--
hotspot/src/share/vm/runtime/os.hpp | 2 +-
8 files changed, 21 insertions(+), 14 deletions(-)
diff --git a/hotspot/src/os/linux/vm/os_linux.cpp b/hotspot/src/os/linux/vm/os_linux.cpp
index 6331bf4aca5..3b8c0b4dc03 100644
--- a/hotspot/src/os/linux/vm/os_linux.cpp
+++ b/hotspot/src/os/linux/vm/os_linux.cpp
@@ -2500,7 +2500,7 @@ bool os::guard_memory(char* addr, size_t size) {
}
bool os::unguard_memory(char* addr, size_t size) {
- return linux_mprotect(addr, size, PROT_READ|PROT_WRITE|PROT_EXEC);
+ return linux_mprotect(addr, size, PROT_READ|PROT_WRITE);
}
// Large page support
diff --git a/hotspot/src/os/solaris/vm/os_solaris.cpp b/hotspot/src/os/solaris/vm/os_solaris.cpp
index 7225f3be425..8553c1edee2 100644
--- a/hotspot/src/os/solaris/vm/os_solaris.cpp
+++ b/hotspot/src/os/solaris/vm/os_solaris.cpp
@@ -3026,6 +3026,8 @@ static bool solaris_mprotect(char* addr, size_t bytes, int prot) {
// Protect memory (Used to pass readonly pages through
// JNI GetArrayElements with empty arrays.)
+// Also, used for serialization page and for compressed oops null pointer
+// checking.
bool os::protect_memory(char* addr, size_t bytes, ProtType prot,
bool is_committed) {
unsigned int p = 0;
@@ -3049,7 +3051,7 @@ bool os::guard_memory(char* addr, size_t bytes) {
}
bool os::unguard_memory(char* addr, size_t bytes) {
- return solaris_mprotect(addr, bytes, PROT_READ|PROT_WRITE|PROT_EXEC);
+ return solaris_mprotect(addr, bytes, PROT_READ|PROT_WRITE);
}
// Large page support
diff --git a/hotspot/src/os/windows/vm/os_windows.cpp b/hotspot/src/os/windows/vm/os_windows.cpp
index 97228370b9f..d674d434b90 100644
--- a/hotspot/src/os/windows/vm/os_windows.cpp
+++ b/hotspot/src/os/windows/vm/os_windows.cpp
@@ -2020,10 +2020,11 @@ LONG WINAPI topLevelExceptionFilter(struct _EXCEPTION_POINTERS* exceptionInfo) {
if (UnguardOnExecutionViolation > 0 && addr != last_addr &&
(UnguardOnExecutionViolation > 1 || os::address_is_in_vm(addr))) {
- // Unguard and retry
+ // Set memory to RWX and retry
address page_start =
(address) align_size_down((intptr_t) addr, (intptr_t) page_size);
- bool res = os::unguard_memory((char*) page_start, page_size);
+ bool res = os::protect_memory((char*) page_start, page_size,
+ os::MEM_PROT_RWX);
if (PrintMiscellaneous && Verbose) {
char buf[256];
@@ -2755,12 +2756,12 @@ bool os::protect_memory(char* addr, size_t bytes, ProtType prot,
bool os::guard_memory(char* addr, size_t bytes) {
DWORD old_status;
- return VirtualProtect(addr, bytes, PAGE_EXECUTE_READWRITE | PAGE_GUARD, &old_status) != 0;
+ return VirtualProtect(addr, bytes, PAGE_READWRITE | PAGE_GUARD, &old_status) != 0;
}
bool os::unguard_memory(char* addr, size_t bytes) {
DWORD old_status;
- return VirtualProtect(addr, bytes, PAGE_EXECUTE_READWRITE, &old_status) != 0;
+ return VirtualProtect(addr, bytes, PAGE_READWRITE, &old_status) != 0;
}
void os::realign_memory(char *addr, size_t bytes, size_t alignment_hint) { }
diff --git a/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp b/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
index 174c1df492e..90e1921f8a0 100644
--- a/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
+++ b/hotspot/src/os_cpu/linux_x86/vm/os_linux_x86.cpp
@@ -422,10 +422,11 @@ JVM_handle_linux_signal(int sig,
if (addr != last_addr &&
(UnguardOnExecutionViolation > 1 || os::address_is_in_vm(addr))) {
- // Unguard and retry
+ // Set memory to RWX and retry
address page_start =
(address) align_size_down((intptr_t) addr, (intptr_t) page_size);
- bool res = os::unguard_memory((char*) page_start, page_size);
+ bool res = os::protect_memory((char*) page_start, page_size,
+ os::MEM_PROT_RWX);
if (PrintMiscellaneous && Verbose) {
char buf[256];
diff --git a/hotspot/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp b/hotspot/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp
index 011b671e850..c37370b572b 100644
--- a/hotspot/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp
+++ b/hotspot/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp
@@ -576,10 +576,11 @@ int JVM_handle_solaris_signal(int sig, siginfo_t* info, void* ucVoid, int abort_
if (addr != last_addr &&
(UnguardOnExecutionViolation > 1 || os::address_is_in_vm(addr))) {
- // Unguard and retry
+ // Make memory rwx and retry
address page_start =
(address) align_size_down((intptr_t) addr, (intptr_t) page_size);
- bool res = os::unguard_memory((char*) page_start, page_size);
+ bool res = os::protect_memory((char*) page_start, page_size,
+ os::MEM_PROT_RWX);
if (PrintMiscellaneous && Verbose) {
char buf[256];
diff --git a/hotspot/src/share/vm/prims/jni.cpp b/hotspot/src/share/vm/prims/jni.cpp
index 49ace5c9823..b4a82b9e547 100644
--- a/hotspot/src/share/vm/prims/jni.cpp
+++ b/hotspot/src/share/vm/prims/jni.cpp
@@ -2173,7 +2173,8 @@ static char* get_bad_address() {
size_t size = os::vm_allocation_granularity();
bad_address = os::reserve_memory(size);
if (bad_address != NULL) {
- os::protect_memory(bad_address, size, os::MEM_PROT_READ);
+ os::protect_memory(bad_address, size, os::MEM_PROT_READ,
+ /*is_committed*/false);
}
}
return bad_address;
diff --git a/hotspot/src/share/vm/runtime/os.cpp b/hotspot/src/share/vm/runtime/os.cpp
index 088a07ff45e..da6d719edc0 100644
--- a/hotspot/src/share/vm/runtime/os.cpp
+++ b/hotspot/src/share/vm/runtime/os.cpp
@@ -932,8 +932,9 @@ void os::serialize_thread_states() {
// the mutator thread if such case is encountered. See bug 6546278 for details.
Thread::muxAcquire(&SerializePageLock, "serialize_thread_states");
os::protect_memory((char *)os::get_memory_serialize_page(),
- os::vm_page_size(), MEM_PROT_READ, /*is_committed*/true );
- os::unguard_memory((char *)os::get_memory_serialize_page(), os::vm_page_size());
+ os::vm_page_size(), MEM_PROT_READ);
+ os::protect_memory((char *)os::get_memory_serialize_page(),
+ os::vm_page_size(), MEM_PROT_RW);
Thread::muxRelease(&SerializePageLock);
}
diff --git a/hotspot/src/share/vm/runtime/os.hpp b/hotspot/src/share/vm/runtime/os.hpp
index 423cc800529..0856d23a03b 100644
--- a/hotspot/src/share/vm/runtime/os.hpp
+++ b/hotspot/src/share/vm/runtime/os.hpp
@@ -208,7 +208,7 @@ class os: AllStatic {
enum ProtType { MEM_PROT_NONE, MEM_PROT_READ, MEM_PROT_RW, MEM_PROT_RWX };
static bool protect_memory(char* addr, size_t bytes, ProtType prot,
- bool is_committed = false);
+ bool is_committed = true);
static bool guard_memory(char* addr, size_t bytes);
static bool unguard_memory(char* addr, size_t bytes);
From 26f6b1692ac681f0cd0aa081531f6264cbee7717 Mon Sep 17 00:00:00 2001
From: "Y. Srinivas Ramakrishna"
Date: Wed, 10 Dec 2008 23:46:10 -0800
Subject: [PATCH 49/68] 6782457: CMS: Livelock in
CompactibleFreeListSpace::block_size() 6736295: SIGSEGV in product jvm,
assertion "these are the only valid states during a mark sweep" in fastdebug
Restructured the code in the perm gen allocation retry loop so as to avoid "safepoint-blocking" on locks, in this case the Heap_lock, while holding uninitialized allocated heap storage.
Reviewed-by: apetrusenko, iveresov, jcoomes, jmasa, poonam
---
hotspot/src/share/vm/memory/permGen.cpp | 64 ++++++++++++-------------
1 file changed, 32 insertions(+), 32 deletions(-)
diff --git a/hotspot/src/share/vm/memory/permGen.cpp b/hotspot/src/share/vm/memory/permGen.cpp
index e31c19c80ed..65635fe26cf 100644
--- a/hotspot/src/share/vm/memory/permGen.cpp
+++ b/hotspot/src/share/vm/memory/permGen.cpp
@@ -26,20 +26,24 @@
#include "incls/_permGen.cpp.incl"
HeapWord* PermGen::mem_allocate_in_gen(size_t size, Generation* gen) {
- MutexLocker ml(Heap_lock);
GCCause::Cause next_cause = GCCause::_permanent_generation_full;
GCCause::Cause prev_cause = GCCause::_no_gc;
+ unsigned int gc_count_before, full_gc_count_before;
+ HeapWord* obj;
for (;;) {
- HeapWord* obj = gen->allocate(size, false);
- if (obj != NULL) {
- return obj;
- }
- if (gen->capacity() < _capacity_expansion_limit ||
- prev_cause != GCCause::_no_gc) {
- obj = gen->expand_and_allocate(size, false);
- }
- if (obj == NULL && prev_cause != GCCause::_last_ditch_collection) {
+ {
+ MutexLocker ml(Heap_lock);
+ if ((obj = gen->allocate(size, false)) != NULL) {
+ return obj;
+ }
+ if (gen->capacity() < _capacity_expansion_limit ||
+ prev_cause != GCCause::_no_gc) {
+ obj = gen->expand_and_allocate(size, false);
+ }
+ if (obj != NULL || prev_cause == GCCause::_last_ditch_collection) {
+ return obj;
+ }
if (GC_locker::is_active_and_needs_gc()) {
// If this thread is not in a jni critical section, we stall
// the requestor until the critical section has cleared and
@@ -61,31 +65,27 @@ HeapWord* PermGen::mem_allocate_in_gen(size_t size, Generation* gen) {
return NULL;
}
}
-
// Read the GC count while holding the Heap_lock
- unsigned int gc_count_before = SharedHeap::heap()->total_collections();
- unsigned int full_gc_count_before = SharedHeap::heap()->total_full_collections();
- {
- MutexUnlocker mu(Heap_lock); // give up heap lock, execute gets it back
- VM_GenCollectForPermanentAllocation op(size, gc_count_before, full_gc_count_before,
- next_cause);
- VMThread::execute(&op);
- if (!op.prologue_succeeded() || op.gc_locked()) {
- assert(op.result() == NULL, "must be NULL if gc_locked() is true");
- continue; // retry and/or stall as necessary
- }
- obj = op.result();
- assert(obj == NULL || SharedHeap::heap()->is_in_reserved(obj),
- "result not in heap");
- if (obj != NULL) {
- return obj;
- }
- }
- prev_cause = next_cause;
- next_cause = GCCause::_last_ditch_collection;
- } else {
+ gc_count_before = SharedHeap::heap()->total_collections();
+ full_gc_count_before = SharedHeap::heap()->total_full_collections();
+ }
+
+ // Give up heap lock above, VMThread::execute below gets it back
+ VM_GenCollectForPermanentAllocation op(size, gc_count_before, full_gc_count_before,
+ next_cause);
+ VMThread::execute(&op);
+ if (!op.prologue_succeeded() || op.gc_locked()) {
+ assert(op.result() == NULL, "must be NULL if gc_locked() is true");
+ continue; // retry and/or stall as necessary
+ }
+ obj = op.result();
+ assert(obj == NULL || SharedHeap::heap()->is_in_reserved(obj),
+ "result not in heap");
+ if (obj != NULL) {
return obj;
}
+ prev_cause = next_cause;
+ next_cause = GCCause::_last_ditch_collection;
}
}
From 92ea783f35496b7c68282155f805c126749cff25 Mon Sep 17 00:00:00 2001
From: Lev Serebryakov
Date: Thu, 11 Dec 2008 03:22:04 -0800
Subject: [PATCH 50/68] 6639341: sometimes contended-exit event comes after
contended-entered on another thread
DTrace probe "contended-exit" should be fired before unparking object, or context could be lost. Probe firing was moved to proper place.
Reviewed-by: coleenp, kamg
---
hotspot/src/share/vm/runtime/synchronizer.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hotspot/src/share/vm/runtime/synchronizer.cpp b/hotspot/src/share/vm/runtime/synchronizer.cpp
index eb4e2cac0c4..aeb66980add 100644
--- a/hotspot/src/share/vm/runtime/synchronizer.cpp
+++ b/hotspot/src/share/vm/runtime/synchronizer.cpp
@@ -3363,13 +3363,13 @@ void ObjectMonitor::ExitEpilog (Thread * Self, ObjectWaiter * Wakee) {
// If the wakee is cold then transiently setting it's affinity
// to the current CPU is a good idea.
// See http://j2se.east/~dice/PERSIST/050624-PullAffinity.txt
+ DTRACE_MONITOR_PROBE(contended__exit, this, object(), Self);
Trigger->unpark() ;
// Maintain stats and report events to JVMTI
if (ObjectSynchronizer::_sync_Parks != NULL) {
ObjectSynchronizer::_sync_Parks->inc() ;
}
- DTRACE_MONITOR_PROBE(contended__exit, this, object(), Self);
}
From 000b18450778c44e737202f129264f3177be3fbd Mon Sep 17 00:00:00 2001
From: John Coomes
Date: Thu, 11 Dec 2008 12:05:08 -0800
Subject: [PATCH 51/68] 6578152: fill_region_with_object has usability and
safety issues
Reviewed-by: apetrusenko, ysr
---
.../gc_implementation/g1/g1CollectedHeap.cpp | 9 +-
.../vm/gc_implementation/g1/heapRegionSeq.cpp | 2 +-
.../parNew/parGCAllocBuffer.cpp | 16 ++-
.../parNew/parNewGeneration.cpp | 2 +-
.../parallelScavenge/psMarkSweep.cpp | 23 ++--
.../parallelScavenge/psMarkSweepDecorator.cpp | 19 +---
.../parallelScavenge/psParallelCompact.cpp | 19 ++--
.../parallelScavenge/psParallelCompact.hpp | 31 +++--
.../parallelScavenge/psPromotionManager.cpp | 23 +---
.../shared/mutableNUMASpace.cpp | 12 +-
.../share/vm/gc_interface/collectedHeap.cpp | 106 +++++++++++++++++-
.../share/vm/gc_interface/collectedHeap.hpp | 39 +++++++
.../vm/gc_interface/collectedHeap.inline.hpp | 7 +-
hotspot/src/share/vm/includeDB_gc | 7 +-
hotspot/src/share/vm/memory/sharedHeap.cpp | 40 -------
hotspot/src/share/vm/memory/sharedHeap.hpp | 8 --
hotspot/src/share/vm/memory/space.cpp | 16 +--
.../src/share/vm/memory/tenuredGeneration.cpp | 2 +-
.../vm/memory/threadLocalAllocBuffer.cpp | 3 +-
hotspot/src/share/vm/memory/universe.cpp | 33 +++---
hotspot/src/share/vm/memory/universe.hpp | 3 +
hotspot/src/share/vm/oops/arrayOop.hpp | 23 ++--
hotspot/src/share/vm/oops/typeArrayKlass.cpp | 7 +-
hotspot/src/share/vm/oops/typeArrayKlass.hpp | 6 +-
hotspot/src/share/vm/runtime/globals.hpp | 3 +
25 files changed, 261 insertions(+), 198 deletions(-)
diff --git a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
index f0cad8ed231..47bff6cca98 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp
@@ -2954,7 +2954,7 @@ public:
// The object has been either evacuated or is dead. Fill it with a
// dummy object.
MemRegion mr((HeapWord*)obj, obj->size());
- SharedHeap::fill_region_with_object(mr);
+ CollectedHeap::fill_with_object(mr);
_cm->clearRangeBothMaps(mr);
}
}
@@ -3225,7 +3225,7 @@ void G1CollectedHeap::par_allocate_remaining_space(HeapRegion* r) {
// Otherwise, try to claim it.
block = r->par_allocate(free_words);
} while (block == NULL);
- SharedHeap::fill_region_with_object(MemRegion(block, free_words));
+ fill_with_object(block, free_words);
}
#define use_local_bitmaps 1
@@ -3619,9 +3619,8 @@ public:
guarantee(alloc_buffer(purpose)->contains(obj + word_sz - 1),
"should contain whole object");
alloc_buffer(purpose)->undo_allocation(obj, word_sz);
- }
- else {
- SharedHeap::fill_region_with_object(MemRegion(obj, word_sz));
+ } else {
+ CollectedHeap::fill_with_object(obj, word_sz);
add_to_undo_waste(word_sz);
}
}
diff --git a/hotspot/src/share/vm/gc_implementation/g1/heapRegionSeq.cpp b/hotspot/src/share/vm/gc_implementation/g1/heapRegionSeq.cpp
index 315e4a351b3..b3de279e402 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegionSeq.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegionSeq.cpp
@@ -102,7 +102,7 @@ HeapRegionSeq::alloc_obj_from_region_index(int ind, size_t word_size) {
HeapWord* tmp = hr->allocate(sz);
assert(tmp != NULL, "Humongous allocation failure");
MemRegion mr = MemRegion(tmp, sz);
- SharedHeap::fill_region_with_object(mr);
+ CollectedHeap::fill_with_object(mr);
hr->declare_filled_region_to_BOT(mr);
if (i == first) {
first_hr->set_startsHumongous();
diff --git a/hotspot/src/share/vm/gc_implementation/parNew/parGCAllocBuffer.cpp b/hotspot/src/share/vm/gc_implementation/parNew/parGCAllocBuffer.cpp
index d4c641bf028..e2d0ebd701f 100644
--- a/hotspot/src/share/vm/gc_implementation/parNew/parGCAllocBuffer.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parGCAllocBuffer.cpp
@@ -51,14 +51,14 @@ void ParGCAllocBuffer::retire(bool end_of_gc, bool retain) {
if (_retained) {
// If the buffer had been retained shorten the previous filler object.
assert(_retained_filler.end() <= _top, "INVARIANT");
- SharedHeap::fill_region_with_object(_retained_filler);
+ CollectedHeap::fill_with_object(_retained_filler);
// Wasted space book-keeping, otherwise (normally) done in invalidate()
_wasted += _retained_filler.word_size();
_retained = false;
}
assert(!end_of_gc || !_retained, "At this point, end_of_gc ==> !_retained.");
if (_top < _hard_end) {
- SharedHeap::fill_region_with_object(MemRegion(_top, _hard_end));
+ CollectedHeap::fill_with_object(_top, _hard_end);
if (!retain) {
invalidate();
} else {
@@ -155,7 +155,7 @@ ParGCAllocBufferWithBOT::ParGCAllocBufferWithBOT(size_t word_sz,
// modifying the _next_threshold state in the BOT.
void ParGCAllocBufferWithBOT::fill_region_with_block(MemRegion mr,
bool contig) {
- SharedHeap::fill_region_with_object(mr);
+ CollectedHeap::fill_with_object(mr);
if (contig) {
_bt.alloc_block(mr.start(), mr.end());
} else {
@@ -171,7 +171,7 @@ HeapWord* ParGCAllocBufferWithBOT::allocate_slow(size_t word_sz) {
"or else _true_end should be equal to _hard_end");
assert(_retained, "or else _true_end should be equal to _hard_end");
assert(_retained_filler.end() <= _top, "INVARIANT");
- SharedHeap::fill_region_with_object(_retained_filler);
+ CollectedHeap::fill_with_object(_retained_filler);
if (_top < _hard_end) {
fill_region_with_block(MemRegion(_top, _hard_end), true);
}
@@ -316,11 +316,9 @@ void ParGCAllocBufferWithBOT::retire(bool end_of_gc, bool retain) {
while (_top <= chunk_boundary) {
assert(pointer_delta(_hard_end, chunk_boundary) >= AlignmentReserve,
"Consequence of last card handling above.");
- MemRegion chunk_portion(chunk_boundary, _hard_end);
- _bt.BlockOffsetArray::alloc_block(chunk_portion.start(),
- chunk_portion.end());
- SharedHeap::fill_region_with_object(chunk_portion);
- _hard_end = chunk_portion.start();
+ _bt.BlockOffsetArray::alloc_block(chunk_boundary, _hard_end);
+ CollectedHeap::fill_with_object(chunk_boundary, _hard_end);
+ _hard_end = chunk_boundary;
chunk_boundary -= ChunkSizeInWords;
}
_end = _hard_end - AlignmentReserve;
diff --git a/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp b/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
index 72907679905..a2b7607bb79 100644
--- a/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parNew/parNewGeneration.cpp
@@ -201,7 +201,7 @@ void ParScanThreadState::undo_alloc_in_to_space(HeapWord* obj,
"Should contain whole object.");
to_space_alloc_buffer()->undo_allocation(obj, word_sz);
} else {
- SharedHeap::fill_region_with_object(MemRegion(obj, word_sz));
+ CollectedHeap::fill_with_object(obj, word_sz);
}
}
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp
index ea0c20b0148..829403f5128 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp
@@ -389,7 +389,7 @@ bool PSMarkSweep::absorb_live_data_from_eden(PSAdaptiveSizePolicy* size_policy,
// full GC.
const size_t alignment = old_gen->virtual_space()->alignment();
const size_t eden_used = eden_space->used_in_bytes();
- const size_t promoted = (size_t)(size_policy->avg_promoted()->padded_average());
+ const size_t promoted = (size_t)size_policy->avg_promoted()->padded_average();
const size_t absorb_size = align_size_up(eden_used + promoted, alignment);
const size_t eden_capacity = eden_space->capacity_in_bytes();
@@ -416,16 +416,14 @@ bool PSMarkSweep::absorb_live_data_from_eden(PSAdaptiveSizePolicy* size_policy,
// Fill the unused part of the old gen.
MutableSpace* const old_space = old_gen->object_space();
- MemRegion old_gen_unused(old_space->top(), old_space->end());
+ HeapWord* const unused_start = old_space->top();
+ size_t const unused_words = pointer_delta(old_space->end(), unused_start);
- // If the unused part of the old gen cannot be filled, skip
- // absorbing eden.
- if (old_gen_unused.word_size() < SharedHeap::min_fill_size()) {
- return false;
- }
-
- if (!old_gen_unused.is_empty()) {
- SharedHeap::fill_region_with_object(old_gen_unused);
+ if (unused_words > 0) {
+ if (unused_words < CollectedHeap::min_fill_size()) {
+ return false; // If the old gen cannot be filled, must give up.
+ }
+ CollectedHeap::fill_with_objects(unused_start, unused_words);
}
// Take the live data from eden and set both top and end in the old gen to
@@ -441,9 +439,8 @@ bool PSMarkSweep::absorb_live_data_from_eden(PSAdaptiveSizePolicy* size_policy,
// Update the object start array for the filler object and the data from eden.
ObjectStartArray* const start_array = old_gen->start_array();
- HeapWord* const start = old_gen_unused.start();
- for (HeapWord* addr = start; addr < new_top; addr += oop(addr)->size()) {
- start_array->allocate_block(addr);
+ for (HeapWord* p = unused_start; p < new_top; p += oop(p)->size()) {
+ start_array->allocate_block(p);
}
// Could update the promoted average here, but it is not typically updated at
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp
index 310ad40d1b7..4cc90cd2de2 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psMarkSweepDecorator.cpp
@@ -275,22 +275,9 @@ bool PSMarkSweepDecorator::insert_deadspace(size_t& allowed_deadspace_words,
HeapWord* q, size_t deadlength) {
if (allowed_deadspace_words >= deadlength) {
allowed_deadspace_words -= deadlength;
- oop(q)->set_mark(markOopDesc::prototype()->set_marked());
- const size_t aligned_min_int_array_size =
- align_object_size(typeArrayOopDesc::header_size(T_INT));
- if (deadlength >= aligned_min_int_array_size) {
- oop(q)->set_klass(Universe::intArrayKlassObj());
- assert(((deadlength - aligned_min_int_array_size) * (HeapWordSize/sizeof(jint))) < (size_t)max_jint,
- "deadspace too big for Arrayoop");
- typeArrayOop(q)->set_length((int)((deadlength - aligned_min_int_array_size)
- * (HeapWordSize/sizeof(jint))));
- } else {
- assert((int) deadlength == instanceOopDesc::header_size(),
- "size for smallest fake dead object doesn't match");
- oop(q)->set_klass(SystemDictionary::object_klass());
- }
- assert((int) deadlength == oop(q)->size(),
- "make sure size for fake dead object match");
+ CollectedHeap::fill_with_object(q, deadlength);
+ oop(q)->set_mark(oop(q)->mark()->set_marked());
+ assert((int) deadlength == oop(q)->size(), "bad filler object size");
// Recall that we required "q == compaction_top".
return true;
} else {
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
index 1ad78f84c56..dd01b7b49ff 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
@@ -1308,8 +1308,7 @@ void PSParallelCompact::fill_dense_prefix_end(SpaceId id)
}
#endif // #ifdef _LP64
- MemRegion region(obj_beg, obj_len);
- SharedHeap::fill_region_with_object(region);
+ gc_heap()->fill_with_object(obj_beg, obj_len);
_mark_bitmap.mark_obj(obj_beg, obj_len);
_summary_data.add_obj(obj_beg, obj_len);
assert(start_array(id) != NULL, "sanity");
@@ -1807,9 +1806,14 @@ bool PSParallelCompact::absorb_live_data_from_eden(PSAdaptiveSizePolicy* size_po
// Fill the unused part of the old gen.
MutableSpace* const old_space = old_gen->object_space();
- MemRegion old_gen_unused(old_space->top(), old_space->end());
- if (!old_gen_unused.is_empty()) {
- SharedHeap::fill_region_with_object(old_gen_unused);
+ HeapWord* const unused_start = old_space->top();
+ size_t const unused_words = pointer_delta(old_space->end(), unused_start);
+
+ if (unused_words > 0) {
+ if (unused_words < CollectedHeap::min_fill_size()) {
+ return false; // If the old gen cannot be filled, must give up.
+ }
+ CollectedHeap::fill_with_objects(unused_start, unused_words);
}
// Take the live data from eden and set both top and end in the old gen to
@@ -1825,9 +1829,8 @@ bool PSParallelCompact::absorb_live_data_from_eden(PSAdaptiveSizePolicy* size_po
// Update the object start array for the filler object and the data from eden.
ObjectStartArray* const start_array = old_gen->start_array();
- HeapWord* const start = old_gen_unused.start();
- for (HeapWord* addr = start; addr < new_top; addr += oop(addr)->size()) {
- start_array->allocate_block(addr);
+ for (HeapWord* p = unused_start; p < new_top; p += oop(p)->size()) {
+ start_array->allocate_block(p);
}
// Could update the promoted average here, but it is not typically updated at
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
index 7ca899956f4..476c6b7d731 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
@@ -1324,31 +1324,28 @@ inline void UpdateOnlyClosure::do_addr(HeapWord* addr)
oop(addr)->update_contents(compaction_manager());
}
-class FillClosure: public ParMarkBitMapClosure {
- public:
+class FillClosure: public ParMarkBitMapClosure
+{
+public:
FillClosure(ParCompactionManager* cm, PSParallelCompact::SpaceId space_id) :
ParMarkBitMapClosure(PSParallelCompact::mark_bitmap(), cm),
- _space_id(space_id),
- _start_array(PSParallelCompact::start_array(space_id)) {
- assert(_space_id == PSParallelCompact::perm_space_id ||
- _space_id == PSParallelCompact::old_space_id,
+ _start_array(PSParallelCompact::start_array(space_id))
+ {
+ assert(space_id == PSParallelCompact::perm_space_id ||
+ space_id == PSParallelCompact::old_space_id,
"cannot use FillClosure in the young gen");
- assert(bitmap() != NULL, "need a bitmap");
- assert(_start_array != NULL, "need a start array");
- }
-
- void fill_region(HeapWord* addr, size_t size) {
- MemRegion region(addr, size);
- SharedHeap::fill_region_with_object(region);
- _start_array->allocate_block(addr);
}
virtual IterationStatus do_addr(HeapWord* addr, size_t size) {
- fill_region(addr, size);
+ CollectedHeap::fill_with_objects(addr, size);
+ HeapWord* const end = addr + size;
+ do {
+ _start_array->allocate_block(addr);
+ addr += oop(addr)->size();
+ } while (addr < end);
return ParMarkBitMap::incomplete;
}
private:
- const PSParallelCompact::SpaceId _space_id;
- ObjectStartArray* const _start_array;
+ ObjectStartArray* const _start_array;
};
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp
index dd74617ebb3..11b6118322b 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psPromotionManager.cpp
@@ -499,26 +499,15 @@ oop PSPromotionManager::copy_to_survivor_space(oop o, bool depth_first) {
// We lost, someone else "owns" this object
guarantee(o->is_forwarded(), "Object must be forwarded if the cas failed.");
- // Unallocate the space used. NOTE! We may have directly allocated
- // the object. If so, we cannot deallocate it, so we have to test!
+ // Try to deallocate the space. If it was directly allocated we cannot
+ // deallocate it, so we have to test. If the deallocation fails,
+ // overwrite with a filler object.
if (new_obj_is_tenured) {
if (!_old_lab.unallocate_object(new_obj)) {
- // The promotion lab failed to unallocate the object.
- // We need to overwrite the object with a filler that
- // contains no interior pointers.
- MemRegion mr((HeapWord*)new_obj, new_obj_size);
- // Clean this up and move to oopFactory (see bug 4718422)
- SharedHeap::fill_region_with_object(mr);
- }
- } else {
- if (!_young_lab.unallocate_object(new_obj)) {
- // The promotion lab failed to unallocate the object.
- // We need to overwrite the object with a filler that
- // contains no interior pointers.
- MemRegion mr((HeapWord*)new_obj, new_obj_size);
- // Clean this up and move to oopFactory (see bug 4718422)
- SharedHeap::fill_region_with_object(mr);
+ CollectedHeap::fill_with_object((HeapWord*) new_obj, new_obj_size);
}
+ } else if (!_young_lab.unallocate_object(new_obj)) {
+ CollectedHeap::fill_with_object((HeapWord*) new_obj, new_obj_size);
}
// don't update this before the unallocation!
diff --git a/hotspot/src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp b/hotspot/src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp
index 0f38b70ee69..c639bbf3f96 100644
--- a/hotspot/src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp
+++ b/hotspot/src/share/vm/gc_implementation/shared/mutableNUMASpace.cpp
@@ -76,8 +76,8 @@ void MutableNUMASpace::ensure_parsability() {
MutableSpace *s = ls->space();
if (s->top() < top()) { // For all spaces preceeding the one containing top()
if (s->free_in_words() > 0) {
- SharedHeap::fill_region_with_object(MemRegion(s->top(), s->end()));
size_t area_touched_words = pointer_delta(s->end(), s->top());
+ CollectedHeap::fill_with_object(s->top(), area_touched_words);
#ifndef ASSERT
if (!ZapUnusedHeapArea) {
area_touched_words = MIN2((size_t)align_object_size(typeArrayOopDesc::header_size(T_INT)),
@@ -686,11 +686,11 @@ void MutableNUMASpace::set_top(HeapWord* value) {
// a minimal object; assuming that's not the last chunk in which case we don't care.
if (i < lgrp_spaces()->length() - 1) {
size_t remainder = pointer_delta(s->end(), value);
- const size_t minimal_object_size = oopDesc::header_size();
- if (remainder < minimal_object_size && remainder > 0) {
- // Add a filler object of a minimal size, it will cross the chunk boundary.
- SharedHeap::fill_region_with_object(MemRegion(value, minimal_object_size));
- value += minimal_object_size;
+ const size_t min_fill_size = CollectedHeap::min_fill_size();
+ if (remainder < min_fill_size && remainder > 0) {
+ // Add a minimum size filler object; it will cross the chunk boundary.
+ CollectedHeap::fill_with_object(value, min_fill_size);
+ value += min_fill_size;
assert(!s->contains(value), "Should be in the next chunk");
// Restart the loop from the same chunk, since the value has moved
// to the next one.
diff --git a/hotspot/src/share/vm/gc_interface/collectedHeap.cpp b/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
index df8ef081632..4e0f7e8813e 100644
--- a/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
+++ b/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
@@ -30,12 +30,21 @@
int CollectedHeap::_fire_out_of_memory_count = 0;
#endif
+size_t CollectedHeap::_filler_array_max_size = 0;
+
// Memory state functions.
-CollectedHeap::CollectedHeap() :
- _reserved(), _barrier_set(NULL), _is_gc_active(false),
- _total_collections(0), _total_full_collections(0),
- _gc_cause(GCCause::_no_gc), _gc_lastcause(GCCause::_no_gc) {
+CollectedHeap::CollectedHeap()
+{
+ const size_t max_len = size_t(arrayOopDesc::max_array_length(T_INT));
+ const size_t elements_per_word = HeapWordSize / sizeof(jint);
+ _filler_array_max_size = align_object_size(filler_array_hdr_size() +
+ max_len * elements_per_word);
+
+ _barrier_set = NULL;
+ _is_gc_active = false;
+ _total_collections = _total_full_collections = 0;
+ _gc_cause = _gc_lastcause = GCCause::_no_gc;
NOT_PRODUCT(_promotion_failure_alot_count = 0;)
NOT_PRODUCT(_promotion_failure_alot_gc_number = 0;)
@@ -128,6 +137,95 @@ HeapWord* CollectedHeap::allocate_from_tlab_slow(Thread* thread, size_t size) {
return obj;
}
+size_t CollectedHeap::filler_array_hdr_size() {
+ return size_t(arrayOopDesc::header_size(T_INT));
+}
+
+size_t CollectedHeap::filler_array_min_size() {
+ return align_object_size(filler_array_hdr_size());
+}
+
+size_t CollectedHeap::filler_array_max_size() {
+ return _filler_array_max_size;
+}
+
+#ifdef ASSERT
+void CollectedHeap::fill_args_check(HeapWord* start, size_t words)
+{
+ assert(words >= min_fill_size(), "too small to fill");
+ assert(words % MinObjAlignment == 0, "unaligned size");
+ assert(Universe::heap()->is_in_reserved(start), "not in heap");
+ assert(Universe::heap()->is_in_reserved(start + words - 1), "not in heap");
+}
+
+void CollectedHeap::zap_filler_array(HeapWord* start, size_t words)
+{
+ if (ZapFillerObjects) {
+ Copy::fill_to_words(start + filler_array_hdr_size(),
+ words - filler_array_hdr_size(), 0XDEAFBABE);
+ }
+}
+#endif // ASSERT
+
+void
+CollectedHeap::fill_with_array(HeapWord* start, size_t words)
+{
+ assert(words >= filler_array_min_size(), "too small for an array");
+ assert(words <= filler_array_max_size(), "too big for a single object");
+
+ const size_t payload_size = words - filler_array_hdr_size();
+ const size_t len = payload_size * HeapWordSize / sizeof(jint);
+
+ // Set the length first for concurrent GC.
+ ((arrayOop)start)->set_length((int)len);
+ post_allocation_setup_common(Universe::fillerArrayKlassObj(), start,
+ words);
+ DEBUG_ONLY(zap_filler_array(start, words);)
+}
+
+void
+CollectedHeap::fill_with_object_impl(HeapWord* start, size_t words)
+{
+ assert(words <= filler_array_max_size(), "too big for a single object");
+
+ if (words >= filler_array_min_size()) {
+ fill_with_array(start, words);
+ } else if (words > 0) {
+ assert(words == min_fill_size(), "unaligned size");
+ post_allocation_setup_common(SystemDictionary::object_klass(), start,
+ words);
+ }
+}
+
+void CollectedHeap::fill_with_object(HeapWord* start, size_t words)
+{
+ DEBUG_ONLY(fill_args_check(start, words);)
+ HandleMark hm; // Free handles before leaving.
+ fill_with_object_impl(start, words);
+}
+
+void CollectedHeap::fill_with_objects(HeapWord* start, size_t words)
+{
+ DEBUG_ONLY(fill_args_check(start, words);)
+ HandleMark hm; // Free handles before leaving.
+
+#ifdef LP64
+ // A single array can fill ~8G, so multiple objects are needed only in 64-bit.
+ // First fill with arrays, ensuring that any remaining space is big enough to
+ // fill. The remainder is filled with a single object.
+ const size_t min = min_fill_size();
+ const size_t max = filler_array_max_size();
+ while (words > max) {
+ const size_t cur = words - max >= min ? max : max - min;
+ fill_with_array(start, cur);
+ start += cur;
+ words -= cur;
+ }
+#endif
+
+ fill_with_object_impl(start, words);
+}
+
oop CollectedHeap::new_store_barrier(oop new_obj) {
// %%% This needs refactoring. (It was imported from the server compiler.)
guarantee(can_elide_tlab_store_barriers(), "store barrier elision not supported");
diff --git a/hotspot/src/share/vm/gc_interface/collectedHeap.hpp b/hotspot/src/share/vm/gc_interface/collectedHeap.hpp
index 69369e3f7d4..13d30c70b6d 100644
--- a/hotspot/src/share/vm/gc_interface/collectedHeap.hpp
+++ b/hotspot/src/share/vm/gc_interface/collectedHeap.hpp
@@ -47,6 +47,9 @@ class CollectedHeap : public CHeapObj {
static int _fire_out_of_memory_count;
#endif
+ // Used for filler objects (static, but initialized in ctor).
+ static size_t _filler_array_max_size;
+
protected:
MemRegion _reserved;
BarrierSet* _barrier_set;
@@ -119,6 +122,21 @@ class CollectedHeap : public CHeapObj {
// Clears an allocated object.
inline static void init_obj(HeapWord* obj, size_t size);
+ // Filler object utilities.
+ static inline size_t filler_array_hdr_size();
+ static inline size_t filler_array_min_size();
+ static inline size_t filler_array_max_size();
+
+ DEBUG_ONLY(static void fill_args_check(HeapWord* start, size_t words);)
+ DEBUG_ONLY(static void zap_filler_array(HeapWord* start, size_t words);)
+
+ // Fill with a single array; caller must ensure filler_array_min_size() <=
+ // words <= filler_array_max_size().
+ static inline void fill_with_array(HeapWord* start, size_t words);
+
+ // Fill with a single object (either an int array or a java.lang.Object).
+ static inline void fill_with_object_impl(HeapWord* start, size_t words);
+
// Verification functions
virtual void check_for_bad_heap_word_value(HeapWord* addr, size_t size)
PRODUCT_RETURN;
@@ -294,6 +312,27 @@ class CollectedHeap : public CHeapObj {
// The boundary between a "large" and "small" array of primitives, in words.
virtual size_t large_typearray_limit() = 0;
+ // Utilities for turning raw memory into filler objects.
+ //
+ // min_fill_size() is the smallest region that can be filled.
+ // fill_with_objects() can fill arbitrary-sized regions of the heap using
+ // multiple objects. fill_with_object() is for regions known to be smaller
+ // than the largest array of integers; it uses a single object to fill the
+ // region and has slightly less overhead.
+ static size_t min_fill_size() {
+ return size_t(align_object_size(oopDesc::header_size()));
+ }
+
+ static void fill_with_objects(HeapWord* start, size_t words);
+
+ static void fill_with_object(HeapWord* start, size_t words);
+ static void fill_with_object(MemRegion region) {
+ fill_with_object(region.start(), region.word_size());
+ }
+ static void fill_with_object(HeapWord* start, HeapWord* end) {
+ fill_with_object(start, pointer_delta(end, start));
+ }
+
// Some heaps may offer a contiguous region for shared non-blocking
// allocation, via inlined code (by exporting the address of the top and
// end fields defining the extent of the contiguous allocation region.)
diff --git a/hotspot/src/share/vm/gc_interface/collectedHeap.inline.hpp b/hotspot/src/share/vm/gc_interface/collectedHeap.inline.hpp
index efc3210bf0a..c8e59edac33 100644
--- a/hotspot/src/share/vm/gc_interface/collectedHeap.inline.hpp
+++ b/hotspot/src/share/vm/gc_interface/collectedHeap.inline.hpp
@@ -34,7 +34,6 @@ void CollectedHeap::post_allocation_setup_common(KlassHandle klass,
void CollectedHeap::post_allocation_setup_no_klass_install(KlassHandle klass,
HeapWord* objPtr,
size_t size) {
-
oop obj = (oop)objPtr;
assert(obj != NULL, "NULL object pointer");
@@ -44,9 +43,6 @@ void CollectedHeap::post_allocation_setup_no_klass_install(KlassHandle klass,
// May be bootstrapping
obj->set_mark(markOopDesc::prototype());
}
-
- // support low memory notifications (no-op if not enabled)
- LowMemoryDetector::detect_low_memory_for_collected_pools();
}
void CollectedHeap::post_allocation_install_obj_klass(KlassHandle klass,
@@ -65,6 +61,9 @@ void CollectedHeap::post_allocation_install_obj_klass(KlassHandle klass,
// Support for jvmti and dtrace
inline void post_allocation_notify(KlassHandle klass, oop obj) {
+ // support low memory notifications (no-op if not enabled)
+ LowMemoryDetector::detect_low_memory_for_collected_pools();
+
// support for JVMTI VMObjectAlloc event (no-op if not enabled)
JvmtiExport::vm_object_alloc_event_collector(obj);
diff --git a/hotspot/src/share/vm/includeDB_gc b/hotspot/src/share/vm/includeDB_gc
index 662805cc0d4..336148bf8fa 100644
--- a/hotspot/src/share/vm/includeDB_gc
+++ b/hotspot/src/share/vm/includeDB_gc
@@ -28,21 +28,22 @@ collectedHeap.cpp collectedHeap.hpp
collectedHeap.cpp collectedHeap.inline.hpp
collectedHeap.cpp init.hpp
collectedHeap.cpp oop.inline.hpp
+collectedHeap.cpp systemDictionary.hpp
collectedHeap.cpp thread_.inline.hpp
collectedHeap.hpp allocation.hpp
collectedHeap.hpp barrierSet.hpp
collectedHeap.hpp gcCause.hpp
collectedHeap.hpp handles.hpp
-collectedHeap.hpp perfData.hpp
+collectedHeap.hpp perfData.hpp
collectedHeap.hpp safepoint.hpp
collectedHeap.inline.hpp arrayOop.hpp
collectedHeap.inline.hpp collectedHeap.hpp
collectedHeap.inline.hpp copy.hpp
collectedHeap.inline.hpp jvmtiExport.hpp
-collectedHeap.inline.hpp lowMemoryDetector.hpp
-collectedHeap.inline.hpp sharedRuntime.hpp
+collectedHeap.inline.hpp lowMemoryDetector.hpp
+collectedHeap.inline.hpp sharedRuntime.hpp
collectedHeap.inline.hpp thread.hpp
collectedHeap.inline.hpp threadLocalAllocBuffer.inline.hpp
collectedHeap.inline.hpp universe.hpp
diff --git a/hotspot/src/share/vm/memory/sharedHeap.cpp b/hotspot/src/share/vm/memory/sharedHeap.cpp
index 853b0ebb310..392487a31ad 100644
--- a/hotspot/src/share/vm/memory/sharedHeap.cpp
+++ b/hotspot/src/share/vm/memory/sharedHeap.cpp
@@ -248,46 +248,6 @@ void SharedHeap::ref_processing_init() {
perm_gen()->ref_processor_init();
}
-void SharedHeap::fill_region_with_object(MemRegion mr) {
- // Disable the posting of JVMTI VMObjectAlloc events as we
- // don't want the filling of tlabs with filler arrays to be
- // reported to the profiler.
- NoJvmtiVMObjectAllocMark njm;
-
- // Disable low memory detector because there is no real allocation.
- LowMemoryDetectorDisabler lmd_dis;
-
- // It turns out that post_allocation_setup_array takes a handle, so the
- // call below contains an implicit conversion. Best to free that handle
- // as soon as possible.
- HandleMark hm;
-
- size_t word_size = mr.word_size();
- size_t aligned_array_header_size =
- align_object_size(typeArrayOopDesc::header_size(T_INT));
-
- if (word_size >= aligned_array_header_size) {
- const size_t array_length =
- pointer_delta(mr.end(), mr.start()) -
- typeArrayOopDesc::header_size(T_INT);
- const size_t array_length_words =
- array_length * (HeapWordSize/sizeof(jint));
- post_allocation_setup_array(Universe::intArrayKlassObj(),
- mr.start(),
- mr.word_size(),
- (int)array_length_words);
-#ifdef ASSERT
- HeapWord* elt_words = (mr.start() + typeArrayOopDesc::header_size(T_INT));
- Copy::fill_to_words(elt_words, array_length, 0xDEAFBABE);
-#endif
- } else {
- assert(word_size == (size_t)oopDesc::header_size(), "Unaligned?");
- post_allocation_setup_obj(SystemDictionary::object_klass(),
- mr.start(),
- mr.word_size());
- }
-}
-
// Some utilities.
void SharedHeap::print_size_transition(outputStream* out,
size_t bytes_before,
diff --git a/hotspot/src/share/vm/memory/sharedHeap.hpp b/hotspot/src/share/vm/memory/sharedHeap.hpp
index 662f011c7ab..c8c570e87db 100644
--- a/hotspot/src/share/vm/memory/sharedHeap.hpp
+++ b/hotspot/src/share/vm/memory/sharedHeap.hpp
@@ -108,14 +108,6 @@ public:
void set_perm(PermGen* perm_gen) { _perm_gen = perm_gen; }
- // A helper function that fills a region of the heap with
- // with a single object.
- static void fill_region_with_object(MemRegion mr);
-
- // Minimum garbage fill object size
- static size_t min_fill_size() { return (size_t)align_object_size(oopDesc::header_size()); }
- static size_t min_fill_size_in_bytes() { return min_fill_size() * HeapWordSize; }
-
// This function returns the "GenRemSet" object that allows us to scan
// generations; at least the perm gen, possibly more in a fully
// generational heap.
diff --git a/hotspot/src/share/vm/memory/space.cpp b/hotspot/src/share/vm/memory/space.cpp
index 82529444c0a..652d585bb8f 100644
--- a/hotspot/src/share/vm/memory/space.cpp
+++ b/hotspot/src/share/vm/memory/space.cpp
@@ -409,19 +409,9 @@ bool CompactibleSpace::insert_deadspace(size_t& allowed_deadspace_words,
HeapWord* q, size_t deadlength) {
if (allowed_deadspace_words >= deadlength) {
allowed_deadspace_words -= deadlength;
- oop(q)->set_mark(markOopDesc::prototype()->set_marked());
- const size_t min_int_array_size = typeArrayOopDesc::header_size(T_INT);
- if (deadlength >= min_int_array_size) {
- oop(q)->set_klass(Universe::intArrayKlassObj());
- typeArrayOop(q)->set_length((int)((deadlength - min_int_array_size)
- * (HeapWordSize/sizeof(jint))));
- } else {
- assert((int) deadlength == instanceOopDesc::header_size(),
- "size for smallest fake dead object doesn't match");
- oop(q)->set_klass(SystemDictionary::object_klass());
- }
- assert((int) deadlength == oop(q)->size(),
- "make sure size for fake dead object match");
+ CollectedHeap::fill_with_object(q, deadlength);
+ oop(q)->set_mark(oop(q)->mark()->set_marked());
+ assert((int) deadlength == oop(q)->size(), "bad filler object size");
// Recall that we required "q == compaction_top".
return true;
} else {
diff --git a/hotspot/src/share/vm/memory/tenuredGeneration.cpp b/hotspot/src/share/vm/memory/tenuredGeneration.cpp
index dcd6626e80d..56eed211d98 100644
--- a/hotspot/src/share/vm/memory/tenuredGeneration.cpp
+++ b/hotspot/src/share/vm/memory/tenuredGeneration.cpp
@@ -387,7 +387,7 @@ void TenuredGeneration::par_promote_alloc_undo(int thread_num,
"should contain whole object");
buf->undo_allocation(obj, word_sz);
} else {
- SharedHeap::fill_region_with_object(MemRegion(obj, word_sz));
+ CollectedHeap::fill_with_object(obj, word_sz);
}
}
diff --git a/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp b/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp
index fdcfdd28e13..01d7d6e6a2f 100644
--- a/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp
+++ b/hotspot/src/share/vm/memory/threadLocalAllocBuffer.cpp
@@ -100,8 +100,7 @@ void ThreadLocalAllocBuffer::accumulate_statistics() {
void ThreadLocalAllocBuffer::make_parsable(bool retire) {
if (end() != NULL) {
invariants();
- MemRegion mr(top(), hard_end());
- SharedHeap::fill_region_with_object(mr);
+ CollectedHeap::fill_with_object(top(), hard_end());
if (retire || ZeroTLAB) { // "Reset" the TLAB
set_start(NULL);
diff --git a/hotspot/src/share/vm/memory/universe.cpp b/hotspot/src/share/vm/memory/universe.cpp
index ffe583ecc16..567e10145bf 100644
--- a/hotspot/src/share/vm/memory/universe.cpp
+++ b/hotspot/src/share/vm/memory/universe.cpp
@@ -49,16 +49,17 @@ klassOop Universe::_constantPoolKlassObj = NULL;
klassOop Universe::_constantPoolCacheKlassObj = NULL;
klassOop Universe::_compiledICHolderKlassObj = NULL;
klassOop Universe::_systemObjArrayKlassObj = NULL;
-oop Universe::_int_mirror = NULL;
-oop Universe::_float_mirror = NULL;
-oop Universe::_double_mirror = NULL;
-oop Universe::_byte_mirror = NULL;
-oop Universe::_bool_mirror = NULL;
-oop Universe::_char_mirror = NULL;
-oop Universe::_long_mirror = NULL;
-oop Universe::_short_mirror = NULL;
-oop Universe::_void_mirror = NULL;
-oop Universe::_mirrors[T_VOID+1] = { NULL /*, NULL...*/ };
+klassOop Universe::_fillerArrayKlassObj = NULL;
+oop Universe::_int_mirror = NULL;
+oop Universe::_float_mirror = NULL;
+oop Universe::_double_mirror = NULL;
+oop Universe::_byte_mirror = NULL;
+oop Universe::_bool_mirror = NULL;
+oop Universe::_char_mirror = NULL;
+oop Universe::_long_mirror = NULL;
+oop Universe::_short_mirror = NULL;
+oop Universe::_void_mirror = NULL;
+oop Universe::_mirrors[T_VOID+1] = { NULL /*, NULL...*/ };
oop Universe::_main_thread_group = NULL;
oop Universe::_system_thread_group = NULL;
typeArrayOop Universe::_the_empty_byte_array = NULL;
@@ -126,6 +127,7 @@ void Universe::system_classes_do(void f(klassOop)) {
f(instanceKlassKlassObj());
f(constantPoolKlassObj());
f(systemObjArrayKlassObj());
+ f(fillerArrayKlassObj());
}
void Universe::oops_do(OopClosure* f, bool do_all) {
@@ -180,6 +182,7 @@ void Universe::oops_do(OopClosure* f, bool do_all) {
f->do_oop((oop*)&_constantPoolCacheKlassObj);
f->do_oop((oop*)&_compiledICHolderKlassObj);
f->do_oop((oop*)&_systemObjArrayKlassObj);
+ f->do_oop((oop*)&_fillerArrayKlassObj);
f->do_oop((oop*)&_the_empty_byte_array);
f->do_oop((oop*)&_the_empty_short_array);
f->do_oop((oop*)&_the_empty_int_array);
@@ -257,16 +260,17 @@ void Universe::genesis(TRAPS) {
_typeArrayKlassObjs[T_INT] = _intArrayKlassObj;
_typeArrayKlassObjs[T_LONG] = _longArrayKlassObj;
- _methodKlassObj = methodKlass::create_klass(CHECK);
- _constMethodKlassObj = constMethodKlass::create_klass(CHECK);
- _methodDataKlassObj = methodDataKlass::create_klass(CHECK);
+ _methodKlassObj = methodKlass::create_klass(CHECK);
+ _constMethodKlassObj = constMethodKlass::create_klass(CHECK);
+ _methodDataKlassObj = methodDataKlass::create_klass(CHECK);
_constantPoolKlassObj = constantPoolKlass::create_klass(CHECK);
_constantPoolCacheKlassObj = constantPoolCacheKlass::create_klass(CHECK);
_compiledICHolderKlassObj = compiledICHolderKlass::create_klass(CHECK);
_systemObjArrayKlassObj = objArrayKlassKlass::cast(objArrayKlassKlassObj())->allocate_system_objArray_klass(CHECK);
+ _fillerArrayKlassObj = typeArrayKlass::create_klass(T_INT, sizeof(jint), "", CHECK);
- _the_empty_byte_array = oopFactory::new_permanent_byteArray(0, CHECK);
+ _the_empty_byte_array = oopFactory::new_permanent_byteArray(0, CHECK);
_the_empty_short_array = oopFactory::new_permanent_shortArray(0, CHECK);
_the_empty_int_array = oopFactory::new_permanent_intArray(0, CHECK);
_the_empty_system_obj_array = oopFactory::new_system_objArray(0, CHECK);
@@ -274,7 +278,6 @@ void Universe::genesis(TRAPS) {
_the_array_interfaces_array = oopFactory::new_system_objArray(2, CHECK);
_vm_exception = oopFactory::new_symbol("vm exception holder", CHECK);
} else {
-
FileMapInfo *mapinfo = FileMapInfo::current_info();
char* buffer = mapinfo->region_base(CompactingPermGenGen::md);
void** vtbl_list = (void**)buffer;
diff --git a/hotspot/src/share/vm/memory/universe.hpp b/hotspot/src/share/vm/memory/universe.hpp
index 118800f780b..0476d8af531 100644
--- a/hotspot/src/share/vm/memory/universe.hpp
+++ b/hotspot/src/share/vm/memory/universe.hpp
@@ -92,6 +92,7 @@ class LatestMethodOopCache : public CommonMethodOopCache {
class Universe: AllStatic {
+ // Ugh. Universe is much too friendly.
friend class MarkSweep;
friend class oopDesc;
friend class ClassLoader;
@@ -132,6 +133,7 @@ class Universe: AllStatic {
static klassOop _constantPoolCacheKlassObj;
static klassOop _compiledICHolderKlassObj;
static klassOop _systemObjArrayKlassObj;
+ static klassOop _fillerArrayKlassObj;
// Known objects in the VM
@@ -264,6 +266,7 @@ class Universe: AllStatic {
static klassOop constantPoolCacheKlassObj() { return _constantPoolCacheKlassObj; }
static klassOop compiledICHolderKlassObj() { return _compiledICHolderKlassObj; }
static klassOop systemObjArrayKlassObj() { return _systemObjArrayKlassObj; }
+ static klassOop fillerArrayKlassObj() { return _fillerArrayKlassObj; }
// Known objects in tbe VM
static oop int_mirror() { return check_mirror(_int_mirror);
diff --git a/hotspot/src/share/vm/oops/arrayOop.hpp b/hotspot/src/share/vm/oops/arrayOop.hpp
index 8ede056496a..364d1dbfe40 100644
--- a/hotspot/src/share/vm/oops/arrayOop.hpp
+++ b/hotspot/src/share/vm/oops/arrayOop.hpp
@@ -96,19 +96,20 @@ class arrayOopDesc : public oopDesc {
: typesize_in_bytes/HeapWordSize);
}
- // This method returns the maximum length that can passed into
- // typeArrayOop::object_size(scale, length, header_size) without causing an
- // overflow. We substract an extra 2*wordSize to guard against double word
- // alignments. It gets the scale from the type2aelembytes array.
+ // Return the maximum length of an array of BasicType. The length can passed
+ // to typeArrayOop::object_size(scale, length, header_size) without causing an
+ // overflow.
static int32_t max_array_length(BasicType type) {
assert(type >= 0 && type < T_CONFLICT, "wrong type");
assert(type2aelembytes(type) != 0, "wrong type");
- // We use max_jint, since object_size is internally represented by an 'int'
- // This gives us an upper bound of max_jint words for the size of the oop.
- int32_t max_words = (max_jint - header_size(type) - 2);
- int elembytes = type2aelembytes(type);
- jlong len = ((jlong)max_words * HeapWordSize) / elembytes;
- return (len > max_jint) ? max_jint : (int32_t)len;
- }
+ const int bytes_per_element = type2aelembytes(type);
+ if (bytes_per_element < HeapWordSize) {
+ return max_jint;
+ }
+ const int32_t max_words = align_size_down(max_jint, MinObjAlignment);
+ const int32_t max_element_words = max_words - header_size(type);
+ const int32_t words_per_element = bytes_per_element >> LogHeapWordSize;
+ return max_element_words / words_per_element;
+ }
};
diff --git a/hotspot/src/share/vm/oops/typeArrayKlass.cpp b/hotspot/src/share/vm/oops/typeArrayKlass.cpp
index d48f8b4f25b..2e0ffbcba26 100644
--- a/hotspot/src/share/vm/oops/typeArrayKlass.cpp
+++ b/hotspot/src/share/vm/oops/typeArrayKlass.cpp
@@ -36,13 +36,14 @@ bool typeArrayKlass::compute_is_subtype_of(klassOop k) {
return element_type() == tak->element_type();
}
-klassOop typeArrayKlass::create_klass(BasicType type, int scale, TRAPS) {
+klassOop typeArrayKlass::create_klass(BasicType type, int scale,
+ const char* name_str, TRAPS) {
typeArrayKlass o;
symbolHandle sym(symbolOop(NULL));
// bootstrapping: don't create sym if symbolKlass not created yet
- if (Universe::symbolKlassObj() != NULL) {
- sym = oopFactory::new_symbol_handle(external_name(type), CHECK_NULL);
+ if (Universe::symbolKlassObj() != NULL && name_str != NULL) {
+ sym = oopFactory::new_symbol_handle(name_str, CHECK_NULL);
}
KlassHandle klassklass (THREAD, Universe::typeArrayKlassKlassObj());
diff --git a/hotspot/src/share/vm/oops/typeArrayKlass.hpp b/hotspot/src/share/vm/oops/typeArrayKlass.hpp
index 72336fb8db0..dac77f6b9bf 100644
--- a/hotspot/src/share/vm/oops/typeArrayKlass.hpp
+++ b/hotspot/src/share/vm/oops/typeArrayKlass.hpp
@@ -39,7 +39,11 @@ class typeArrayKlass : public arrayKlass {
// klass allocation
DEFINE_ALLOCATE_PERMANENT(typeArrayKlass);
- static klassOop create_klass(BasicType type, int scale, TRAPS);
+ static klassOop create_klass(BasicType type, int scale, const char* name_str,
+ TRAPS);
+ static inline klassOop create_klass(BasicType type, int scale, TRAPS) {
+ return create_klass(type, scale, external_name(type), CHECK_NULL);
+ }
int oop_size(oop obj) const;
int klass_oop_size() const { return object_size(); }
diff --git a/hotspot/src/share/vm/runtime/globals.hpp b/hotspot/src/share/vm/runtime/globals.hpp
index 5d08a653bd5..0a9f4d45dc8 100644
--- a/hotspot/src/share/vm/runtime/globals.hpp
+++ b/hotspot/src/share/vm/runtime/globals.hpp
@@ -625,6 +625,9 @@ class CommandLineFlags {
develop(bool, CheckZapUnusedHeapArea, false, \
"Check zapping of unused heap space") \
\
+ develop(bool, ZapFillerObjects, trueInDebug, \
+ "Zap filler objects with 0xDEAFBABE") \
+ \
develop(bool, PrintVMMessages, true, \
"Print vm messages on console") \
\
From 7a9585170d1485a6cc3aba8c0efb49ff20e2e904 Mon Sep 17 00:00:00 2001
From: John Coomes
Date: Thu, 11 Dec 2008 12:05:14 -0800
Subject: [PATCH 52/68] 6765745: par compact - allow young gen spaces to be
split
Reviewed-by: jmasa
---
.../parallelScavenge/psParallelCompact.cpp | 536 +++++++++++++-----
.../parallelScavenge/psParallelCompact.hpp | 142 ++++-
2 files changed, 516 insertions(+), 162 deletions(-)
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
index dd01b7b49ff..852cf5e882d 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
@@ -88,6 +88,72 @@ GrowableArray* PSParallelCompact::_last_gc_live_oops_moved_to = NULL;
GrowableArray * PSParallelCompact::_last_gc_live_oops_size = NULL;
#endif
+void SplitInfo::record(size_t src_region_idx, size_t partial_obj_size,
+ HeapWord* destination)
+{
+ assert(src_region_idx != 0, "invalid src_region_idx");
+ assert(partial_obj_size != 0, "invalid partial_obj_size argument");
+ assert(destination != NULL, "invalid destination argument");
+
+ _src_region_idx = src_region_idx;
+ _partial_obj_size = partial_obj_size;
+ _destination = destination;
+
+ // These fields may not be updated below, so make sure they're clear.
+ assert(_dest_region_addr == NULL, "should have been cleared");
+ assert(_first_src_addr == NULL, "should have been cleared");
+
+ // Determine the number of destination regions for the partial object.
+ HeapWord* const last_word = destination + partial_obj_size - 1;
+ const ParallelCompactData& sd = PSParallelCompact::summary_data();
+ HeapWord* const beg_region_addr = sd.region_align_down(destination);
+ HeapWord* const end_region_addr = sd.region_align_down(last_word);
+
+ if (beg_region_addr == end_region_addr) {
+ // One destination region.
+ _destination_count = 1;
+ if (end_region_addr == destination) {
+ // The destination falls on a region boundary, thus the first word of the
+ // partial object will be the first word copied to the destination region.
+ _dest_region_addr = end_region_addr;
+ _first_src_addr = sd.region_to_addr(src_region_idx);
+ }
+ } else {
+ // Two destination regions. When copied, the partial object will cross a
+ // destination region boundary, so a word somewhere within the partial
+ // object will be the first word copied to the second destination region.
+ _destination_count = 2;
+ _dest_region_addr = end_region_addr;
+ const size_t ofs = pointer_delta(end_region_addr, destination);
+ assert(ofs < _partial_obj_size, "sanity");
+ _first_src_addr = sd.region_to_addr(src_region_idx) + ofs;
+ }
+}
+
+void SplitInfo::clear()
+{
+ _src_region_idx = 0;
+ _partial_obj_size = 0;
+ _destination = NULL;
+ _destination_count = 0;
+ _dest_region_addr = NULL;
+ _first_src_addr = NULL;
+ assert(!is_valid(), "sanity");
+}
+
+#ifdef ASSERT
+void SplitInfo::verify_clear()
+{
+ assert(_src_region_idx == 0, "not clear");
+ assert(_partial_obj_size == 0, "not clear");
+ assert(_destination == NULL, "not clear");
+ assert(_destination_count == 0, "not clear");
+ assert(_dest_region_addr == NULL, "not clear");
+ assert(_first_src_addr == NULL, "not clear");
+}
+#endif // #ifdef ASSERT
+
+
#ifndef PRODUCT
const char* PSParallelCompact::space_names[] = {
"perm", "old ", "eden", "from", "to "
@@ -416,21 +482,134 @@ ParallelCompactData::summarize_dense_prefix(HeapWord* beg, HeapWord* end)
}
}
-bool ParallelCompactData::summarize(HeapWord* target_beg, HeapWord* target_end,
- HeapWord* source_beg, HeapWord* source_end,
- HeapWord** target_next,
- HeapWord** source_next) {
- // This is too strict.
- // assert(region_offset(source_beg) == 0, "not RegionSize aligned");
+// Find the point at which a space can be split and, if necessary, record the
+// split point.
+//
+// If the current src region (which overflowed the destination space) doesn't
+// have a partial object, the split point is at the beginning of the current src
+// region (an "easy" split, no extra bookkeeping required).
+//
+// If the current src region has a partial object, the split point is in the
+// region where that partial object starts (call it the split_region). If
+// split_region has a partial object, then the split point is just after that
+// partial object (a "hard" split where we have to record the split data and
+// zero the partial_obj_size field). With a "hard" split, we know that the
+// partial_obj ends within split_region because the partial object that caused
+// the overflow starts in split_region. If split_region doesn't have a partial
+// obj, then the split is at the beginning of split_region (another "easy"
+// split).
+HeapWord*
+ParallelCompactData::summarize_split_space(size_t src_region,
+ SplitInfo& split_info,
+ HeapWord* destination,
+ HeapWord* target_end,
+ HeapWord** target_next)
+{
+ assert(destination <= target_end, "sanity");
+ assert(destination + _region_data[src_region].data_size() > target_end,
+ "region should not fit into target space");
+
+ size_t split_region = src_region;
+ HeapWord* split_destination = destination;
+ size_t partial_obj_size = _region_data[src_region].partial_obj_size();
+
+ if (destination + partial_obj_size > target_end) {
+ // The split point is just after the partial object (if any) in the
+ // src_region that contains the start of the object that overflowed the
+ // destination space.
+ //
+ // Find the start of the "overflow" object and set split_region to the
+ // region containing it.
+ HeapWord* const overflow_obj = _region_data[src_region].partial_obj_addr();
+ split_region = addr_to_region_idx(overflow_obj);
+
+ // Clear the source_region field of all destination regions whose first word
+ // came from data after the split point (a non-null source_region field
+ // implies a region must be filled).
+ //
+ // An alternative to the simple loop below: clear during post_compact(),
+ // which uses memcpy instead of individual stores, and is easy to
+ // parallelize. (The downside is that it clears the entire RegionData
+ // object as opposed to just one field.)
+ //
+ // post_compact() would have to clear the summary data up to the highest
+ // address that was written during the summary phase, which would be
+ //
+ // max(top, max(new_top, clear_top))
+ //
+ // where clear_top is a new field in SpaceInfo. Would have to set clear_top
+ // to destination + partial_obj_size, where both have the values passed to
+ // this routine.
+ const RegionData* const sr = region(split_region);
+ const size_t beg_idx =
+ addr_to_region_idx(region_align_up(sr->destination() +
+ sr->partial_obj_size()));
+ const size_t end_idx =
+ addr_to_region_idx(region_align_up(destination + partial_obj_size));
+
+ if (TraceParallelOldGCSummaryPhase) {
+ gclog_or_tty->print_cr("split: clearing source_region field in ["
+ SIZE_FORMAT ", " SIZE_FORMAT ")",
+ beg_idx, end_idx);
+ }
+ for (size_t idx = beg_idx; idx < end_idx; ++idx) {
+ _region_data[idx].set_source_region(0);
+ }
+
+ // Set split_destination and partial_obj_size to reflect the split region.
+ split_destination = sr->destination();
+ partial_obj_size = sr->partial_obj_size();
+ }
+
+ // The split is recorded only if a partial object extends onto the region.
+ if (partial_obj_size != 0) {
+ _region_data[split_region].set_partial_obj_size(0);
+ split_info.record(split_region, partial_obj_size, split_destination);
+ }
+
+ // Setup the continuation addresses.
+ *target_next = split_destination + partial_obj_size;
+ HeapWord* const source_next = region_to_addr(split_region) + partial_obj_size;
if (TraceParallelOldGCSummaryPhase) {
- tty->print_cr("tb=" PTR_FORMAT " te=" PTR_FORMAT " "
- "sb=" PTR_FORMAT " se=" PTR_FORMAT " "
- "tn=" PTR_FORMAT " sn=" PTR_FORMAT,
- target_beg, target_end,
- source_beg, source_end,
- target_next != 0 ? *target_next : (HeapWord*) 0,
- source_next != 0 ? *source_next : (HeapWord*) 0);
+ const char * split_type = partial_obj_size == 0 ? "easy" : "hard";
+ gclog_or_tty->print_cr("%s split: src=" PTR_FORMAT " src_c=" SIZE_FORMAT
+ " pos=" SIZE_FORMAT,
+ split_type, source_next, split_region,
+ partial_obj_size);
+ gclog_or_tty->print_cr("%s split: dst=" PTR_FORMAT " dst_c=" SIZE_FORMAT
+ " tn=" PTR_FORMAT,
+ split_type, split_destination,
+ addr_to_region_idx(split_destination),
+ *target_next);
+
+ if (partial_obj_size != 0) {
+ HeapWord* const po_beg = split_info.destination();
+ HeapWord* const po_end = po_beg + split_info.partial_obj_size();
+ gclog_or_tty->print_cr("%s split: "
+ "po_beg=" PTR_FORMAT " " SIZE_FORMAT " "
+ "po_end=" PTR_FORMAT " " SIZE_FORMAT,
+ split_type,
+ po_beg, addr_to_region_idx(po_beg),
+ po_end, addr_to_region_idx(po_end));
+ }
+ }
+
+ return source_next;
+}
+
+bool ParallelCompactData::summarize(SplitInfo& split_info,
+ HeapWord* source_beg, HeapWord* source_end,
+ HeapWord** source_next,
+ HeapWord* target_beg, HeapWord* target_end,
+ HeapWord** target_next)
+{
+ if (TraceParallelOldGCSummaryPhase) {
+ HeapWord* const source_next_val = source_next == NULL ? NULL : *source_next;
+ tty->print_cr("sb=" PTR_FORMAT " se=" PTR_FORMAT " sn=" PTR_FORMAT
+ "tb=" PTR_FORMAT " te=" PTR_FORMAT " tn=" PTR_FORMAT,
+ source_beg, source_end, source_next_val,
+ target_beg, target_end, *target_next);
}
size_t cur_region = addr_to_region_idx(source_beg);
@@ -438,45 +617,53 @@ bool ParallelCompactData::summarize(HeapWord* target_beg, HeapWord* target_end,
HeapWord *dest_addr = target_beg;
while (cur_region < end_region) {
- size_t words = _region_data[cur_region].data_size();
-
-#if 1
- assert(pointer_delta(target_end, dest_addr) >= words,
- "source region does not fit into target region");
-#else
- // XXX - need some work on the corner cases here. If the region does not
- // fit, then must either make sure any partial_obj from the region fits, or
- // "undo" the initial part of the partial_obj that is in the previous
- // region.
- if (dest_addr + words >= target_end) {
- // Let the caller know where to continue.
- *target_next = dest_addr;
- *source_next = region_to_addr(cur_region);
- return false;
- }
-#endif // #if 1
-
+ // The destination must be set even if the region has no data.
_region_data[cur_region].set_destination(dest_addr);
- // Set the destination_count for cur_region, and if necessary, update
- // source_region for a destination region. The source_region field is
- // updated if cur_region is the first (left-most) region to be copied to a
- // destination region.
- //
- // The destination_count calculation is a bit subtle. A region that has
- // data that compacts into itself does not count itself as a destination.
- // This maintains the invariant that a zero count means the region is
- // available and can be claimed and then filled.
+ size_t words = _region_data[cur_region].data_size();
if (words > 0) {
+ // If cur_region does not fit entirely into the target space, find a point
+ // at which the source space can be 'split' so that part is copied to the
+ // target space and the rest is copied elsewhere.
+ if (dest_addr + words > target_end) {
+ assert(source_next != NULL, "source_next is NULL when splitting");
+ *source_next = summarize_split_space(cur_region, split_info, dest_addr,
+ target_end, target_next);
+ return false;
+ }
+
+ // Compute the destination_count for cur_region, and if necessary, update
+ // source_region for a destination region. The source_region field is
+ // updated if cur_region is the first (left-most) region to be copied to a
+ // destination region.
+ //
+ // The destination_count calculation is a bit subtle. A region that has
+ // data that compacts into itself does not count itself as a destination.
+ // This maintains the invariant that a zero count means the region is
+ // available and can be claimed and then filled.
+ uint destination_count = 0;
+ if (split_info.is_split(cur_region)) {
+ // The current region has been split: the partial object will be copied
+ // to one destination space and the remaining data will be copied to
+ // another destination space. Adjust the initial destination_count and,
+ // if necessary, set the source_region field if the partial object will
+ // cross a destination region boundary.
+ destination_count = split_info.destination_count();
+ if (destination_count == 2) {
+ size_t dest_idx = addr_to_region_idx(split_info.dest_region_addr());
+ _region_data[dest_idx].set_source_region(cur_region);
+ }
+ }
+
HeapWord* const last_addr = dest_addr + words - 1;
const size_t dest_region_1 = addr_to_region_idx(dest_addr);
const size_t dest_region_2 = addr_to_region_idx(last_addr);
-#if 0
+
// Initially assume that the destination regions will be the same and
// adjust the value below if necessary. Under this assumption, if
// cur_region == dest_region_2, then cur_region will be compacted
// completely into itself.
- uint destination_count = cur_region == dest_region_2 ? 0 : 1;
+ destination_count += cur_region == dest_region_2 ? 0 : 1;
if (dest_region_1 != dest_region_2) {
// Destination regions differ; adjust destination_count.
destination_count += 1;
@@ -487,25 +674,6 @@ bool ParallelCompactData::summarize(HeapWord* target_beg, HeapWord* target_end,
// region.
_region_data[dest_region_1].set_source_region(cur_region);
}
-#else
- // Initially assume that the destination regions will be different and
- // adjust the value below if necessary. Under this assumption, if
- // cur_region == dest_region2, then cur_region will be compacted partially
- // into dest_region_1 and partially into itself.
- uint destination_count = cur_region == dest_region_2 ? 1 : 2;
- if (dest_region_1 != dest_region_2) {
- // Data from cur_region will be copied to the start of dest_region_2.
- _region_data[dest_region_2].set_source_region(cur_region);
- } else {
- // Destination regions are the same; adjust destination_count.
- destination_count -= 1;
- if (region_offset(dest_addr) == 0) {
- // Data from cur_region will be copied to the start of the destination
- // region.
- _region_data[dest_region_1].set_source_region(cur_region);
- }
- }
-#endif // #if 0
_region_data[cur_region].set_destination_count(destination_count);
_region_data[cur_region].set_data_location(region_to_addr(cur_region));
@@ -749,6 +917,13 @@ PSParallelCompact::clear_data_covering_space(SpaceId id)
const size_t end_region =
_summary_data.addr_to_region_idx(_summary_data.region_align_up(max_top));
_summary_data.clear_range(beg_region, end_region);
+
+ // Clear the data used to 'split' regions.
+ SplitInfo& split_info = _space_info[id].split_info();
+ if (split_info.is_valid()) {
+ split_info.clear();
+ }
+ DEBUG_ONLY(split_info.verify_clear();)
}
void PSParallelCompact::pre_compact(PreGCValues* pre_gc_values)
@@ -807,10 +982,11 @@ void PSParallelCompact::post_compact()
{
TraceTime tm("post compact", print_phases(), true, gclog_or_tty);
- // Clear the marking bitmap and summary data and update top() in each space.
for (unsigned int id = perm_space_id; id < last_space_id; ++id) {
+ // Clear the marking bitmap, summary data and split info.
clear_data_covering_space(SpaceId(id));
- _space_info[id].space()->set_top(_space_info[id].new_top());
+ // Update top(). Must be done after clearing the bitmap and summary data.
+ _space_info[id].publish_new_top();
}
MutableSpace* const eden_space = _space_info[eden_space_id].space();
@@ -1243,10 +1419,11 @@ void PSParallelCompact::summarize_spaces_quick()
{
for (unsigned int i = 0; i < last_space_id; ++i) {
const MutableSpace* space = _space_info[i].space();
- bool result = _summary_data.summarize(space->bottom(), space->end(),
- space->bottom(), space->top(),
- _space_info[i].new_top_addr());
- assert(result, "should never fail");
+ HeapWord** nta = _space_info[i].new_top_addr();
+ bool result = _summary_data.summarize(_space_info[i].split_info(),
+ space->bottom(), space->top(), NULL,
+ space->bottom(), space->end(), nta);
+ assert(result, "space must fit into itself");
_space_info[i].set_dense_prefix(space->bottom());
}
}
@@ -1308,7 +1485,7 @@ void PSParallelCompact::fill_dense_prefix_end(SpaceId id)
}
#endif // #ifdef _LP64
- gc_heap()->fill_with_object(obj_beg, obj_len);
+ CollectedHeap::fill_with_object(obj_beg, obj_len);
_mark_bitmap.mark_obj(obj_beg, obj_len);
_summary_data.add_obj(obj_beg, obj_len);
assert(start_array(id) != NULL, "sanity");
@@ -1316,6 +1493,17 @@ void PSParallelCompact::fill_dense_prefix_end(SpaceId id)
}
}
+void
+PSParallelCompact::clear_source_region(HeapWord* beg_addr, HeapWord* end_addr)
+{
+ RegionData* const beg_ptr = _summary_data.addr_to_region_ptr(beg_addr);
+ HeapWord* const end_aligned_up = _summary_data.region_align_up(end_addr);
+ RegionData* const end_ptr = _summary_data.addr_to_region_ptr(end_aligned_up);
+ for (RegionData* cur = beg_ptr; cur < end_ptr; ++cur) {
+ cur->set_source_region(0);
+ }
+}
+
void
PSParallelCompact::summarize_space(SpaceId id, bool maximum_compaction)
{
@@ -1337,20 +1525,24 @@ PSParallelCompact::summarize_space(SpaceId id, bool maximum_compaction)
}
#endif // #ifndef PRODUCT
- // If dead space crosses the dense prefix boundary, it is (at least
- // partially) filled with a dummy object, marked live and added to the
- // summary data. This simplifies the copy/update phase and must be done
- // before the final locations of objects are determined, to prevent leaving
- // a fragment of dead space that is too small to fill with an object.
+ // Recompute the summary data, taking into account the dense prefix. If every
+ // last byte will be reclaimed, then the existing summary data which compacts
+ // everything can be left in place.
if (!maximum_compaction && dense_prefix_end != space->bottom()) {
+ // If dead space crosses the dense prefix boundary, it is (at least
+ // partially) filled with a dummy object, marked live and added to the
+ // summary data. This simplifies the copy/update phase and must be done
+ // before the final locations of objects are determined, to prevent leaving
+ // a fragment of dead space that is too small to fill with an object.
fill_dense_prefix_end(id);
- }
- // Compute the destination of each Region, and thus each object.
- _summary_data.summarize_dense_prefix(space->bottom(), dense_prefix_end);
- _summary_data.summarize(dense_prefix_end, space->end(),
- dense_prefix_end, space->top(),
- _space_info[id].new_top_addr());
+ // Compute the destination of each Region, and thus each object.
+ _summary_data.summarize_dense_prefix(space->bottom(), dense_prefix_end);
+ _summary_data.summarize(_space_info[id].split_info(),
+ dense_prefix_end, space->top(), NULL,
+ dense_prefix_end, space->end(),
+ _space_info[id].new_top_addr());
+ }
}
if (TraceParallelOldGCSummaryPhase) {
@@ -1370,6 +1562,30 @@ PSParallelCompact::summarize_space(SpaceId id, bool maximum_compaction)
}
}
+#ifndef PRODUCT
+void PSParallelCompact::summary_phase_msg(SpaceId dst_space_id,
+ HeapWord* dst_beg, HeapWord* dst_end,
+ SpaceId src_space_id,
+ HeapWord* src_beg, HeapWord* src_end)
+{
+ if (TraceParallelOldGCSummaryPhase) {
+ tty->print_cr("summarizing %d [%s] into %d [%s]: "
+ "src=" PTR_FORMAT "-" PTR_FORMAT " "
+ SIZE_FORMAT "-" SIZE_FORMAT " "
+ "dst=" PTR_FORMAT "-" PTR_FORMAT " "
+ SIZE_FORMAT "-" SIZE_FORMAT,
+ src_space_id, space_names[src_space_id],
+ dst_space_id, space_names[dst_space_id],
+ src_beg, src_end,
+ _summary_data.addr_to_region_idx(src_beg),
+ _summary_data.addr_to_region_idx(src_end),
+ dst_beg, dst_end,
+ _summary_data.addr_to_region_idx(dst_beg),
+ _summary_data.addr_to_region_idx(dst_end));
+ }
+}
+#endif // #ifndef PRODUCT
+
void PSParallelCompact::summary_phase(ParCompactionManager* cm,
bool maximum_compaction)
{
@@ -1402,57 +1618,90 @@ void PSParallelCompact::summary_phase(ParCompactionManager* cm,
// The amount of live data that will end up in old space (assuming it fits).
size_t old_space_total_live = 0;
- unsigned int id;
- for (id = old_space_id; id < last_space_id; ++id) {
+ assert(perm_space_id < old_space_id, "should not count perm data here");
+ for (unsigned int id = old_space_id; id < last_space_id; ++id) {
old_space_total_live += pointer_delta(_space_info[id].new_top(),
_space_info[id].space()->bottom());
}
- const MutableSpace* old_space = _space_info[old_space_id].space();
+ MutableSpace* const old_space = _space_info[old_space_id].space();
if (old_space_total_live > old_space->capacity_in_words()) {
// XXX - should also try to expand
maximum_compaction = true;
- } else if (!UseParallelOldGCDensePrefix) {
- maximum_compaction = true;
}
// Permanent and Old generations.
summarize_space(perm_space_id, maximum_compaction);
summarize_space(old_space_id, maximum_compaction);
- // Summarize the remaining spaces (those in the young gen) into old space. If
- // the live data from a space doesn't fit, the existing summarization is left
- // intact, so the data is compacted down within the space itself.
- HeapWord** new_top_addr = _space_info[old_space_id].new_top_addr();
- HeapWord* const target_space_end = old_space->end();
- for (id = eden_space_id; id < last_space_id; ++id) {
+ // Summarize the remaining spaces in the young gen. The initial target space
+ // is the old gen. If a space does not fit entirely into the target, then the
+ // remainder is compacted into the space itself and that space becomes the new
+ // target.
+ SpaceId dst_space_id = old_space_id;
+ HeapWord* dst_space_end = old_space->end();
+ HeapWord** new_top_addr = _space_info[dst_space_id].new_top_addr();
+ for (unsigned int id = eden_space_id; id < last_space_id; ++id) {
const MutableSpace* space = _space_info[id].space();
const size_t live = pointer_delta(_space_info[id].new_top(),
space->bottom());
- const size_t available = pointer_delta(target_space_end, *new_top_addr);
+ const size_t available = pointer_delta(dst_space_end, *new_top_addr);
+
+ NOT_PRODUCT(summary_phase_msg(dst_space_id, *new_top_addr, dst_space_end,
+ SpaceId(id), space->bottom(), space->top());)
if (live > 0 && live <= available) {
// All the live data will fit.
- if (TraceParallelOldGCSummaryPhase) {
- tty->print_cr("summarizing %d into old_space @ " PTR_FORMAT,
- id, *new_top_addr);
- }
- _summary_data.summarize(*new_top_addr, target_space_end,
- space->bottom(), space->top(),
- new_top_addr);
+ bool done = _summary_data.summarize(_space_info[id].split_info(),
+ space->bottom(), space->top(),
+ NULL,
+ *new_top_addr, dst_space_end,
+ new_top_addr);
+ assert(done, "space must fit into old gen");
+ // XXX - this is necessary because decrement_destination_counts() tests
+ // source_region() to determine if a region will be filled. Probably
+ // better to pass src_space->new_top() into decrement_destination_counts
+ // and test that instead.
+ //
// Clear the source_region field for each region in the space.
- HeapWord* const new_top = _space_info[id].new_top();
- HeapWord* const clear_end = _summary_data.region_align_up(new_top);
- RegionData* beg_region =
- _summary_data.addr_to_region_ptr(space->bottom());
- RegionData* end_region = _summary_data.addr_to_region_ptr(clear_end);
- while (beg_region < end_region) {
- beg_region->set_source_region(0);
- ++beg_region;
- }
+ clear_source_region(space->bottom(), _space_info[id].new_top());
// Reset the new_top value for the space.
_space_info[id].set_new_top(space->bottom());
+ } else if (live > 0) {
+ // Attempt to fit part of the source space into the target space.
+ HeapWord* next_src_addr = NULL;
+ bool done = _summary_data.summarize(_space_info[id].split_info(),
+ space->bottom(), space->top(),
+ &next_src_addr,
+ *new_top_addr, dst_space_end,
+ new_top_addr);
+ assert(!done, "space should not fit into old gen");
+ assert(next_src_addr != NULL, "sanity");
+
+ // The source space becomes the new target, so the remainder is compacted
+ // within the space itself.
+ dst_space_id = SpaceId(id);
+ dst_space_end = space->end();
+ new_top_addr = _space_info[id].new_top_addr();
+ HeapWord* const clear_end = _space_info[id].new_top();
+ NOT_PRODUCT(summary_phase_msg(dst_space_id,
+ space->bottom(), dst_space_end,
+ SpaceId(id), next_src_addr, space->top());)
+ done = _summary_data.summarize(_space_info[id].split_info(),
+ next_src_addr, space->top(),
+ NULL,
+ space->bottom(), dst_space_end,
+ new_top_addr);
+ assert(done, "space must fit when compacted into itself");
+ assert(*new_top_addr <= space->top(), "usage should not grow");
+
+ // XXX - this should go away. See comments above.
+ //
+ // Clear the source_region field in regions at the end of the space that
+ // will not be filled.
+ HeapWord* const clear_beg = _summary_data.region_align_up(*new_top_addr);
+ clear_source_region(clear_beg, clear_end);
}
}
@@ -2051,14 +2300,13 @@ void PSParallelCompact::enqueue_dense_prefix_tasks(GCTaskQueue* q,
// regions in the dense prefix. Assume that 1 gc thread
// will work on opening the gaps and the remaining gc threads
// will work on the dense prefix.
- SpaceId space_id = old_space_id;
- while (space_id != last_space_id) {
+ unsigned int space_id;
+ for (space_id = old_space_id; space_id < last_space_id; ++ space_id) {
HeapWord* const dense_prefix_end = _space_info[space_id].dense_prefix();
const MutableSpace* const space = _space_info[space_id].space();
if (dense_prefix_end == space->bottom()) {
// There is no dense prefix for this space.
- space_id = next_compaction_space_id(space_id);
continue;
}
@@ -2108,23 +2356,20 @@ void PSParallelCompact::enqueue_dense_prefix_tasks(GCTaskQueue* q,
// region_index_end is not processed
size_t region_index_end = MIN2(region_index_start + regions_per_thread,
region_index_end_dense_prefix);
- q->enqueue(new UpdateDensePrefixTask(
- space_id,
- region_index_start,
- region_index_end));
+ q->enqueue(new UpdateDensePrefixTask(SpaceId(space_id),
+ region_index_start,
+ region_index_end));
region_index_start = region_index_end;
}
}
// This gets any part of the dense prefix that did not
// fit evenly.
if (region_index_start < region_index_end_dense_prefix) {
- q->enqueue(new UpdateDensePrefixTask(
- space_id,
- region_index_start,
- region_index_end_dense_prefix));
+ q->enqueue(new UpdateDensePrefixTask(SpaceId(space_id),
+ region_index_start,
+ region_index_end_dense_prefix));
}
- space_id = next_compaction_space_id(space_id);
- } // End tasks for dense prefix
+ }
}
void PSParallelCompact::enqueue_region_stealing_tasks(
@@ -2570,16 +2815,24 @@ PSParallelCompact::skip_live_words(HeapWord* beg, HeapWord* end, size_t count)
return m->bit_to_addr(cur_beg);
}
-HeapWord*
-PSParallelCompact::first_src_addr(HeapWord* const dest_addr,
- size_t src_region_idx)
+HeapWord* PSParallelCompact::first_src_addr(HeapWord* const dest_addr,
+ SpaceId src_space_id,
+ size_t src_region_idx)
{
- ParMarkBitMap* const bitmap = mark_bitmap();
+ assert(summary_data().is_region_aligned(dest_addr), "not aligned");
+
+ const SplitInfo& split_info = _space_info[src_space_id].split_info();
+ if (split_info.dest_region_addr() == dest_addr) {
+ // The partial object ending at the split point contains the first word to
+ // be copied to dest_addr.
+ return split_info.first_src_addr();
+ }
+
const ParallelCompactData& sd = summary_data();
+ ParMarkBitMap* const bitmap = mark_bitmap();
const size_t RegionSize = ParallelCompactData::RegionSize;
assert(sd.is_region_aligned(dest_addr), "not aligned");
-
const RegionData* const src_region_ptr = sd.region(src_region_idx);
const size_t partial_obj_size = src_region_ptr->partial_obj_size();
HeapWord* const src_region_destination = src_region_ptr->destination();
@@ -2740,7 +2993,7 @@ void PSParallelCompact::fill_region(ParCompactionManager* cm, size_t region_idx)
HeapWord* src_space_top = _space_info[src_space_id].space()->top();
MoveAndUpdateClosure closure(bitmap, cm, start_array, dest_addr, words);
- closure.set_source(first_src_addr(dest_addr, src_region_idx));
+ closure.set_source(first_src_addr(dest_addr, src_space_id, src_region_idx));
// Adjust src_region_idx to prepare for decrementing destination counts (the
// destination count is not decremented when a region is copied to itself).
@@ -3011,34 +3264,3 @@ void PSParallelCompact::compact_prologue() {
summary_data().calc_new_pointer(Universe::intArrayKlassObj());
}
-// The initial implementation of this method created a field
-// _next_compaction_space_id in SpaceInfo and initialized
-// that field in SpaceInfo::initialize_space_info(). That
-// required that _next_compaction_space_id be declared a
-// SpaceId in SpaceInfo and that would have required that
-// either SpaceId be declared in a separate class or that
-// it be declared in SpaceInfo. It didn't seem consistent
-// to declare it in SpaceInfo (didn't really fit logically).
-// Alternatively, defining a separate class to define SpaceId
-// seem excessive. This implementation is simple and localizes
-// the knowledge.
-
-PSParallelCompact::SpaceId
-PSParallelCompact::next_compaction_space_id(SpaceId id) {
- assert(id < last_space_id, "id out of range");
- switch (id) {
- case perm_space_id :
- return last_space_id;
- case old_space_id :
- return eden_space_id;
- case eden_space_id :
- return from_space_id;
- case from_space_id :
- return to_space_id;
- case to_space_id :
- return last_space_id;
- default:
- assert(false, "Bad space id");
- return last_space_id;
- }
-}
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
index 476c6b7d731..32f8f74a48f 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
@@ -36,6 +36,123 @@ class PreGCValues;
class MoveAndUpdateClosure;
class RefProcTaskExecutor;
+// The SplitInfo class holds the information needed to 'split' a source region
+// so that the live data can be copied to two destination *spaces*. Normally,
+// all the live data in a region is copied to a single destination space (e.g.,
+// everything live in a region in eden is copied entirely into the old gen).
+// However, when the heap is nearly full, all the live data in eden may not fit
+// into the old gen. Copying only some of the regions from eden to old gen
+// requires finding a region that does not contain a partial object (i.e., no
+// live object crosses the region boundary) somewhere near the last object that
+// does fit into the old gen. Since it's not always possible to find such a
+// region, splitting is necessary for predictable behavior.
+//
+// A region is always split at the end of the partial object. This avoids
+// additional tests when calculating the new location of a pointer, which is a
+// very hot code path. The partial object and everything to its left will be
+// copied to another space (call it dest_space_1). The live data to the right
+// of the partial object will be copied either within the space itself, or to a
+// different destination space (distinct from dest_space_1).
+//
+// Split points are identified during the summary phase, when region
+// destinations are computed: data about the split, including the
+// partial_object_size, is recorded in a SplitInfo record and the
+// partial_object_size field in the summary data is set to zero. The zeroing is
+// possible (and necessary) since the partial object will move to a different
+// destination space than anything to its right, thus the partial object should
+// not affect the locations of any objects to its right.
+//
+// The recorded data is used during the compaction phase, but only rarely: when
+// the partial object on the split region will be copied across a destination
+// region boundary. This test is made once each time a region is filled, and is
+// a simple address comparison, so the overhead is negligible (see
+// PSParallelCompact::first_src_addr()).
+//
+// Notes:
+//
+// Only regions with partial objects are split; a region without a partial
+// object does not need any extra bookkeeping.
+//
+// At most one region is split per space, so the amount of data required is
+// constant.
+//
+// A region is split only when the destination space would overflow. Once that
+// happens, the destination space is abandoned and no other data (even from
+// other source spaces) is targeted to that destination space. Abandoning the
+// destination space may leave a somewhat large unused area at the end, if a
+// large object caused the overflow.
+//
+// Future work:
+//
+// More bookkeeping would be required to continue to use the destination space.
+// The most general solution would allow data from regions in two different
+// source spaces to be "joined" in a single destination region. At the very
+// least, additional code would be required in next_src_region() to detect the
+// join and skip to an out-of-order source region. If the join region was also
+// the last destination region to which a split region was copied (the most
+// likely case), then additional work would be needed to get fill_region() to
+// stop iteration and switch to a new source region at the right point. Basic
+// idea would be to use a fake value for the top of the source space. It is
+// doable, if a bit tricky.
+//
+// A simpler (but less general) solution would fill the remainder of the
+// destination region with a dummy object and continue filling the next
+// destination region.
+
+class SplitInfo
+{
+public:
+ // Return true if this split info is valid (i.e., if a split has been
+ // recorded). The very first region cannot have a partial object and thus is
+ // never split, so 0 is the 'invalid' value.
+ bool is_valid() const { return _src_region_idx > 0; }
+
+ // Return true if this split holds data for the specified source region.
+ inline bool is_split(size_t source_region) const;
+
+ // The index of the split region, the size of the partial object on that
+ // region and the destination of the partial object.
+ size_t src_region_idx() const { return _src_region_idx; }
+ size_t partial_obj_size() const { return _partial_obj_size; }
+ HeapWord* destination() const { return _destination; }
+
+ // The destination count of the partial object referenced by this split
+ // (either 1 or 2). This must be added to the destination count of the
+ // remainder of the source region.
+ unsigned int destination_count() const { return _destination_count; }
+
+ // If a word within the partial object will be written to the first word of a
+ // destination region, this is the address of the destination region;
+ // otherwise this is NULL.
+ HeapWord* dest_region_addr() const { return _dest_region_addr; }
+
+ // If a word within the partial object will be written to the first word of a
+ // destination region, this is the address of that word within the partial
+ // object; otherwise this is NULL.
+ HeapWord* first_src_addr() const { return _first_src_addr; }
+
+ // Record the data necessary to split the region src_region_idx.
+ void record(size_t src_region_idx, size_t partial_obj_size,
+ HeapWord* destination);
+
+ void clear();
+
+ DEBUG_ONLY(void verify_clear();)
+
+private:
+ size_t _src_region_idx;
+ size_t _partial_obj_size;
+ HeapWord* _destination;
+ unsigned int _destination_count;
+ HeapWord* _dest_region_addr;
+ HeapWord* _first_src_addr;
+};
+
+inline bool SplitInfo::is_split(size_t region_idx) const
+{
+ return _src_region_idx == region_idx && is_valid();
+}
+
class SpaceInfo
{
public:
@@ -58,18 +175,23 @@ class SpaceInfo
// is no start array.
ObjectStartArray* start_array() const { return _start_array; }
+ SplitInfo& split_info() { return _split_info; }
+
void set_space(MutableSpace* s) { _space = s; }
void set_new_top(HeapWord* addr) { _new_top = addr; }
void set_min_dense_prefix(HeapWord* addr) { _min_dense_prefix = addr; }
void set_dense_prefix(HeapWord* addr) { _dense_prefix = addr; }
void set_start_array(ObjectStartArray* s) { _start_array = s; }
+ void publish_new_top() const { _space->set_top(_new_top); }
+
private:
MutableSpace* _space;
HeapWord* _new_top;
HeapWord* _min_dense_prefix;
HeapWord* _dense_prefix;
ObjectStartArray* _start_array;
+ SplitInfo _split_info;
};
class ParallelCompactData
@@ -230,9 +352,14 @@ public:
// must be region-aligned; end need not be.
void summarize_dense_prefix(HeapWord* beg, HeapWord* end);
- bool summarize(HeapWord* target_beg, HeapWord* target_end,
+ HeapWord* summarize_split_space(size_t src_region, SplitInfo& split_info,
+ HeapWord* destination, HeapWord* target_end,
+ HeapWord** target_next);
+ bool summarize(SplitInfo& split_info,
HeapWord* source_beg, HeapWord* source_end,
- HeapWord** target_next, HeapWord** source_next = 0);
+ HeapWord** source_next,
+ HeapWord* target_beg, HeapWord* target_end,
+ HeapWord** target_next);
void clear();
void clear_range(size_t beg_region, size_t end_region);
@@ -838,13 +965,13 @@ class PSParallelCompact : AllStatic {
// non-empty.
static void fill_dense_prefix_end(SpaceId id);
+ // Clear the summary data source_region field for the specified addresses.
+ static void clear_source_region(HeapWord* beg_addr, HeapWord* end_addr);
+
static void summarize_spaces_quick();
static void summarize_space(SpaceId id, bool maximum_compaction);
static void summary_phase(ParCompactionManager* cm, bool maximum_compaction);
- // The space that is compacted after space_id.
- static SpaceId next_compaction_space_id(SpaceId space_id);
-
// Adjust addresses in roots. Does not adjust addresses in heap.
static void adjust_roots();
@@ -999,6 +1126,7 @@ class PSParallelCompact : AllStatic {
// Return the address of the word to be copied to dest_addr, which must be
// aligned to a region boundary.
static HeapWord* first_src_addr(HeapWord* const dest_addr,
+ SpaceId src_space_id,
size_t src_region_idx);
// Determine the next source region, set closure.source() to the start of the
@@ -1081,6 +1209,10 @@ class PSParallelCompact : AllStatic {
const SpaceId id,
const bool maximum_compaction,
HeapWord* const addr);
+ static void summary_phase_msg(SpaceId dst_space_id,
+ HeapWord* dst_beg, HeapWord* dst_end,
+ SpaceId src_space_id,
+ HeapWord* src_beg, HeapWord* src_end);
#endif // #ifndef PRODUCT
#ifdef ASSERT
From 8fc946854cdb3b677f96cd0af7a8344c2cea6089 Mon Sep 17 00:00:00 2001
From: John Coomes
Date: Thu, 11 Dec 2008 12:05:21 -0800
Subject: [PATCH 53/68] 6765954: par compact - stress mode for splitting young
gen spaces
Reviewed-by: jmasa
---
.../parallelScavenge/psParallelCompact.cpp | 186 +++++++++++++++++-
.../parallelScavenge/psParallelCompact.hpp | 14 ++
hotspot/src/share/vm/runtime/arguments.cpp | 10 +
hotspot/src/share/vm/runtime/globals.hpp | 9 +-
4 files changed, 207 insertions(+), 12 deletions(-)
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
index 852cf5e882d..3401383fd79 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
@@ -1327,6 +1327,13 @@ HeapWord*
PSParallelCompact::compute_dense_prefix(const SpaceId id,
bool maximum_compaction)
{
+ if (ParallelOldGCSplitALot) {
+ if (_space_info[id].dense_prefix() != _space_info[id].space()->bottom()) {
+ // The value was chosen to provoke splitting a young gen space; use it.
+ return _space_info[id].dense_prefix();
+ }
+ }
+
const size_t region_size = ParallelCompactData::RegionSize;
const ParallelCompactData& sd = summary_data();
@@ -1415,6 +1422,160 @@ PSParallelCompact::compute_dense_prefix(const SpaceId id,
return sd.region_to_addr(best_cp);
}
+#ifndef PRODUCT
+void
+PSParallelCompact::fill_with_live_objects(SpaceId id, HeapWord* const start,
+ size_t words)
+{
+ if (TraceParallelOldGCSummaryPhase) {
+ tty->print_cr("fill_with_live_objects [" PTR_FORMAT " " PTR_FORMAT ") "
+ SIZE_FORMAT, start, start + words, words);
+ }
+
+ ObjectStartArray* const start_array = _space_info[id].start_array();
+ CollectedHeap::fill_with_objects(start, words);
+ for (HeapWord* p = start; p < start + words; p += oop(p)->size()) {
+ _mark_bitmap.mark_obj(p, words);
+ _summary_data.add_obj(p, words);
+ start_array->allocate_block(p);
+ }
+}
+
+void
+PSParallelCompact::summarize_new_objects(SpaceId id, HeapWord* start)
+{
+ ParallelCompactData& sd = summary_data();
+ MutableSpace* space = _space_info[id].space();
+
+ // Find the source and destination start addresses.
+ HeapWord* const src_addr = sd.region_align_down(start);
+ HeapWord* dst_addr;
+ if (src_addr < start) {
+ dst_addr = sd.addr_to_region_ptr(src_addr)->destination();
+ } else if (src_addr > space->bottom()) {
+ // The start (the original top() value) is aligned to a region boundary so
+ // the associated region does not have a destination. Compute the
+ // destination from the previous region.
+ RegionData* const cp = sd.addr_to_region_ptr(src_addr) - 1;
+ dst_addr = cp->destination() + cp->data_size();
+ } else {
+ // Filling the entire space.
+ dst_addr = space->bottom();
+ }
+ assert(dst_addr != NULL, "sanity");
+
+ // Update the summary data.
+ bool result = _summary_data.summarize(_space_info[id].split_info(),
+ src_addr, space->top(), NULL,
+ dst_addr, space->end(),
+ _space_info[id].new_top_addr());
+ assert(result, "should not fail: bad filler object size");
+}
+
+void
+PSParallelCompact::provoke_split(bool & max_compaction)
+{
+ const size_t region_size = ParallelCompactData::RegionSize;
+ ParallelCompactData& sd = summary_data();
+
+ MutableSpace* const eden_space = _space_info[eden_space_id].space();
+ MutableSpace* const from_space = _space_info[from_space_id].space();
+ const size_t eden_live = pointer_delta(eden_space->top(),
+ _space_info[eden_space_id].new_top());
+ const size_t from_live = pointer_delta(from_space->top(),
+ _space_info[from_space_id].new_top());
+
+ const size_t min_fill_size = CollectedHeap::min_fill_size();
+ const size_t eden_free = pointer_delta(eden_space->end(), eden_space->top());
+ const size_t eden_fillable = eden_free >= min_fill_size ? eden_free : 0;
+ const size_t from_free = pointer_delta(from_space->end(), from_space->top());
+ const size_t from_fillable = from_free >= min_fill_size ? from_free : 0;
+
+ // Choose the space to split; need at least 2 regions live (or fillable).
+ SpaceId id;
+ MutableSpace* space;
+ size_t live_words;
+ size_t fill_words;
+ if (eden_live + eden_fillable >= region_size * 2) {
+ id = eden_space_id;
+ space = eden_space;
+ live_words = eden_live;
+ fill_words = eden_fillable;
+ } else if (from_live + from_fillable >= region_size * 2) {
+ id = from_space_id;
+ space = from_space;
+ live_words = from_live;
+ fill_words = from_fillable;
+ } else {
+ return; // Give up.
+ }
+ assert(fill_words == 0 || fill_words >= min_fill_size, "sanity");
+
+ if (live_words < region_size * 2) {
+ // Fill from top() to end() w/live objects of mixed sizes.
+ HeapWord* const fill_start = space->top();
+ live_words += fill_words;
+
+ space->set_top(fill_start + fill_words);
+ if (ZapUnusedHeapArea) {
+ space->set_top_for_allocations();
+ }
+
+ HeapWord* cur_addr = fill_start;
+ while (fill_words > 0) {
+ const size_t r = (size_t)os::random() % (region_size / 2) + min_fill_size;
+ size_t cur_size = MIN2(align_object_size_(r), fill_words);
+ if (fill_words - cur_size < min_fill_size) {
+ cur_size = fill_words; // Avoid leaving a fragment too small to fill.
+ }
+
+ CollectedHeap::fill_with_object(cur_addr, cur_size);
+ mark_bitmap()->mark_obj(cur_addr, cur_size);
+ sd.add_obj(cur_addr, cur_size);
+
+ cur_addr += cur_size;
+ fill_words -= cur_size;
+ }
+
+ summarize_new_objects(id, fill_start);
+ }
+
+ max_compaction = false;
+
+ // Manipulate the old gen so that it has room for about half of the live data
+ // in the target young gen space (live_words / 2).
+ id = old_space_id;
+ space = _space_info[id].space();
+ const size_t free_at_end = space->free_in_words();
+ const size_t free_target = align_object_size(live_words / 2);
+ const size_t dead = pointer_delta(space->top(), _space_info[id].new_top());
+
+ if (free_at_end >= free_target + min_fill_size) {
+ // Fill space above top() and set the dense prefix so everything survives.
+ HeapWord* const fill_start = space->top();
+ const size_t fill_size = free_at_end - free_target;
+ space->set_top(space->top() + fill_size);
+ if (ZapUnusedHeapArea) {
+ space->set_top_for_allocations();
+ }
+ fill_with_live_objects(id, fill_start, fill_size);
+ summarize_new_objects(id, fill_start);
+ _space_info[id].set_dense_prefix(sd.region_align_down(space->top()));
+ } else if (dead + free_at_end > free_target) {
+ // Find a dense prefix that makes the right amount of space available.
+ HeapWord* cur = sd.region_align_down(space->top());
+ HeapWord* cur_destination = sd.addr_to_region_ptr(cur)->destination();
+ size_t dead_to_right = pointer_delta(space->end(), cur_destination);
+ while (dead_to_right < free_target) {
+ cur -= region_size;
+ cur_destination = sd.addr_to_region_ptr(cur)->destination();
+ dead_to_right = pointer_delta(space->end(), cur_destination);
+ }
+ _space_info[id].set_dense_prefix(cur);
+ }
+}
+#endif // #ifndef PRODUCT
+
void PSParallelCompact::summarize_spaces_quick()
{
for (unsigned int i = 0; i < last_space_id; ++i) {
@@ -1508,8 +1669,9 @@ void
PSParallelCompact::summarize_space(SpaceId id, bool maximum_compaction)
{
assert(id < last_space_id, "id out of range");
- assert(_space_info[id].dense_prefix() == _space_info[id].space()->bottom(),
- "should have been set in summarize_spaces_quick()");
+ assert(_space_info[id].dense_prefix() == _space_info[id].space()->bottom() ||
+ ParallelOldGCSplitALot && id == old_space_id,
+ "should have been reset in summarize_spaces_quick()");
const MutableSpace* space = _space_info[id].space();
if (_space_info[id].new_top() != space->bottom()) {
@@ -1525,15 +1687,15 @@ PSParallelCompact::summarize_space(SpaceId id, bool maximum_compaction)
}
#endif // #ifndef PRODUCT
- // Recompute the summary data, taking into account the dense prefix. If every
- // last byte will be reclaimed, then the existing summary data which compacts
- // everything can be left in place.
+ // Recompute the summary data, taking into account the dense prefix. If
+ // every last byte will be reclaimed, then the existing summary data which
+ // compacts everything can be left in place.
if (!maximum_compaction && dense_prefix_end != space->bottom()) {
// If dead space crosses the dense prefix boundary, it is (at least
// partially) filled with a dummy object, marked live and added to the
// summary data. This simplifies the copy/update phase and must be done
- // before the final locations of objects are determined, to prevent leaving
- // a fragment of dead space that is too small to fill with an object.
+ // before the final locations of objects are determined, to prevent
+ // leaving a fragment of dead space that is too small to fill.
fill_dense_prefix_end(id);
// Compute the destination of each Region, and thus each object.
@@ -1625,10 +1787,18 @@ void PSParallelCompact::summary_phase(ParCompactionManager* cm,
}
MutableSpace* const old_space = _space_info[old_space_id].space();
- if (old_space_total_live > old_space->capacity_in_words()) {
+ const size_t old_capacity = old_space->capacity_in_words();
+ if (old_space_total_live > old_capacity) {
// XXX - should also try to expand
maximum_compaction = true;
}
+#ifndef PRODUCT
+ if (ParallelOldGCSplitALot && old_space_total_live < old_capacity) {
+ if (total_invocations() % ParallelOldGCSplitInterval == 0) {
+ provoke_split(maximum_compaction);
+ }
+ }
+#endif // #ifndef PRODUCT
// Permanent and Old generations.
summarize_space(perm_space_id, maximum_compaction);
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
index 32f8f74a48f..de0dbdefd62 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
@@ -968,6 +968,20 @@ class PSParallelCompact : AllStatic {
// Clear the summary data source_region field for the specified addresses.
static void clear_source_region(HeapWord* beg_addr, HeapWord* end_addr);
+#ifndef PRODUCT
+ // Routines to provoke splitting a young gen space (ParallelOldGCSplitALot).
+
+ // Fill the region [start, start + words) with live object(s). Only usable
+ // for the old and permanent generations.
+ static void fill_with_live_objects(SpaceId id, HeapWord* const start,
+ size_t words);
+ // Include the new objects in the summary data.
+ static void summarize_new_objects(SpaceId id, HeapWord* start);
+
+ // Add live objects and/or choose the dense prefix to provoke splitting.
+ static void provoke_split(bool & maximum_compaction);
+#endif
+
static void summarize_spaces_quick();
static void summarize_space(SpaceId id, bool maximum_compaction);
static void summary_phase(ParCompactionManager* cm, bool maximum_compaction);
diff --git a/hotspot/src/share/vm/runtime/arguments.cpp b/hotspot/src/share/vm/runtime/arguments.cpp
index 831218796cf..06ff70505c9 100644
--- a/hotspot/src/share/vm/runtime/arguments.cpp
+++ b/hotspot/src/share/vm/runtime/arguments.cpp
@@ -1517,6 +1517,16 @@ bool Arguments::check_vm_args_consistency() {
MarkSweepAlwaysCompactCount = 1; // Move objects every gc.
}
+ if (UseParallelOldGC && ParallelOldGCSplitALot) {
+ // Settings to encourage splitting.
+ if (!FLAG_IS_CMDLINE(NewRatio)) {
+ FLAG_SET_CMDLINE(intx, NewRatio, 2);
+ }
+ if (!FLAG_IS_CMDLINE(ScavengeBeforeFullGC)) {
+ FLAG_SET_CMDLINE(bool, ScavengeBeforeFullGC, false);
+ }
+ }
+
status = status && verify_percentage(GCHeapFreeLimit, "GCHeapFreeLimit");
status = status && verify_percentage(GCTimeLimit, "GCTimeLimit");
if (GCTimeLimit == 100) {
diff --git a/hotspot/src/share/vm/runtime/globals.hpp b/hotspot/src/share/vm/runtime/globals.hpp
index 0a9f4d45dc8..f945bb36708 100644
--- a/hotspot/src/share/vm/runtime/globals.hpp
+++ b/hotspot/src/share/vm/runtime/globals.hpp
@@ -1203,11 +1203,12 @@ class CommandLineFlags {
product(uintx, ParallelCMSThreads, 0, \
"Max number of threads CMS will use for concurrent work") \
\
- develop(bool, ParallelOldMTUnsafeMarkBitMap, false, \
- "Use the Parallel Old MT unsafe in marking the bitmap") \
+ develop(bool, ParallelOldGCSplitALot, false, \
+ "Provoke splitting (copying data from a young gen space to" \
+ "multiple destination spaces)") \
\
- develop(bool, ParallelOldMTUnsafeUpdateLiveData, false, \
- "Use the Parallel Old MT unsafe in update of live size") \
+ develop(uintx, ParallelOldGCSplitInterval, 3, \
+ "How often to provoke splitting a young gen space") \
\
develop(bool, TraceRegionTasksQueuing, false, \
"Trace the queuing of the region tasks") \
From 552c37000d8e1e32a39b755da0c4f827d4c89440 Mon Sep 17 00:00:00 2001
From: Tom Rodriguez
Date: Fri, 12 Dec 2008 19:53:25 -0800
Subject: [PATCH 54/68] 6767587: missing call to make_not_entrant after
deoptimizing for patching volatiles
Reviewed-by: rasbold, kvn
---
hotspot/src/share/vm/c1/c1_Runtime1.cpp | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/hotspot/src/share/vm/c1/c1_Runtime1.cpp b/hotspot/src/share/vm/c1/c1_Runtime1.cpp
index 04750308db3..dcd0f282ab9 100644
--- a/hotspot/src/share/vm/c1/c1_Runtime1.cpp
+++ b/hotspot/src/share/vm/c1/c1_Runtime1.cpp
@@ -842,6 +842,13 @@ JRT_ENTRY(void, Runtime1::patch_code(JavaThread* thread, Runtime1::StubID stub_i
if (TracePatching) {
tty->print_cr("Deoptimizing for patching volatile field reference");
}
+ // It's possible the nmethod was invalidated in the last
+ // safepoint, but if it's still alive then make it not_entrant.
+ nmethod* nm = CodeCache::find_nmethod(caller_frame.pc());
+ if (nm != NULL) {
+ nm->make_not_entrant();
+ }
+
VM_DeoptimizeFrame deopt(thread, caller_frame.id());
VMThread::execute(&deopt);
From 40a81c63b8b5cf82bd23c256d4006fbe41779b26 Mon Sep 17 00:00:00 2001
From: Tom Rodriguez
Date: Fri, 12 Dec 2008 19:54:46 -0800
Subject: [PATCH 55/68] 6757316: load_constant() produces a wrong long
constant, with high a low words swapped
Reviewed-by: rasbold, jrose, kvn
---
hotspot/src/share/vm/c1/c1_LIRGenerator.cpp | 4 +-
.../test/compiler/6757316/Test6757316.java | 43 +++++++++++++++++++
2 files changed, 45 insertions(+), 2 deletions(-)
create mode 100644 hotspot/test/compiler/6757316/Test6757316.java
diff --git a/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp b/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp
index 16552a7e5d3..9b718a3d28f 100644
--- a/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp
+++ b/hotspot/src/share/vm/c1/c1_LIRGenerator.cpp
@@ -1210,8 +1210,8 @@ LIR_Opr LIRGenerator::load_constant(LIR_Const* c) {
break;
case T_LONG:
case T_DOUBLE:
- if (c->as_jint_hi_bits() != other->as_jint_lo_bits()) continue;
- if (c->as_jint_lo_bits() != other->as_jint_hi_bits()) continue;
+ if (c->as_jint_hi_bits() != other->as_jint_hi_bits()) continue;
+ if (c->as_jint_lo_bits() != other->as_jint_lo_bits()) continue;
break;
case T_OBJECT:
if (c->as_jobject() != other->as_jobject()) continue;
diff --git a/hotspot/test/compiler/6757316/Test6757316.java b/hotspot/test/compiler/6757316/Test6757316.java
new file mode 100644
index 00000000000..2efc5acd84d
--- /dev/null
+++ b/hotspot/test/compiler/6757316/Test6757316.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+/**
+ * @test
+ * @bug 6757316
+ * @summary load_constant() produces a wrong long constant, with high a low words swapped
+ * @run main/othervm -Xcomp Test6757316
+ */
+
+public class Test6757316 {
+ public static void main(String[] args) {
+ long[] arr = {
+ 0x11111111aaaaaaaaL,
+ 0xaaaaaaaa11111111L,
+ 0x11111111aaaaaaaaL,
+ 0xaaaaaaaa11111111L
+ };
+ if (arr[0] == arr[1]) {
+ throw new InternalError();
+ }
+ }
+}
From baa4663714d54352e3676dd9d1f89cd537fe65bc Mon Sep 17 00:00:00 2001
From: Tom Rodriguez
Date: Fri, 12 Dec 2008 19:55:26 -0800
Subject: [PATCH 56/68] 6758234: if (k cond (a ? : b: c)) returns reversed
answer if k is constant and b and c are longs
Reviewed-by: kvn, jrose
---
hotspot/src/share/vm/c1/c1_Optimizer.cpp | 2 -
.../test/compiler/6758234/Test6758234.java | 40 +++++++++++++++++++
2 files changed, 40 insertions(+), 2 deletions(-)
create mode 100644 hotspot/test/compiler/6758234/Test6758234.java
diff --git a/hotspot/src/share/vm/c1/c1_Optimizer.cpp b/hotspot/src/share/vm/c1/c1_Optimizer.cpp
index ea4b3a576db..1b9f77aeef2 100644
--- a/hotspot/src/share/vm/c1/c1_Optimizer.cpp
+++ b/hotspot/src/share/vm/c1/c1_Optimizer.cpp
@@ -327,8 +327,6 @@ class BlockMerger: public BlockClosure {
BlockBegin* fsux = if_->fsux();
if (swapped) {
cond = Instruction::mirror(cond);
- tsux = if_->fsux();
- fsux = if_->tsux();
}
BlockBegin* tblock = tval->compare(cond, con, tsux, fsux);
diff --git a/hotspot/test/compiler/6758234/Test6758234.java b/hotspot/test/compiler/6758234/Test6758234.java
new file mode 100644
index 00000000000..be916a2a191
--- /dev/null
+++ b/hotspot/test/compiler/6758234/Test6758234.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * This code is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 only, as
+ * published by the Free Software Foundation.
+ *
+ * This code is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+ * version 2 for more details (a copy is included in the LICENSE file that
+ * accompanied this code).
+ *
+ * You should have received a copy of the GNU General Public License version
+ * 2 along with this work; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+ *
+ * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
+ * CA 95054 USA or visit www.sun.com if you need additional information or
+ * have any questions.
+ */
+
+/**
+ * @test
+ * @bug 6758234
+ * @summary if (k cond (a ? : b: c)) returns reversed answer if k is constant and b and c are longs
+ * @run main/othervm -Xcomp -XX:CompileOnly=Test6758234.main Test6758234
+ */
+
+public class Test6758234 {
+ static int x = 0;
+ static int y = 1;
+
+ public static void main(String[] args) {
+ if (1 != ((x < y) ? 1L : 0)) {
+ throw new InternalError();
+ }
+ }
+}
From 06e37c03fb2d4bf67215a700d359d8a7539b0773 Mon Sep 17 00:00:00 2001
From: Swamy Venkataramanappa
Date: Mon, 15 Dec 2008 13:58:57 -0800
Subject: [PATCH 57/68] 6653214: MemoryPoolMXBean.setUsageThreshold() does not
support large heap sizes
Reviewed-by: ysr, mchung
---
.../gc_implementation/g1/heapRegionRemSet.cpp | 2 +-
.../src/share/vm/memory/cardTableModRefBS.cpp | 2 +-
.../src/share/vm/memory/cardTableModRefBS.hpp | 2 +-
hotspot/src/share/vm/runtime/arguments.cpp | 49 ++++++++++---------
hotspot/src/share/vm/runtime/arguments.hpp | 6 +--
hotspot/src/share/vm/services/management.cpp | 8 +--
6 files changed, 37 insertions(+), 32 deletions(-)
diff --git a/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp b/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp
index f2d262ebfb5..e2b15ca37c9 100644
--- a/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp
+++ b/hotspot/src/share/vm/gc_implementation/g1/heapRegionRemSet.cpp
@@ -181,7 +181,7 @@ public:
void scrub(CardTableModRefBS* ctbs, BitMap* card_bm) {
HeapWord* hr_bot = hr()->bottom();
- int hr_first_card_index = ctbs->index_for(hr_bot);
+ size_t hr_first_card_index = ctbs->index_for(hr_bot);
bm()->set_intersection_at_offset(*card_bm, hr_first_card_index);
#if PRT_COUNT_OCCUPIED
recount_occupied();
diff --git a/hotspot/src/share/vm/memory/cardTableModRefBS.cpp b/hotspot/src/share/vm/memory/cardTableModRefBS.cpp
index 8a006a4042b..ee9ed1fc8be 100644
--- a/hotspot/src/share/vm/memory/cardTableModRefBS.cpp
+++ b/hotspot/src/share/vm/memory/cardTableModRefBS.cpp
@@ -283,7 +283,7 @@ void CardTableModRefBS::resize_covered_region(MemRegion new_region) {
} else {
entry = byte_after(old_region.last());
}
- assert(index_for(new_region.last()) < (int) _guard_index,
+ assert(index_for(new_region.last()) < _guard_index,
"The guard card will be overwritten");
// This line commented out cleans the newly expanded region and
// not the aligned up expanded region.
diff --git a/hotspot/src/share/vm/memory/cardTableModRefBS.hpp b/hotspot/src/share/vm/memory/cardTableModRefBS.hpp
index 440d42c6ac1..9a48ab5497d 100644
--- a/hotspot/src/share/vm/memory/cardTableModRefBS.hpp
+++ b/hotspot/src/share/vm/memory/cardTableModRefBS.hpp
@@ -428,7 +428,7 @@ public:
}
// Mapping from address to card marking array index.
- int index_for(void* p) {
+ size_t index_for(void* p) {
assert(_whole_heap.contains(p),
"out of bounds access to card marking array");
return byte_for(p) - _byte_map;
diff --git a/hotspot/src/share/vm/runtime/arguments.cpp b/hotspot/src/share/vm/runtime/arguments.cpp
index 06ff70505c9..b9c943d10b2 100644
--- a/hotspot/src/share/vm/runtime/arguments.cpp
+++ b/hotspot/src/share/vm/runtime/arguments.cpp
@@ -444,9 +444,9 @@ char* SysClassPath::add_jars_to_path(char* path, const char* directory) {
}
// Parses a memory size specification string.
-static bool atomll(const char *s, jlong* result) {
- jlong n = 0;
- int args_read = sscanf(s, os::jlong_format_specifier(), &n);
+static bool atomull(const char *s, julong* result) {
+ julong n = 0;
+ int args_read = sscanf(s, os::julong_format_specifier(), &n);
if (args_read != 1) {
return false;
}
@@ -460,15 +460,20 @@ static bool atomll(const char *s, jlong* result) {
switch (*s) {
case 'T': case 't':
*result = n * G * K;
+ // Check for overflow.
+ if (*result/((julong)G * K) != n) return false;
return true;
case 'G': case 'g':
*result = n * G;
+ if (*result/G != n) return false;
return true;
case 'M': case 'm':
*result = n * M;
+ if (*result/M != n) return false;
return true;
case 'K': case 'k':
*result = n * K;
+ if (*result/K != n) return false;
return true;
case '\0':
*result = n;
@@ -478,10 +483,10 @@ static bool atomll(const char *s, jlong* result) {
}
}
-Arguments::ArgsRange Arguments::check_memory_size(jlong size, jlong min_size) {
+Arguments::ArgsRange Arguments::check_memory_size(julong size, julong min_size) {
if (size < min_size) return arg_too_small;
// Check that size will fit in a size_t (only relevant on 32-bit)
- if ((julong) size > max_uintx) return arg_too_big;
+ if (size > max_uintx) return arg_too_big;
return arg_in_range;
}
@@ -522,10 +527,10 @@ static bool set_fp_numeric_flag(char* name, char* value, FlagValueOrigin origin)
static bool set_numeric_flag(char* name, char* value, FlagValueOrigin origin) {
- jlong v;
+ julong v;
intx intx_v;
bool is_neg = false;
- // Check the sign first since atomll() parses only unsigned values.
+ // Check the sign first since atomull() parses only unsigned values.
if (*value == '-') {
if (!CommandLineFlags::intxAt(name, &intx_v)) {
return false;
@@ -533,7 +538,7 @@ static bool set_numeric_flag(char* name, char* value, FlagValueOrigin origin) {
value++;
is_neg = true;
}
- if (!atomll(value, &v)) {
+ if (!atomull(value, &v)) {
return false;
}
intx_v = (intx) v;
@@ -1677,9 +1682,9 @@ static bool match_option(const JavaVMOption* option, const char** names, const c
}
Arguments::ArgsRange Arguments::parse_memory_size(const char* s,
- jlong* long_arg,
- jlong min_size) {
- if (!atomll(s, long_arg)) return arg_unreadable;
+ julong* long_arg,
+ julong min_size) {
+ if (!atomull(s, long_arg)) return arg_unreadable;
return check_memory_size(*long_arg, min_size);
}
@@ -1857,7 +1862,7 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
FLAG_SET_CMDLINE(bool, BackgroundCompilation, false);
// -Xmn for compatibility with other JVM vendors
} else if (match_option(option, "-Xmn", &tail)) {
- jlong long_initial_eden_size = 0;
+ julong long_initial_eden_size = 0;
ArgsRange errcode = parse_memory_size(tail, &long_initial_eden_size, 1);
if (errcode != arg_in_range) {
jio_fprintf(defaultStream::error_stream(),
@@ -1869,7 +1874,7 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
FLAG_SET_CMDLINE(uintx, NewSize, (size_t) long_initial_eden_size);
// -Xms
} else if (match_option(option, "-Xms", &tail)) {
- jlong long_initial_heap_size = 0;
+ julong long_initial_heap_size = 0;
ArgsRange errcode = parse_memory_size(tail, &long_initial_heap_size, 1);
if (errcode != arg_in_range) {
jio_fprintf(defaultStream::error_stream(),
@@ -1882,7 +1887,7 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
set_min_heap_size(initial_heap_size());
// -Xmx
} else if (match_option(option, "-Xmx", &tail)) {
- jlong long_max_heap_size = 0;
+ julong long_max_heap_size = 0;
ArgsRange errcode = parse_memory_size(tail, &long_max_heap_size, 1);
if (errcode != arg_in_range) {
jio_fprintf(defaultStream::error_stream(),
@@ -1915,7 +1920,7 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
}
// -Xss
} else if (match_option(option, "-Xss", &tail)) {
- jlong long_ThreadStackSize = 0;
+ julong long_ThreadStackSize = 0;
ArgsRange errcode = parse_memory_size(tail, &long_ThreadStackSize, 1000);
if (errcode != arg_in_range) {
jio_fprintf(defaultStream::error_stream(),
@@ -1931,9 +1936,9 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
// HotSpot does not have separate native and Java stacks, ignore silently for compatibility
// -Xmaxjitcodesize
} else if (match_option(option, "-Xmaxjitcodesize", &tail)) {
- jlong long_ReservedCodeCacheSize = 0;
+ julong long_ReservedCodeCacheSize = 0;
ArgsRange errcode = parse_memory_size(tail, &long_ReservedCodeCacheSize,
- InitialCodeCacheSize);
+ (size_t)InitialCodeCacheSize);
if (errcode != arg_in_range) {
jio_fprintf(defaultStream::error_stream(),
"Invalid maximum code cache size: %s\n",
@@ -2238,7 +2243,7 @@ jint Arguments::parse_each_vm_init_arg(const JavaVMInitArgs* args,
} else if (match_option(option, "-XX:TLEFragmentationRatio=", &tail)) {
// No longer used.
} else if (match_option(option, "-XX:TLESize=", &tail)) {
- jlong long_tlab_size = 0;
+ julong long_tlab_size = 0;
ArgsRange errcode = parse_memory_size(tail, &long_tlab_size, 1);
if (errcode != arg_in_range) {
jio_fprintf(defaultStream::error_stream(),
@@ -2293,7 +2298,7 @@ SOLARIS_ONLY(
"-XX:ParCMSPromoteBlocksToClaim in the future\n");
} else
if (match_option(option, "-XX:ParallelGCOldGenAllocBufferSize=", &tail)) {
- jlong old_plab_size = 0;
+ julong old_plab_size = 0;
ArgsRange errcode = parse_memory_size(tail, &old_plab_size, 1);
if (errcode != arg_in_range) {
jio_fprintf(defaultStream::error_stream(),
@@ -2301,13 +2306,13 @@ SOLARIS_ONLY(
describe_range_error(errcode);
return JNI_EINVAL;
}
- FLAG_SET_CMDLINE(uintx, OldPLABSize, (julong)old_plab_size);
+ FLAG_SET_CMDLINE(uintx, OldPLABSize, old_plab_size);
jio_fprintf(defaultStream::error_stream(),
"Please use -XX:OldPLABSize in place of "
"-XX:ParallelGCOldGenAllocBufferSize in the future\n");
} else
if (match_option(option, "-XX:ParallelGCToSpaceAllocBufferSize=", &tail)) {
- jlong young_plab_size = 0;
+ julong young_plab_size = 0;
ArgsRange errcode = parse_memory_size(tail, &young_plab_size, 1);
if (errcode != arg_in_range) {
jio_fprintf(defaultStream::error_stream(),
@@ -2315,7 +2320,7 @@ SOLARIS_ONLY(
describe_range_error(errcode);
return JNI_EINVAL;
}
- FLAG_SET_CMDLINE(uintx, YoungPLABSize, (julong)young_plab_size);
+ FLAG_SET_CMDLINE(uintx, YoungPLABSize, young_plab_size);
jio_fprintf(defaultStream::error_stream(),
"Please use -XX:YoungPLABSize in place of "
"-XX:ParallelGCToSpaceAllocBufferSize in the future\n");
diff --git a/hotspot/src/share/vm/runtime/arguments.hpp b/hotspot/src/share/vm/runtime/arguments.hpp
index 5dfd4aa78f9..b5dca5b90de 100644
--- a/hotspot/src/share/vm/runtime/arguments.hpp
+++ b/hotspot/src/share/vm/runtime/arguments.hpp
@@ -339,9 +339,9 @@ class Arguments : AllStatic {
}
static bool verify_percentage(uintx value, const char* name);
static void describe_range_error(ArgsRange errcode);
- static ArgsRange check_memory_size(jlong size, jlong min_size);
- static ArgsRange parse_memory_size(const char* s, jlong* long_arg,
- jlong min_size);
+ static ArgsRange check_memory_size(julong size, julong min_size);
+ static ArgsRange parse_memory_size(const char* s, julong* long_arg,
+ julong min_size);
// methods to build strings from individual args
static void build_jvm_args(const char* arg);
diff --git a/hotspot/src/share/vm/services/management.cpp b/hotspot/src/share/vm/services/management.cpp
index 387deee7325..f58e546ea13 100644
--- a/hotspot/src/share/vm/services/management.cpp
+++ b/hotspot/src/share/vm/services/management.cpp
@@ -694,10 +694,10 @@ JVM_ENTRY(jlong, jmm_SetPoolThreshold(JNIEnv* env, jobject obj, jmmThresholdType
-1);
}
- if (threshold > max_intx) {
- THROW_MSG_(vmSymbols::java_lang_IllegalArgumentException(),
- "Invalid threshold value > max value of size_t",
- -1);
+ if ((size_t)threshold > max_uintx) {
+ stringStream st;
+ st.print("Invalid valid threshold value. Threshold value (" UINT64_FORMAT ") > max value of size_t (" SIZE_FORMAT ")", (size_t)threshold, max_uintx);
+ THROW_MSG_(vmSymbols::java_lang_IllegalArgumentException(), st.as_string(), -1);
}
MemoryPool* pool = get_memory_pool_from_jobject(obj, CHECK_(0L));
From 29488f121677e9b90f63ccdaef20effff0069c45 Mon Sep 17 00:00:00 2001
From: Vladimir Kozlov
Date: Tue, 16 Dec 2008 12:23:39 -0800
Subject: [PATCH 58/68] 6782820: Server VM fails with "unhandled implicit
exception in compiled code"
Restore the code which sets a control edge for a klass load node.
Reviewed-by: never
---
hotspot/src/share/vm/opto/compile.cpp | 1 +
hotspot/src/share/vm/opto/macro.cpp | 7 +++++++
2 files changed, 8 insertions(+)
diff --git a/hotspot/src/share/vm/opto/compile.cpp b/hotspot/src/share/vm/opto/compile.cpp
index f9b3392d0f2..1832c63b33e 100644
--- a/hotspot/src/share/vm/opto/compile.cpp
+++ b/hotspot/src/share/vm/opto/compile.cpp
@@ -2192,6 +2192,7 @@ static void final_graph_reshaping_impl( Node *n, Final_Reshape_Counts &fpu ) {
case Op_DecodeN:
assert(!n->in(1)->is_EncodeP(), "should be optimized out");
+ assert(n->in(0) == NULL, "no control");
break;
case Op_EncodeP: {
diff --git a/hotspot/src/share/vm/opto/macro.cpp b/hotspot/src/share/vm/opto/macro.cpp
index 1152917d907..4d74a434fec 100644
--- a/hotspot/src/share/vm/opto/macro.cpp
+++ b/hotspot/src/share/vm/opto/macro.cpp
@@ -1724,6 +1724,13 @@ void PhaseMacroExpand::expand_lock_node(LockNode *lock) {
if (klass_node == NULL) {
Node* k_adr = basic_plus_adr(obj, oopDesc::klass_offset_in_bytes());
klass_node = transform_later( LoadKlassNode::make(_igvn, mem, k_adr, _igvn.type(k_adr)->is_ptr()) );
+#ifdef _LP64
+ if (UseCompressedOops && klass_node->is_DecodeN()) {
+ assert(klass_node->in(1)->Opcode() == Op_LoadNKlass, "sanity");
+ klass_node->in(1)->init_req(0, ctrl);
+ } else
+#endif
+ klass_node->init_req(0, ctrl);
}
Node *proto_node = make_load(ctrl, mem, klass_node, Klass::prototype_header_offset_in_bytes() + sizeof(oopDesc), TypeX_X, TypeX_X->basic_type());
From a88e734cac20513dad31cffa396a49200f6792e6 Mon Sep 17 00:00:00 2001
From: John Coomes
Date: Thu, 18 Dec 2008 01:27:04 -0800
Subject: [PATCH 59/68] 6786195: many nsk.monitoring tests fail with -server
-Xcomp
Remove Universe::_fillerArrayKlassObj and associated code
Reviewed-by: jmasa, tonyp
---
hotspot/src/share/vm/gc_interface/collectedHeap.cpp | 3 +--
hotspot/src/share/vm/memory/universe.cpp | 4 ----
hotspot/src/share/vm/memory/universe.hpp | 2 --
3 files changed, 1 insertion(+), 8 deletions(-)
diff --git a/hotspot/src/share/vm/gc_interface/collectedHeap.cpp b/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
index 4e0f7e8813e..3e5cf87c1d4 100644
--- a/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
+++ b/hotspot/src/share/vm/gc_interface/collectedHeap.cpp
@@ -178,8 +178,7 @@ CollectedHeap::fill_with_array(HeapWord* start, size_t words)
// Set the length first for concurrent GC.
((arrayOop)start)->set_length((int)len);
- post_allocation_setup_common(Universe::fillerArrayKlassObj(), start,
- words);
+ post_allocation_setup_common(Universe::intArrayKlassObj(), start, words);
DEBUG_ONLY(zap_filler_array(start, words);)
}
diff --git a/hotspot/src/share/vm/memory/universe.cpp b/hotspot/src/share/vm/memory/universe.cpp
index 567e10145bf..88243f2d56c 100644
--- a/hotspot/src/share/vm/memory/universe.cpp
+++ b/hotspot/src/share/vm/memory/universe.cpp
@@ -49,7 +49,6 @@ klassOop Universe::_constantPoolKlassObj = NULL;
klassOop Universe::_constantPoolCacheKlassObj = NULL;
klassOop Universe::_compiledICHolderKlassObj = NULL;
klassOop Universe::_systemObjArrayKlassObj = NULL;
-klassOop Universe::_fillerArrayKlassObj = NULL;
oop Universe::_int_mirror = NULL;
oop Universe::_float_mirror = NULL;
oop Universe::_double_mirror = NULL;
@@ -127,7 +126,6 @@ void Universe::system_classes_do(void f(klassOop)) {
f(instanceKlassKlassObj());
f(constantPoolKlassObj());
f(systemObjArrayKlassObj());
- f(fillerArrayKlassObj());
}
void Universe::oops_do(OopClosure* f, bool do_all) {
@@ -182,7 +180,6 @@ void Universe::oops_do(OopClosure* f, bool do_all) {
f->do_oop((oop*)&_constantPoolCacheKlassObj);
f->do_oop((oop*)&_compiledICHolderKlassObj);
f->do_oop((oop*)&_systemObjArrayKlassObj);
- f->do_oop((oop*)&_fillerArrayKlassObj);
f->do_oop((oop*)&_the_empty_byte_array);
f->do_oop((oop*)&_the_empty_short_array);
f->do_oop((oop*)&_the_empty_int_array);
@@ -268,7 +265,6 @@ void Universe::genesis(TRAPS) {
_compiledICHolderKlassObj = compiledICHolderKlass::create_klass(CHECK);
_systemObjArrayKlassObj = objArrayKlassKlass::cast(objArrayKlassKlassObj())->allocate_system_objArray_klass(CHECK);
- _fillerArrayKlassObj = typeArrayKlass::create_klass(T_INT, sizeof(jint), "", CHECK);
_the_empty_byte_array = oopFactory::new_permanent_byteArray(0, CHECK);
_the_empty_short_array = oopFactory::new_permanent_shortArray(0, CHECK);
diff --git a/hotspot/src/share/vm/memory/universe.hpp b/hotspot/src/share/vm/memory/universe.hpp
index 0476d8af531..45c9f96d21f 100644
--- a/hotspot/src/share/vm/memory/universe.hpp
+++ b/hotspot/src/share/vm/memory/universe.hpp
@@ -133,7 +133,6 @@ class Universe: AllStatic {
static klassOop _constantPoolCacheKlassObj;
static klassOop _compiledICHolderKlassObj;
static klassOop _systemObjArrayKlassObj;
- static klassOop _fillerArrayKlassObj;
// Known objects in the VM
@@ -266,7 +265,6 @@ class Universe: AllStatic {
static klassOop constantPoolCacheKlassObj() { return _constantPoolCacheKlassObj; }
static klassOop compiledICHolderKlassObj() { return _compiledICHolderKlassObj; }
static klassOop systemObjArrayKlassObj() { return _systemObjArrayKlassObj; }
- static klassOop fillerArrayKlassObj() { return _fillerArrayKlassObj; }
// Known objects in tbe VM
static oop int_mirror() { return check_mirror(_int_mirror);
From f90394b6fb27faacf5f848b0e7cb95f101474e54 Mon Sep 17 00:00:00 2001
From: John Coomes
Date: Thu, 18 Dec 2008 10:53:35 -0800
Subject: [PATCH 60/68] 6784849: par compact - can fail when to_space is
non-empty
Reviewed-by: jmasa, tonyp
---
.../parallelScavenge/psParallelCompact.cpp | 64 ++++++++++---------
.../parallelScavenge/psParallelCompact.hpp | 15 ++++-
2 files changed, 47 insertions(+), 32 deletions(-)
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
index 3401383fd79..db264cc4d09 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
@@ -726,7 +726,7 @@ HeapWord* ParallelCompactData::calc_new_pointer(HeapWord* addr) {
size_t live_to_left = bitmap->live_words_in_range(search_start, oop(addr));
result += partial_obj_size + live_to_left;
- assert(result <= addr, "object cannot move to the right");
+ DEBUG_ONLY(PSParallelCompact::check_new_location(addr, result);)
return result;
}
@@ -1828,14 +1828,6 @@ void PSParallelCompact::summary_phase(ParCompactionManager* cm,
new_top_addr);
assert(done, "space must fit into old gen");
- // XXX - this is necessary because decrement_destination_counts() tests
- // source_region() to determine if a region will be filled. Probably
- // better to pass src_space->new_top() into decrement_destination_counts
- // and test that instead.
- //
- // Clear the source_region field for each region in the space.
- clear_source_region(space->bottom(), _space_info[id].new_top());
-
// Reset the new_top value for the space.
_space_info[id].set_new_top(space->bottom());
} else if (live > 0) {
@@ -1854,7 +1846,6 @@ void PSParallelCompact::summary_phase(ParCompactionManager* cm,
dst_space_id = SpaceId(id);
dst_space_end = space->end();
new_top_addr = _space_info[id].new_top_addr();
- HeapWord* const clear_end = _space_info[id].new_top();
NOT_PRODUCT(summary_phase_msg(dst_space_id,
space->bottom(), dst_space_end,
SpaceId(id), next_src_addr, space->top());)
@@ -1865,13 +1856,6 @@ void PSParallelCompact::summary_phase(ParCompactionManager* cm,
new_top_addr);
assert(done, "space must fit when compacted into itself");
assert(*new_top_addr <= space->top(), "usage should not grow");
-
- // XXX - this should go away. See comments above.
- //
- // Clear the source_region field in regions at the end of the space that
- // will not be filled.
- HeapWord* const clear_beg = _summary_data.region_align_up(*new_top_addr);
- clear_source_region(clear_beg, clear_end);
}
}
@@ -3051,19 +3035,34 @@ HeapWord* PSParallelCompact::first_src_addr(HeapWord* const dest_addr,
}
void PSParallelCompact::decrement_destination_counts(ParCompactionManager* cm,
+ SpaceId src_space_id,
size_t beg_region,
HeapWord* end_addr)
{
ParallelCompactData& sd = summary_data();
+
+#ifdef ASSERT
+ MutableSpace* const src_space = _space_info[src_space_id].space();
+ HeapWord* const beg_addr = sd.region_to_addr(beg_region);
+ assert(src_space->contains(beg_addr) || beg_addr == src_space->end(),
+ "src_space_id does not match beg_addr");
+ assert(src_space->contains(end_addr) || end_addr == src_space->end(),
+ "src_space_id does not match end_addr");
+#endif // #ifdef ASSERT
+
RegionData* const beg = sd.region(beg_region);
- HeapWord* const end_addr_aligned_up = sd.region_align_up(end_addr);
- RegionData* const end = sd.addr_to_region_ptr(end_addr_aligned_up);
- size_t cur_idx = beg_region;
- for (RegionData* cur = beg; cur < end; ++cur, ++cur_idx) {
+ RegionData* const end = sd.addr_to_region_ptr(sd.region_align_up(end_addr));
+
+ // Regions up to new_top() are enqueued if they become available.
+ HeapWord* const new_top = _space_info[src_space_id].new_top();
+ RegionData* const enqueue_end =
+ sd.addr_to_region_ptr(sd.region_align_up(new_top));
+
+ for (RegionData* cur = beg; cur < end; ++cur) {
assert(cur->data_size() > 0, "region must have live data");
cur->decrement_destination_count();
- if (cur_idx <= cur->source_region() && cur->available() && cur->claim()) {
- cm->save_for_processing(cur_idx);
+ if (cur < enqueue_end && cur->available() && cur->claim()) {
+ cm->save_for_processing(sd.region(cur));
}
}
}
@@ -3178,7 +3177,8 @@ void PSParallelCompact::fill_region(ParCompactionManager* cm, size_t region_idx)
HeapWord* const old_src_addr = closure.source();
closure.copy_partial_obj();
if (closure.is_full()) {
- decrement_destination_counts(cm, src_region_idx, closure.source());
+ decrement_destination_counts(cm, src_space_id, src_region_idx,
+ closure.source());
region_ptr->set_deferred_obj_addr(NULL);
region_ptr->set_completed();
return;
@@ -3187,7 +3187,7 @@ void PSParallelCompact::fill_region(ParCompactionManager* cm, size_t region_idx)
HeapWord* const end_addr = sd.region_align_down(closure.source());
if (sd.region_align_down(old_src_addr) != end_addr) {
// The partial object was copied from more than one source region.
- decrement_destination_counts(cm, src_region_idx, end_addr);
+ decrement_destination_counts(cm, src_space_id, src_region_idx, end_addr);
// Move to the next source region, possibly switching spaces as well. All
// args except end_addr may be modified.
@@ -3227,19 +3227,21 @@ void PSParallelCompact::fill_region(ParCompactionManager* cm, size_t region_idx)
region_ptr->set_deferred_obj_addr(closure.destination());
status = closure.copy_until_full(); // copies from closure.source()
- decrement_destination_counts(cm, src_region_idx, closure.source());
+ decrement_destination_counts(cm, src_space_id, src_region_idx,
+ closure.source());
region_ptr->set_completed();
return;
}
if (status == ParMarkBitMap::full) {
- decrement_destination_counts(cm, src_region_idx, closure.source());
+ decrement_destination_counts(cm, src_space_id, src_region_idx,
+ closure.source());
region_ptr->set_deferred_obj_addr(NULL);
region_ptr->set_completed();
return;
}
- decrement_destination_counts(cm, src_region_idx, end_addr);
+ decrement_destination_counts(cm, src_space_id, src_region_idx, end_addr);
// Move to the next source region, possibly switching spaces as well. All
// args except end_addr may be modified.
@@ -3318,7 +3320,7 @@ void PSParallelCompact::reset_millis_since_last_gc() {
ParMarkBitMap::IterationStatus MoveAndUpdateClosure::copy_until_full()
{
if (source() != destination()) {
- assert(source() > destination(), "must copy to the left");
+ DEBUG_ONLY(PSParallelCompact::check_new_location(source(), destination());)
Copy::aligned_conjoint_words(source(), destination(), words_remaining());
}
update_state(words_remaining());
@@ -3339,7 +3341,7 @@ void MoveAndUpdateClosure::copy_partial_obj()
// This test is necessary; if omitted, the pointer updates to a partial object
// that crosses the dense prefix boundary could be overwritten.
if (source() != destination()) {
- assert(source() > destination(), "must copy to the left");
+ DEBUG_ONLY(PSParallelCompact::check_new_location(source(), destination());)
Copy::aligned_conjoint_words(source(), destination(), words);
}
update_state(words);
@@ -3364,7 +3366,7 @@ MoveAndUpdateClosure::do_addr(HeapWord* addr, size_t words) {
}
if (destination() != source()) {
- assert(destination() < source(), "must copy to the left");
+ DEBUG_ONLY(PSParallelCompact::check_new_location(source(), destination());)
Copy::aligned_conjoint_words(source(), destination(), words);
}
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
index de0dbdefd62..e1e47305bb6 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
@@ -1154,8 +1154,10 @@ class PSParallelCompact : AllStatic {
HeapWord* end_addr);
// Decrement the destination count for each non-empty source region in the
- // range [beg_region, region(region_align_up(end_addr))).
+ // range [beg_region, region(region_align_up(end_addr))). If the destination
+ // count for a region goes to 0 and it needs to be filled, enqueue it.
static void decrement_destination_counts(ParCompactionManager* cm,
+ SpaceId src_space_id,
size_t beg_region,
HeapWord* end_addr);
@@ -1230,6 +1232,8 @@ class PSParallelCompact : AllStatic {
#endif // #ifndef PRODUCT
#ifdef ASSERT
+ // Sanity check the new location of a word in the heap.
+ static inline void check_new_location(HeapWord* old_addr, HeapWord* new_addr);
// Verify that all the regions have been emptied.
static void verify_complete(SpaceId space_id);
#endif // #ifdef ASSERT
@@ -1397,6 +1401,15 @@ inline void PSParallelCompact::adjust_pointer(T* p,
}
}
+#ifdef ASSERT
+inline void
+PSParallelCompact::check_new_location(HeapWord* old_addr, HeapWord* new_addr)
+{
+ assert(old_addr >= new_addr || space_id(old_addr) != space_id(new_addr),
+ "must move left or to a different space");
+}
+#endif // ASSERT
+
class MoveAndUpdateClosure: public ParMarkBitMapClosure {
public:
inline MoveAndUpdateClosure(ParMarkBitMap* bitmap, ParCompactionManager* cm,
From f3c34ce9b6b871ad3299824c5930360ca5685f42 Mon Sep 17 00:00:00 2001
From: John Coomes
Date: Thu, 18 Dec 2008 10:54:01 -0800
Subject: [PATCH 61/68] 6786188: par compact - "SplitALot" stress mode should
fill to_space
Reviewed-by: jmasa, tonyp
---
.../parallelScavenge/psParallelCompact.cpp | 54 +++++++++++++++++--
.../parallelScavenge/psParallelCompact.hpp | 4 ++
2 files changed, 55 insertions(+), 3 deletions(-)
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
index db264cc4d09..5d693905c98 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp
@@ -1472,9 +1472,53 @@ PSParallelCompact::summarize_new_objects(SpaceId id, HeapWord* start)
assert(result, "should not fail: bad filler object size");
}
+void
+PSParallelCompact::provoke_split_fill_survivor(SpaceId id)
+{
+ if (total_invocations() % (ParallelOldGCSplitInterval * 3) != 0) {
+ return;
+ }
+
+ MutableSpace* const space = _space_info[id].space();
+ if (space->is_empty()) {
+ HeapWord* b = space->bottom();
+ HeapWord* t = b + space->capacity_in_words() / 2;
+ space->set_top(t);
+ if (ZapUnusedHeapArea) {
+ space->set_top_for_allocations();
+ }
+
+ size_t obj_len = 8;
+ while (b + obj_len <= t) {
+ CollectedHeap::fill_with_object(b, obj_len);
+ mark_bitmap()->mark_obj(b, obj_len);
+ summary_data().add_obj(b, obj_len);
+ b += obj_len;
+ obj_len = (obj_len & 0x18) + 8; // 8 16 24 32 8 16 24 32 ...
+ }
+ if (b < t) {
+ // The loop didn't completely fill to t (top); adjust top downward.
+ space->set_top(b);
+ if (ZapUnusedHeapArea) {
+ space->set_top_for_allocations();
+ }
+ }
+
+ HeapWord** nta = _space_info[id].new_top_addr();
+ bool result = summary_data().summarize(_space_info[id].split_info(),
+ space->bottom(), space->top(), NULL,
+ space->bottom(), space->end(), nta);
+ assert(result, "space must fit into itself");
+ }
+}
+
void
PSParallelCompact::provoke_split(bool & max_compaction)
{
+ if (total_invocations() % ParallelOldGCSplitInterval != 0) {
+ return;
+ }
+
const size_t region_size = ParallelCompactData::RegionSize;
ParallelCompactData& sd = summary_data();
@@ -1587,6 +1631,12 @@ void PSParallelCompact::summarize_spaces_quick()
assert(result, "space must fit into itself");
_space_info[i].set_dense_prefix(space->bottom());
}
+
+#ifndef PRODUCT
+ if (ParallelOldGCSplitALot) {
+ provoke_split_fill_survivor(to_space_id);
+ }
+#endif // #ifndef PRODUCT
}
void PSParallelCompact::fill_dense_prefix_end(SpaceId id)
@@ -1794,9 +1844,7 @@ void PSParallelCompact::summary_phase(ParCompactionManager* cm,
}
#ifndef PRODUCT
if (ParallelOldGCSplitALot && old_space_total_live < old_capacity) {
- if (total_invocations() % ParallelOldGCSplitInterval == 0) {
- provoke_split(maximum_compaction);
- }
+ provoke_split(maximum_compaction);
}
#endif // #ifndef PRODUCT
diff --git a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
index e1e47305bb6..eb9ed0fc86b 100644
--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp
@@ -978,6 +978,10 @@ class PSParallelCompact : AllStatic {
// Include the new objects in the summary data.
static void summarize_new_objects(SpaceId id, HeapWord* start);
+ // Add live objects to a survivor space since it's rare that both survivors
+ // are non-empty.
+ static void provoke_split_fill_survivor(SpaceId id);
+
// Add live objects and/or choose the dense prefix to provoke splitting.
static void provoke_split(bool & maximum_compaction);
#endif
From 744c80add40b1c9cbb44a81a233410c278e3fb05 Mon Sep 17 00:00:00 2001
From: Vladimir Kozlov
Date: Thu, 18 Dec 2008 11:26:22 -0800
Subject: [PATCH 62/68] 6787050: assert(n->in(0) == 0L,"no control") with
UseCompressedOops on sparcv9
Relax the assert for Sparc.
Reviewed-by: never
---
hotspot/src/share/vm/opto/compile.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/hotspot/src/share/vm/opto/compile.cpp b/hotspot/src/share/vm/opto/compile.cpp
index 1832c63b33e..de05e5fb84a 100644
--- a/hotspot/src/share/vm/opto/compile.cpp
+++ b/hotspot/src/share/vm/opto/compile.cpp
@@ -2192,7 +2192,9 @@ static void final_graph_reshaping_impl( Node *n, Final_Reshape_Counts &fpu ) {
case Op_DecodeN:
assert(!n->in(1)->is_EncodeP(), "should be optimized out");
- assert(n->in(0) == NULL, "no control");
+ // DecodeN could be pinned on Sparc where it can't be fold into
+ // an address expression, see the code for Op_CastPP above.
+ assert(n->in(0) == NULL || !Matcher::clone_shift_expressions, "no control except on sparc");
break;
case Op_EncodeP: {
From 0f5687c1ebfcce08971404b5b7c7c05f5daf27a5 Mon Sep 17 00:00:00 2001
From: Poonam Bajaj
Date: Thu, 18 Dec 2008 17:28:41 -0800
Subject: [PATCH 63/68] 6786340: hs14b09a pit: a lot of tests failed in
"-server -Xcomp" on solaris-amd64 using fastdebug bits
Fixes the nsk-jdi PIT failures introduced by fix for 6739363
Reviewed-by: kvn, coleenp
---
hotspot/src/share/vm/runtime/javaCalls.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hotspot/src/share/vm/runtime/javaCalls.cpp b/hotspot/src/share/vm/runtime/javaCalls.cpp
index 38ad6973feb..a0b0af55866 100644
--- a/hotspot/src/share/vm/runtime/javaCalls.cpp
+++ b/hotspot/src/share/vm/runtime/javaCalls.cpp
@@ -504,7 +504,7 @@ class SignatureChekker : public SignatureIterator {
intptr_t v = _value[p];
if (v != 0 ) {
size_t t = (size_t)v;
- bad = (t < (size_t)os::vm_page_size() ) || !(*(oop*)v)->is_oop_or_null(true);
+ bad = (t < (size_t)os::vm_page_size() ) || !Handle::raw_resolve((oop *)v)->is_oop_or_null(true);
if (CheckJNICalls && bad) {
ReportJNIFatalError((JavaThread*)_thread, "Bad JNI oop argument");
}
From 122daf56a7b0fb61f927f950a64be41ee12e477d Mon Sep 17 00:00:00 2001
From: Xiomara Jayasena
Date: Thu, 18 Dec 2008 21:33:59 -0800
Subject: [PATCH 64/68] Added tag jdk7-b42 for changeset 0e40cad98e4a
---
.hgtags-top-repo | 1 +
1 file changed, 1 insertion(+)
diff --git a/.hgtags-top-repo b/.hgtags-top-repo
index db14d6be8bb..0ba997a6a9e 100644
--- a/.hgtags-top-repo
+++ b/.hgtags-top-repo
@@ -16,3 +16,4 @@ cc47a76899ed33a2c513cb688348244c9b5a1288 jdk7-b38
ab523b49de1fc73fefe6855ce1e0349bdbd7af29 jdk7-b39
44be42de6693063fb191989bf0e188de2fa51e7c jdk7-b40
541bdc5ad32fc33255944d0a044ad992f3d915e8 jdk7-b41
+94052b87287303527125026fe4b2698cf867ea83 jdk7-b42
From 22a73d8b7d1306262a8f3a6a3f21eb1319e6d674 Mon Sep 17 00:00:00 2001
From: Xiomara Jayasena
Date: Thu, 18 Dec 2008 21:34:02 -0800
Subject: [PATCH 65/68] Added tag jdk7-b42 for changeset a0dd9009e992
---
hotspot/.hgtags | 1 +
1 file changed, 1 insertion(+)
diff --git a/hotspot/.hgtags b/hotspot/.hgtags
index 90191ff65d0..2769cf0f79a 100644
--- a/hotspot/.hgtags
+++ b/hotspot/.hgtags
@@ -16,3 +16,4 @@ d9bc824aa078573829bb66572af847e26e1bd12e jdk7-b38
49ca90d77f34571b0757ebfcb8a7848ef2696b88 jdk7-b39
81a0cbe3b28460ce836109934ece03db7afaf9cc jdk7-b40
f9d938ede1960d18cb7cf23c645b026519c1a678 jdk7-b41
+ad8c8ca4ab0f4c86e74c061958f44a8f4a930f2c jdk7-b42
From a393c3b01f3d3996e1a0a7fb15b4ca361afe09ef Mon Sep 17 00:00:00 2001
From: Xiomara Jayasena
Date: Thu, 18 Dec 2008 21:34:12 -0800
Subject: [PATCH 66/68] Added tag jdk7-b42 for changeset a97859015238
---
jdk/.hgtags | 1 +
1 file changed, 1 insertion(+)
diff --git a/jdk/.hgtags b/jdk/.hgtags
index 37ed278825a..0201a8973e0 100644
--- a/jdk/.hgtags
+++ b/jdk/.hgtags
@@ -16,3 +16,4 @@ cc5f810b5af8a3a83b0df5a29d9e24d7a0ff8086 jdk7-b38
4e51997582effa006dde5c6d8b8820b2045b9c7f jdk7-b39
2201dad60231a3c3e0346e3a0250d69ca3b71fd4 jdk7-b40
44941f893cea95ecdd5987b12e548069bd803849 jdk7-b41
+3ef0bdfa7609f79d4f2ea621f30cf593a2e432ce jdk7-b42
From 74d9cf0fb8d42734225f27fc78064802720ca3a4 Mon Sep 17 00:00:00 2001
From: Xiaobin Lu
Date: Fri, 19 Dec 2008 14:40:28 -0800
Subject: [PATCH 67/68] 6784100: getTimeNanos - CAS reduction
Get rid of the CAS loop in getTimeNanos to reduce coherence traffic on Solaris.
Reviewed-by: acorn, kvn, ysr
---
hotspot/src/os/solaris/vm/os_solaris.cpp | 28 +++++++++++++++---------
1 file changed, 18 insertions(+), 10 deletions(-)
diff --git a/hotspot/src/os/solaris/vm/os_solaris.cpp b/hotspot/src/os/solaris/vm/os_solaris.cpp
index 8553c1edee2..f74967ab079 100644
--- a/hotspot/src/os/solaris/vm/os_solaris.cpp
+++ b/hotspot/src/os/solaris/vm/os_solaris.cpp
@@ -1638,16 +1638,24 @@ inline hrtime_t oldgetTimeNanos() {
// getTimeNanos is guaranteed to not move backward on Solaris
inline hrtime_t getTimeNanos() {
if (VM_Version::supports_cx8()) {
- bool retry = false;
- hrtime_t newtime = gethrtime();
- hrtime_t oldmaxtime = max_hrtime;
- hrtime_t retmaxtime = oldmaxtime;
- while ((newtime > retmaxtime) && (retry == false || retmaxtime != oldmaxtime)) {
- oldmaxtime = retmaxtime;
- retmaxtime = Atomic::cmpxchg(newtime, (volatile jlong *)&max_hrtime, oldmaxtime);
- retry = true;
- }
- return (newtime > retmaxtime) ? newtime : retmaxtime;
+ const hrtime_t now = gethrtime();
+ const hrtime_t prev = max_hrtime;
+ if (now <= prev) return prev; // same or retrograde time;
+ const hrtime_t obsv = Atomic::cmpxchg(now, (volatile jlong*)&max_hrtime, prev);
+ assert(obsv >= prev, "invariant"); // Monotonicity
+ // If the CAS succeeded then we're done and return "now".
+ // If the CAS failed and the observed value "obs" is >= now then
+ // we should return "obs". If the CAS failed and now > obs > prv then
+ // some other thread raced this thread and installed a new value, in which case
+ // we could either (a) retry the entire operation, (b) retry trying to install now
+ // or (c) just return obs. We use (c). No loop is required although in some cases
+ // we might discard a higher "now" value in deference to a slightly lower but freshly
+ // installed obs value. That's entirely benign -- it admits no new orderings compared
+ // to (a) or (b) -- and greatly reduces coherence traffic.
+ // We might also condition (c) on the magnitude of the delta between obs and now.
+ // Avoiding excessive CAS operations to hot RW locations is critical.
+ // See http://blogs.sun.com/dave/entry/cas_and_cache_trivia_invalidate
+ return (prev == obsv) ? now : obsv ;
} else {
return oldgetTimeNanos();
}
From b5743bd6e9ee001546cdb97351d14ac904f8e9ec Mon Sep 17 00:00:00 2001
From: Erik Trimble
Date: Sat, 20 Dec 2008 09:59:01 -0800
Subject: [PATCH 68/68] 6787832: Bump Hotspot build number to 08
Update the HS14 build number to 08
Reviewed-by: jcoomes
---
hotspot/make/hotspot_version | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hotspot/make/hotspot_version b/hotspot/make/hotspot_version
index a932f652954..4454f180b5b 100644
--- a/hotspot/make/hotspot_version
+++ b/hotspot/make/hotspot_version
@@ -35,7 +35,7 @@ HOTSPOT_VM_COPYRIGHT=Copyright 2008
HS_MAJOR_VER=14
HS_MINOR_VER=0
-HS_BUILD_NUMBER=09
+HS_BUILD_NUMBER=10
JDK_MAJOR_VER=1
JDK_MINOR_VER=7