You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by am...@apache.org on 2020/12/15 14:16:53 UTC

[ignite-3] branch ignite-13618-javapoet updated: WIP.

This is an automated email from the ASF dual-hosted git repository.

amashenkov pushed a commit to branch ignite-13618-javapoet
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/ignite-13618-javapoet by this push:
     new 93008c9  WIP.
93008c9 is described below

commit 93008c9b0e3e3b361b11f1e1ca43911f5f744422
Author: Andrew Mashenkov <an...@gmail.com>
AuthorDate: Tue Dec 15 17:16:35 2020 +0300

    WIP.
---
 .../internal/schema/marshaller/MarshallerUtil.java   | 20 ++++++++------------
 1 file changed, 8 insertions(+), 12 deletions(-)

diff --git a/modules/commons/src/main/java/org/apache/ignite/internal/schema/marshaller/MarshallerUtil.java b/modules/commons/src/main/java/org/apache/ignite/internal/schema/marshaller/MarshallerUtil.java
index d799ad8..abb5dfb 100644
--- a/modules/commons/src/main/java/org/apache/ignite/internal/schema/marshaller/MarshallerUtil.java
+++ b/modules/commons/src/main/java/org/apache/ignite/internal/schema/marshaller/MarshallerUtil.java
@@ -32,7 +32,6 @@ import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
 import java.util.NoSuchElementException;
-import java.util.Set;
 import java.util.UUID;
 import javax.tools.Diagnostic;
 import javax.tools.DiagnosticCollector;
@@ -47,11 +46,8 @@ import javax.tools.ToolProvider;
 import org.apache.ignite.internal.schema.NativeType;
 import org.apache.ignite.internal.schema.TupleAssembler;
 import org.apache.ignite.internal.util.ObjectFactory;
-import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
-import static javax.tools.StandardLocation.CLASS_PATH;
-
 /**
  * Marshaller utility class.
  */
@@ -148,13 +144,17 @@ public final class MarshallerUtil {
 
         final Map<String, byte[]> classes0 = classes == null ? new HashMap<>() : classes;
 
-        try (final MemoryJavaFileManager fileManager = new MemoryJavaFileManager(cmp.getStandardFileManager(null, null, null), classes0)) {
+        final MemoryClassLoader loader = new MemoryClassLoader(classes0, ClassLoader.getSystemClassLoader());
+
+        try (final MemoryJavaFileManager fileManager = new MemoryJavaFileManager(cmp.getStandardFileManager(null, null, null), classes0) {
+            @Override public ClassLoader getClassLoader(Location location) {
+                return loader;
+            }
+        }) {
             DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<>();
 
             JavaCompiler.CompilationTask task = cmp.getTask(null, fileManager, diagnostics, null, null, Collections.singletonList(javafile.toJavaFileObject()));
 
-            final MemoryClassLoader loader = new MemoryClassLoader(fileManager.getClasses(), ClassLoader.getSystemClassLoader());
-
             if (task.call())
                 return loader;
 
@@ -256,7 +256,7 @@ public final class MarshallerUtil {
             final byte[] bytes = classes.get(className);
 
             if (bytes != null) {
-                return new SimpleJavaFileObject(URI.create(className), JavaFileObject.Kind.OTHER) {
+                return new SimpleJavaFileObject(URI.create(className), JavaFileObject.Kind.CLASS) {
                     @Override public InputStream openInputStream() {
                         return new ByteArrayInputStream(bytes);
                     }
@@ -295,10 +295,6 @@ public final class MarshallerUtil {
             else
                 return super.findClass(className);
         }
-
-        @Override public Class<?> loadClass(String name) throws ClassNotFoundException {
-            return super.loadClass(name);
-        }
     }
 
     public static <E> Iterable<E> concat(