graphicsEvent.end();
public static byte[] toPng(TreeLogger logger, ImageRect rect) throws UnableToCompleteException { // Create the bundled image. BufferedImage bundledImage = new BufferedImage(rect.getWidth(), rect.getHeight(), BufferedImage.TYPE_INT_ARGB_PRE); SpeedTracerLogger.Event createGraphicsEvent = SpeedTracerLogger.start(CompilerEventType.GRAPHICS_INIT, "java.awt.headless", System.getProperty("java.awt.headless")); Graphics2D g2d = bundledImage.createGraphics(); createGraphicsEvent.end(); setBetterRenderingQuality(g2d); g2d.drawImage(rect.getImage(), rect.transform(), null); g2d.dispose(); byte[] imageBytes = createImageBytes(logger, bundledImage); return imageBytes; }
"java.awt.headless", System.getProperty("java.awt.headless")); Graphics2D g2d = bundledImage.createGraphics(); createGraphicsEvent.end();
event.end();
creator.realize(logger, ctx); } finally { event.end();
creator.realize(logger, ctx); } finally { event.end();
"java.awt.headless", System.getProperty("java.awt.headless")); Graphics2D g2d = bundledImage.createGraphics(); createGraphicsEvent.end();
return resultTypeName; } finally { rebindEvent.end();
graphicsEvent.end();
graphicsEvent.end();
return resultTypeName; } finally { rebindEvent.end();
/** * Performs rewriting transformations on a class. * * @param className the name of the class * @param classBytes the bytes of the class */ public byte[] rewrite(String className, byte[] classBytes) { Event classBytesRewriteEvent = SpeedTracerLogger.start(DevModeEventType.CLASS_BYTES_REWRITE, "Class Name", className); String desc = toDescriptor(className); assert !jsoIntfDescs.contains(desc); // The ASM model is to chain a bunch of visitors together. ClassWriter writer = new ClassWriter(0); ClassVisitor v = writer; // v = new CheckClassAdapter(v); // v = new TraceClassVisitor(v, new PrintWriter(System.out)); v = new UseMirroredClasses(v, className); v = new RewriteSingleJsoImplDispatches(v, typeOracle, jsoData); v = new RewriteRefsToJsoClasses(v, jsoIntfDescs, mapper); if (jsoImplDescs.contains(desc)) { v = WriteJsoImpl.create(v, desc, jsoIntfDescs, mapper, jsoData); } if (Double.parseDouble(System.getProperty("java.class.version")) < Opcodes.V1_6) { v = new ForceClassVersion15(v); } new ClassReader(classBytes).accept(v, 0); classBytesRewriteEvent.end(); return writer.toByteArray(); }
/** * Performs rewriting transformations on a class. * * @param className the name of the class * @param classBytes the bytes of the class */ public byte[] rewrite(String className, byte[] classBytes) { Event classBytesRewriteEvent = SpeedTracerLogger.start(DevModeEventType.CLASS_BYTES_REWRITE, "Class Name", className); String desc = toDescriptor(className); assert !jsoIntfDescs.contains(desc); // The ASM model is to chain a bunch of visitors together. ClassWriter writer = new ClassWriter(0); ClassVisitor v = writer; // v = new CheckClassAdapter(v); // v = new TraceClassVisitor(v, new PrintWriter(System.out)); v = new UseMirroredClasses(v, className); v = new RewriteSingleJsoImplDispatches(v, typeOracle, jsoData); v = new RewriteRefsToJsoClasses(v, jsoIntfDescs, mapper); if (jsoImplDescs.contains(desc)) { v = WriteJsoImpl.create(v, desc, jsoIntfDescs, mapper, jsoData); } if (Double.parseDouble(System.getProperty("java.class.version")) < Opcodes.V1_6) { v = new ForceClassVersion15(v); } new ClassReader(classBytes).accept(v, 0); classBytesRewriteEvent.end(); return writer.toByteArray(); }
public void onModuleReady(ModuleSpace readySpace) throws UnableToCompleteException { this.space = readySpace; Event moduleSpaceHostReadyEvent = SpeedTracerLogger.start(DevModeEventType.MODULE_SPACE_HOST_READY); try { // Establish an environment for JavaScript property providers to run. // ModuleSpacePropertyOracle propOracle = new ModuleSpacePropertyOracle( module.getProperties(), module.getActiveLinkerNames(), readySpace); // Set up the rebind oracle for the module. // It has to wait until now because we need to inject javascript. // Deque<Rule> rules = module.getRules(); PrecompileTaskOptionsImpl options = new PrecompileTaskOptionsImpl(); options.setGenDir(genDir); CompilerContext compilerContext = new CompilerContext.Builder().module(module).options( options).build(); StandardGeneratorContext genCtx = new StandardGeneratorContext(compilerContext, compilationState, new ArtifactSet(), false); // Only enable generator result caching if we have a valid rebindCache genCtx.setGeneratorResultCachingEnabled(rebindCache != null); rebindOracle = new StandardRebindOracle2(propOracle, rules, genCtx); rebindOracle.setRebindCache(rebindCache); } finally { moduleSpaceHostReadyEvent.end(); } }
public void onModuleReady(ModuleSpace readySpace) throws UnableToCompleteException { this.space = readySpace; Event moduleSpaceHostReadyEvent = SpeedTracerLogger.start(DevModeEventType.MODULE_SPACE_HOST_READY); try { // Establish an environment for JavaScript property providers to run. // ModuleSpacePropertyOracle propOracle = new ModuleSpacePropertyOracle( module.getProperties(), module.getActiveLinkerNames(), readySpace); // Set up the rebind oracle for the module. // It has to wait until now because we need to inject javascript. // Deque<Rule> rules = module.getRules(); PrecompileTaskOptionsImpl options = new PrecompileTaskOptionsImpl(); options.setGenDir(genDir); CompilerContext compilerContext = new CompilerContext.Builder().module(module).options( options).build(); StandardGeneratorContext genCtx = new StandardGeneratorContext(compilerContext, compilationState, new ArtifactSet(), false); // Only enable generator result caching if we have a valid rebindCache genCtx.setGeneratorResultCachingEnabled(rebindCache != null); rebindOracle = new StandardRebindOracle2(propOracle, rules, genCtx); rebindOracle.setRebindCache(rebindCache); } finally { moduleSpaceHostReadyEvent.end(); } }
public static byte[] toPng(TreeLogger logger, ImageRect rect) throws UnableToCompleteException { // Create the bundled image. BufferedImage bundledImage = new BufferedImage(rect.getWidth(), rect.getHeight(), BufferedImage.TYPE_INT_ARGB_PRE); SpeedTracerLogger.Event createGraphicsEvent = SpeedTracerLogger.start(CompilerEventType.GRAPHICS_INIT, "java.awt.headless", System.getProperty("java.awt.headless")); Graphics2D g2d = bundledImage.createGraphics(); createGraphicsEvent.end(); setBetterRenderingQuality(g2d); g2d.drawImage(rect.getImage(), rect.transform(), null); g2d.dispose(); byte[] imageBytes = createImageBytes(logger, bundledImage); return imageBytes; }
protected void generateTypeHandlers(TreeLogger logger, GeneratorContext context, SerializableTypeOracle typesSentFromBrowser, SerializableTypeOracle typesSentToBrowser) throws UnableToCompleteException { Event event = SpeedTracerLogger.start(CompilerEventType.GENERATOR_RPC_TYPE_SERIALIZER); TypeSerializerCreator tsc = new TypeSerializerCreator(logger, typesSentFromBrowser, typesSentToBrowser, context, SerializationUtils.getTypeSerializerQualifiedName(serviceIntf), SerializationUtils .getTypeSerializerSimpleName(serviceIntf)); tsc.realize(logger); event.end(); typeStrings = new HashMap<JType, String>(tsc.getTypeStrings()); typeStrings.put(serviceIntf, TypeNameObfuscator.SERVICE_INTERFACE_ID); customSerializersUsed = tsc.getCustomSerializersUsed(); typesNotUsingCustomSerializers = tsc.getTypesNotUsingCustomSerializers(); }
public static byte[] toPng(TreeLogger logger, ImageRect rect) throws UnableToCompleteException { // Create the bundled image. BufferedImage bundledImage = new BufferedImage(rect.getWidth(), rect.getHeight(), BufferedImage.TYPE_INT_ARGB_PRE); SpeedTracerLogger.Event createGraphicsEvent = SpeedTracerLogger.start(CompilerEventType.GRAPHICS_INIT, "java.awt.headless", System.getProperty("java.awt.headless")); Graphics2D g2d = bundledImage.createGraphics(); createGraphicsEvent.end(); setBetterRenderingQuality(g2d); g2d.drawImage(rect.getImage(), rect.transform(), null); g2d.dispose(); byte[] imageBytes = createImageBytes(logger, bundledImage); return imageBytes; }
protected void generateTypeHandlers(TreeLogger logger, GeneratorContext context, SerializableTypeOracle typesSentFromBrowser, SerializableTypeOracle typesSentToBrowser) throws UnableToCompleteException { Event event = SpeedTracerLogger.start(CompilerEventType.GENERATOR_RPC_TYPE_SERIALIZER); TypeSerializerCreator tsc = new TypeSerializerCreator(logger, typesSentFromBrowser, typesSentToBrowser, context, SerializationUtils.getTypeSerializerQualifiedName(serviceIntf), SerializationUtils .getTypeSerializerSimpleName(serviceIntf)); tsc.realize(logger); event.end(); typeStrings = new HashMap<JType, String>(tsc.getTypeStrings()); typeStrings.put(serviceIntf, TypeNameObfuscator.SERVICE_INTERFACE_ID); customSerializersUsed = tsc.getCustomSerializersUsed(); typesNotUsingCustomSerializers = tsc.getTypesNotUsingCustomSerializers(); }