http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/9d63a88d/modules/core/src/main/java/org/apache/ignite/internal/client/marshaller/optimized/GridClientOptimizedMarshaller.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/client/marshaller/optimized/GridClientOptimizedMarshaller.java b/modules/core/src/main/java/org/apache/ignite/internal/client/marshaller/optimized/GridClientOptimizedMarshaller.java index e630277..7ca47d8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/client/marshaller/optimized/GridClientOptimizedMarshaller.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/client/marshaller/optimized/GridClientOptimizedMarshaller.java @@ -21,7 +21,6 @@ import org.apache.ignite.*; import org.apache.ignite.internal.*; import org.apache.ignite.internal.client.marshaller.*; import org.apache.ignite.internal.processors.rest.client.message.*; -import org.apache.ignite.internal.util.typedef.internal.*; import org.apache.ignite.marshaller.optimized.*; import java.io.*; @@ -112,7 +111,7 @@ public class GridClientOptimizedMarshaller implements GridClientMarshaller { assert clsName != null : id; - return U.forName(clsName, ldr); + return Class.forName(clsName, false, ldr); } } }
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/9d63a88d/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java index 50a1862..d6e3339 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/util/IgniteUtils.java @@ -266,9 +266,6 @@ public abstract class IgniteUtils { /** */ static volatile long curTimeMillis = System.currentTimeMillis(); - /** Primitive class map. */ - private static final Map<String, Class<?>> primitiveMap = new HashMap<>(16, .5f); - /** Boxed class map. */ private static final Map<Class<?>, Class<?>> boxedClsMap = new HashMap<>(16, .5f); @@ -398,15 +395,6 @@ public abstract class IgniteUtils { IgniteUtils.javaRtName = javaRtName; IgniteUtils.javaRtVer = javaRtVer; - primitiveMap.put("byte", byte.class); - primitiveMap.put("short", short.class); - primitiveMap.put("int", int.class); - primitiveMap.put("long", long.class); - primitiveMap.put("float", float.class); - primitiveMap.put("double", double.class); - primitiveMap.put("char", char.class); - primitiveMap.put("boolean", boolean.class); - boxedClsMap.put(byte.class, Byte.class); boxedClsMap.put(short.class, Short.class); boxedClsMap.put(int.class, Integer.class); @@ -7898,24 +7886,6 @@ public abstract class IgniteUtils { } /** - * Gets class for provided name. Accepts primitive types names. - * - * @param clsName Class name. - * @param ldr Class loader. - * @return Class. - * @throws ClassNotFoundException If class not found. - */ - public static Class<?> forName(@Nullable String clsName, @Nullable ClassLoader ldr) - throws ClassNotFoundException { - if (clsName == null) - return null; - - Class<?> cls = primitiveMap.get(clsName); - - return cls != null ? cls : Class.forName(clsName, true, ldr); - } - - /** * Applies a supplemental hash function to a given hashCode, which * defends against poor quality hash functions. This is critical * because ConcurrentHashMap uses power-of-two length hash tables, http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/9d63a88d/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedClassDescriptor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedClassDescriptor.java b/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedClassDescriptor.java index 74a491f..5ce6956 100644 --- a/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedClassDescriptor.java +++ b/modules/core/src/main/java/org/apache/ignite/marshaller/optimized/OptimizedClassDescriptor.java @@ -877,7 +877,7 @@ class OptimizedClassDescriptor { return in.readBooleanArray(); case TYPE_OBJ_ARR: - return in.readArray(U.forName(in.readUTF(), in.classLoader())); + return in.readArray(Class.forName(in.readUTF(), false, in.classLoader())); case TYPE_STR: return in.readString(); http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/9d63a88d/modules/core/src/main/resources/META-INF/classnames-jdk.properties ---------------------------------------------------------------------- diff --git a/modules/core/src/main/resources/META-INF/classnames-jdk.properties b/modules/core/src/main/resources/META-INF/classnames-jdk.properties new file mode 100644 index 0000000..0cae0f7 --- /dev/null +++ b/modules/core/src/main/resources/META-INF/classnames-jdk.properties @@ -0,0 +1,325 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +[B +[C +[D +[F +[I +[J +[S +[Z +[Ljava.lang.Object; +java.lang.AbstractMethodError +java.lang.ArithmeticException +java.lang.ArrayIndexOutOfBoundsException +java.lang.ArrayStoreException +java.lang.AssertionError +java.lang.Boolean +java.lang.BootstrapMethodError +java.lang.Byte +java.lang.Character +java.lang.Character$UnicodeScript +java.lang.Class +java.lang.ClassCastException +java.lang.ClassCircularityError +java.lang.ClassFormatError +java.lang.ClassNotFoundException +java.lang.CloneNotSupportedException +java.lang.Double +java.lang.EnumConstantNotPresentException +java.lang.Error +java.lang.Exception +java.lang.ExceptionInInitializerError +java.lang.Float +java.lang.IllegalAccessError +java.lang.IllegalAccessException +java.lang.IllegalArgumentException +java.lang.IllegalMonitorStateException +java.lang.IllegalStateException +java.lang.IllegalThreadStateException +java.lang.IncompatibleClassChangeError +java.lang.IndexOutOfBoundsException +java.lang.InstantiationError +java.lang.InstantiationException +java.lang.Integer +java.lang.InternalError +java.lang.InterruptedException +java.lang.LinkageError +java.lang.Long +java.lang.NegativeArraySizeException +java.lang.NoClassDefFoundError +java.lang.NoSuchFieldError +java.lang.NoSuchFieldException +java.lang.NoSuchMethodError +java.lang.NoSuchMethodException +java.lang.NullPointerException +java.lang.NumberFormatException +java.lang.OutOfMemoryError +java.lang.ProcessBuilder$Redirect$Type +java.lang.ReflectiveOperationException +java.lang.RuntimeException +java.lang.RuntimePermission +java.lang.SecurityException +java.lang.Short +java.lang.StackOverflowError +java.lang.StackTraceElement +java.lang.String +java.lang.String$CaseInsensitiveComparator +java.lang.StringBuffer +java.lang.StringBuilder +java.lang.StringIndexOutOfBoundsException +java.lang.Thread$State +java.lang.ThreadDeath +java.lang.Throwable +java.lang.TypeNotPresentException +java.lang.UNIXProcess$LaunchMechanism +java.lang.UnknownError +java.lang.UnsatisfiedLinkError +java.lang.UnsupportedClassVersionError +java.lang.UnsupportedOperationException +java.lang.VerifyError +java.lang.annotation.AnnotationFormatError +java.lang.annotation.AnnotationTypeMismatchException +java.lang.annotation.ElementType +java.lang.annotation.IncompleteAnnotationException +java.lang.annotation.RetentionPolicy +java.lang.instrument.IllegalClassFormatException +java.lang.instrument.UnmodifiableClassException +java.lang.invoke.MethodType +java.lang.invoke.WrongMethodTypeException +java.lang.management.ManagementPermission +java.lang.management.MemoryType +java.lang.management.PlatformComponent +java.lang.reflect.GenericSignatureFormatError +java.lang.reflect.InvocationTargetException +java.lang.reflect.MalformedParameterizedTypeException +java.lang.reflect.Proxy +java.lang.reflect.ReflectPermission +java.lang.reflect.UndeclaredThrowableException +java.net.Authenticator$RequestorType +java.net.BindException +java.net.ConnectException +java.net.HttpRetryException +java.net.Inet4Address +java.net.Inet6Address +java.net.InetAddress +java.net.InetAddress$Cache$Type +java.net.InetSocketAddress +java.net.MalformedURLException +java.net.NetPermission +java.net.NoRouteToHostException +java.net.PortUnreachableException +java.net.ProtocolException +java.net.Proxy$Type +java.net.SocketException +java.net.SocketPermission +java.net.SocketPermissionCollection +java.net.SocketTimeoutException +java.net.StandardProtocolFamily +java.net.URI +java.net.URISyntaxException +java.net.URL +java.net.UnknownHostException +java.net.UnknownServiceException +java.util.AbstractMap$SimpleEntry +java.util.AbstractMap$SimpleImmutableEntry +java.util.ArrayDeque +java.util.ArrayList +java.util.Arrays$ArrayList +java.util.BitSet +java.util.Collections$AsLIFOQueue +java.util.Collections$CheckedCollection +java.util.Collections$CheckedList +java.util.Collections$CheckedMap +java.util.Collections$CheckedRandomAccessList +java.util.Collections$CheckedSet +java.util.Collections$CheckedSortedMap +java.util.Collections$CheckedSortedSet +java.util.Collections$CopiesList +java.util.Collections$EmptyList +java.util.Collections$EmptyMap +java.util.Collections$EmptySet +java.util.Collections$ReverseComparator +java.util.Collections$ReverseComparator2 +java.util.Collections$SetFromMap +java.util.Collections$SingletonList +java.util.Collections$SingletonMap +java.util.Collections$SingletonSet +java.util.Collections$SynchronizedCollection +java.util.Collections$SynchronizedList +java.util.Collections$SynchronizedMap +java.util.Collections$SynchronizedRandomAccessList +java.util.Collections$SynchronizedSet +java.util.Collections$SynchronizedSortedMap +java.util.Collections$SynchronizedSortedSet +java.util.Collections$UnmodifiableCollection +java.util.Collections$UnmodifiableList +java.util.Collections$UnmodifiableMap +java.util.Collections$UnmodifiableMap$UnmodifiableEntrySet +java.util.Collections$UnmodifiableRandomAccessList +java.util.Collections$UnmodifiableSet +java.util.Collections$UnmodifiableSortedMap +java.util.Collections$UnmodifiableSortedSet +java.util.ConcurrentModificationException +java.util.Currency +java.util.Date +java.util.DuplicateFormatFlagsException +java.util.EmptyStackException +java.util.EnumMap +java.util.EnumSet$SerializationProxy +java.util.EventObject +java.util.FormatFlagsConversionMismatchException +java.util.Formatter$BigDecimalLayoutForm +java.util.FormatterClosedException +java.util.GregorianCalendar +java.util.HashMap +java.util.HashSet +java.util.Hashtable +java.util.IdentityHashMap +java.util.IllegalFormatCodePointException +java.util.IllegalFormatConversionException +java.util.IllegalFormatException +java.util.IllegalFormatFlagsException +java.util.IllegalFormatPrecisionException +java.util.IllegalFormatWidthException +java.util.IllformedLocaleException +java.util.InputMismatchException +java.util.InvalidPropertiesFormatException +java.util.JapaneseImperialCalendar +java.util.JumboEnumSet +java.util.LinkedHashMap +java.util.LinkedHashSet +java.util.LinkedList +java.util.Locale +java.util.Locale$Category +java.util.MissingFormatArgumentException +java.util.MissingFormatWidthException +java.util.MissingResourceException +java.util.NoSuchElementException +java.util.PriorityQueue +java.util.Properties +java.util.PropertyPermission +java.util.PropertyPermissionCollection +java.util.Random +java.util.RegularEnumSet +java.util.ServiceConfigurationError +java.util.SimpleTimeZone +java.util.Stack +java.util.TooManyListenersException +java.util.TreeMap +java.util.TreeMap$AscendingSubMap +java.util.TreeMap$DescendingSubMap +java.util.TreeMap$SubMap +java.util.TreeSet +java.util.UUID +java.util.UnknownFormatConversionException +java.util.UnknownFormatFlagsException +java.util.Vector +java.util.concurrent.ArrayBlockingQueue +java.util.concurrent.BrokenBarrierException +java.util.concurrent.CancellationException +java.util.concurrent.ConcurrentHashMap +java.util.concurrent.ConcurrentHashMap$Segment +java.util.concurrent.ConcurrentHashMap$WriteThroughEntry +java.util.concurrent.ConcurrentLinkedDeque +java.util.concurrent.ConcurrentLinkedQueue +java.util.concurrent.ConcurrentSkipListMap +java.util.concurrent.ConcurrentSkipListMap$SubMap +java.util.concurrent.ConcurrentSkipListSet +java.util.concurrent.CopyOnWriteArrayList +java.util.concurrent.CopyOnWriteArraySet +java.util.concurrent.CountDownLatch$Sync +java.util.concurrent.Exchanger$Node +java.util.concurrent.Exchanger$Slot +java.util.concurrent.ExecutionException +java.util.concurrent.ForkJoinPool$InvokeAll +java.util.concurrent.ForkJoinTask$AdaptedCallable +java.util.concurrent.ForkJoinTask$AdaptedRunnable +java.util.concurrent.LinkedBlockingDeque +java.util.concurrent.LinkedBlockingQueue +java.util.concurrent.LinkedTransferQueue +java.util.concurrent.PriorityBlockingQueue +java.util.concurrent.RejectedExecutionException +java.util.concurrent.Semaphore +java.util.concurrent.Semaphore$FairSync +java.util.concurrent.Semaphore$NonfairSync +java.util.concurrent.SynchronousQueue +java.util.concurrent.SynchronousQueue$FifoWaitQueue +java.util.concurrent.SynchronousQueue$LifoWaitQueue +java.util.concurrent.SynchronousQueue$WaitQueue +java.util.concurrent.ThreadLocalRandom +java.util.concurrent.ThreadPoolExecutor$Worker +java.util.concurrent.TimeUnit$1 +java.util.concurrent.TimeUnit$2 +java.util.concurrent.TimeUnit$3 +java.util.concurrent.TimeUnit$4 +java.util.concurrent.TimeUnit$5 +java.util.concurrent.TimeUnit$6 +java.util.concurrent.TimeUnit$7 +java.util.concurrent.TimeoutException +java.util.concurrent.atomic.AtomicBoolean +java.util.concurrent.atomic.AtomicInteger +java.util.concurrent.atomic.AtomicIntegerArray +java.util.concurrent.atomic.AtomicLong +java.util.concurrent.atomic.AtomicLongArray +java.util.concurrent.atomic.AtomicReference +java.util.concurrent.atomic.AtomicReferenceArray +java.util.concurrent.locks.AbstractQueuedLongSynchronizer$ConditionObject +java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject +java.util.concurrent.locks.ReentrantLock +java.util.concurrent.locks.ReentrantLock$FairSync +java.util.concurrent.locks.ReentrantLock$NonfairSync +java.util.concurrent.locks.ReentrantReadWriteLock +java.util.concurrent.locks.ReentrantReadWriteLock$FairSync +java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync +java.util.concurrent.locks.ReentrantReadWriteLock$ReadLock +java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock +java.util.jar.JarException +java.util.jar.JarVerifier$VerifierCodeSource +java.util.logging.Level +java.util.logging.LogRecord +java.util.logging.LoggingPermission +java.util.prefs.AbstractPreferences$NodeAddedEvent +java.util.prefs.AbstractPreferences$NodeRemovedEvent +java.util.prefs.BackingStoreException +java.util.prefs.InvalidPreferencesFormatException +java.util.prefs.NodeChangeEvent +java.util.prefs.PreferenceChangeEvent +java.util.regex.Pattern +java.util.regex.PatternSyntaxException +java.util.regex.UnicodeProp$1 +java.util.regex.UnicodeProp$10 +java.util.regex.UnicodeProp$11 +java.util.regex.UnicodeProp$12 +java.util.regex.UnicodeProp$13 +java.util.regex.UnicodeProp$14 +java.util.regex.UnicodeProp$15 +java.util.regex.UnicodeProp$16 +java.util.regex.UnicodeProp$17 +java.util.regex.UnicodeProp$18 +java.util.regex.UnicodeProp$2 +java.util.regex.UnicodeProp$3 +java.util.regex.UnicodeProp$4 +java.util.regex.UnicodeProp$5 +java.util.regex.UnicodeProp$6 +java.util.regex.UnicodeProp$7 +java.util.regex.UnicodeProp$8 +java.util.regex.UnicodeProp$9 +java.util.zip.DataFormatException +java.util.zip.ZipError +java.util.zip.ZipException