Package com.google.gwt.core.ext.linker

Examples of com.google.gwt.core.ext.linker.SyntheticArtifact


          // Should generally not happen
          logger.log(TreeLogger.ERROR, "Unable to store deRPC data", e);
          throw new UnableToCompleteException();
        }

        SyntheticArtifact a = emitBytes(logger, out.toByteArray(),
            result.getStrongName() + SUFFIX);
        artifacts.add(a);
      }
    }
    return artifacts;
View Full Code Here


    @Override
    public void close() {
      if (!closed) {
        closed = true;
        SyntheticArtifact newArtifact = new SyntheticArtifact(
            SoycReportLinker.class, COMPILE_REPORT_DIRECTORY + "/" + path,
            baos.toByteArray());
        newArtifact.setPrivate(false);
        artifacts.add(newArtifact);
        baos = null;
      }
    }
View Full Code Here

       * Creates new variables, must run before code splitter and namer.
       */
      JsStackEmulator.exec(jsProgram, propertyOracles);

      // (10) Split up the program into fragments
      SyntheticArtifact dependencies = null;
      if (options.isAggressivelyOptimize() && options.isRunAsyncEnabled()) {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        CodeSplitter.exec(logger, jprogram, jsProgram, map,
            chooseDependencyRecorder(options.isSoycEnabled(), baos));
        if (baos.size() == 0 && options.isSoycEnabled()) {
          recordNonSplitDependencies(jprogram, baos);
        }
        if (baos.size() > 0) {
          dependencies = new SyntheticArtifact(SoycReportLinker.class,
              "dependencies" + permutationId + ".xml.gz", baos.toByteArray());
        }
      }

      // (10.5) Obfuscate
View Full Code Here

    PerfLogger.start("Recording compile report output");

    PerfLogger.start("Record split points");
    SplitPointRecorder.recordSplitPoints(jprogram, baos, logger);
    SyntheticArtifact splitPoints = new SyntheticArtifact(
        SoycReportLinker.class, "splitPoints" + permutationId + ".xml.gz",
        baos.toByteArray());
    soycArtifacts.add(splitPoints);
    PerfLogger.end();

    SyntheticArtifact sizeMaps = null;
    if (sizeBreakdowns != null) {
      PerfLogger.start("Record size map");
      baos.reset();
      SizeMapRecorder.recordMap(logger, baos, sizeBreakdowns, jjsmap,
          obfuscateMap);
      sizeMaps = new SyntheticArtifact(SoycReportLinker.class, "stories"
          + permutationId + ".xml.gz", baos.toByteArray());
      soycArtifacts.add(sizeMaps);
      PerfLogger.end();
    }

    if (sourceInfoMaps != null) {
      PerfLogger.start("Record detailed stories");
      baos.reset();
      StoryRecorder.recordStories(logger, baos, sourceInfoMaps, js);
      soycArtifacts.add(new SyntheticArtifact(SoycReportLinker.class,
          "detailedStories" + permutationId + ".xml.gz", baos.toByteArray()));
      PerfLogger.end();
    }

    if (dependencies != null) {
View Full Code Here

       * No shifts may be generated after this point.
       */
      JsCoerceIntShift.exec(jsProgram, logger, propertyOracles);

      // (10) Split up the program into fragments
      SyntheticArtifact dependencies = null;
   
      if (options.isRunAsyncEnabled()) {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        int fragmentsMerge = options.getFragmentsMerge();
       
        // Pick and choose which code splitter to use. Only use the experimental
        // one when the user explicitly decides the project needs fragment
        // merging.
        if (fragmentsMerge > 0) {
          CodeSplitter2.exec(logger, jprogram, jsProgram, jjsmap, fragmentsMerge,
              chooseDependencyRecorder(options.isSoycEnabled(), baos));
        } else {
          CodeSplitter.exec(logger, jprogram, jsProgram, jjsmap, chooseDependencyRecorder(options
              .isSoycEnabled(), baos));
        }
        if (baos.size() == 0 && options.isSoycEnabled()) {
          recordNonSplitDependencies(jprogram, baos);
        }
        if (baos.size() > 0) {
          dependencies =
              new SyntheticArtifact(SoycReportLinker.class, "dependencies" + permutationId
                  + ".xml.gz", baos.toByteArray());
        }
      }

      // detect if browser is ie6 or not known
View Full Code Here

    Event recordSplitPoints =
        SpeedTracerLogger
            .start(CompilerEventType.MAKE_SOYC_ARTIFACTS, "phase", "recordSplitPoints");
    SplitPointRecorder.recordSplitPoints(jprogram, baos, logger);
    SyntheticArtifact splitPoints =
        new SyntheticArtifact(SoycReportLinker.class, "splitPoints" + permutationId + ".xml.gz",
            baos.toByteArray());
    soycArtifacts.add(splitPoints);
    recordSplitPoints.end();

    SyntheticArtifact sizeMaps = null;
    if (sizeBreakdowns != null) {
      Event recordSizeMap =
          SpeedTracerLogger.start(CompilerEventType.MAKE_SOYC_ARTIFACTS, "phase", "recordSizeMap");
      baos.reset();
      SizeMapRecorder.recordMap(logger, baos, sizeBreakdowns, jjsmap, obfuscateMap);
      sizeMaps =
          new SyntheticArtifact(SoycReportLinker.class, "stories" + permutationId + ".xml.gz", baos
              .toByteArray());
      soycArtifacts.add(sizeMaps);
      recordSizeMap.end();
    }

    if (sourceInfoMaps != null) {
      Event recordStories =
          SpeedTracerLogger.start(CompilerEventType.MAKE_SOYC_ARTIFACTS, "phase", "recordStories");
      baos.reset();
      StoryRecorder.recordStories(logger, baos, sourceInfoMaps, js);
      soycArtifacts.add(new SyntheticArtifact(SoycReportLinker.class, "detailedStories"
          + permutationId + ".xml.gz", baos.toByteArray()));
      recordStories.end();
    }

    if (dependencies != null) {
View Full Code Here

          readOneManifest(logger, art.getContents(logger));
        }
      }

      ArtifactSet toReturn = new ArtifactSet(artifacts);
      SyntheticArtifact manifestArt = emitString(logger,
          generateManifest(context), MANIFEST_TXT);
      manifestArt.setVisibility(Visibility.LegacyDeploy);
      toReturn.add(manifestArt);
      return toReturn;
    }
  }
View Full Code Here

    return baos.toByteArray();
  }

  private static SyntheticArtifact emit(String path, byte[] content) {
    return new SyntheticArtifact(PrecompressLinker.class, path, content);
  }
View Full Code Here

      throw new RuntimeException(e.getMessage());
    }
  }

  private static SyntheticArtifact emitPrivate(String string, String contents) {
    SyntheticArtifact art = emit(string, contents);
    art.setVisibility(Visibility.Private);
    return art;
  }
View Full Code Here

      Event soycEvent = SpeedTracerLogger.start(CompilerEventType.MAKE_SOYC_ARTIFACTS);

      Event recordSplitPoints = SpeedTracerLogger.start(
          CompilerEventType.MAKE_SOYC_ARTIFACTS, "phase", "recordSplitPoints");
      SplitPointRecorder.recordSplitPoints(jprogram, baos, logger);
      SyntheticArtifact splitPoints = new SyntheticArtifact(
          SoycReportLinker.class, "splitPoints" + permutationId + ".xml.gz", baos.toByteArray());
      soycArtifacts.add(splitPoints);
      recordSplitPoints.end();

      SyntheticArtifact sizeMaps = null;
      if (sizeBreakdowns != null) {
        Event recordSizeMap = SpeedTracerLogger.start(
            CompilerEventType.MAKE_SOYC_ARTIFACTS, "phase", "recordSizeMap");
        baos.reset();
        SizeMapRecorder.recordMap(logger, baos, sizeBreakdowns, jjsmap,
            internedLiteralByVariableName);
        sizeMaps = new SyntheticArtifact(
            SoycReportLinker.class, "stories" + permutationId + ".xml.gz", baos.toByteArray());
        soycArtifacts.add(sizeMaps);
        recordSizeMap.end();
      }

      if (sourceInfoMaps != null) {
        Event recordStories = SpeedTracerLogger.start(
            CompilerEventType.MAKE_SOYC_ARTIFACTS, "phase", "recordStories");
        baos.reset();
        StoryRecorder.recordStories(logger, baos, sourceInfoMaps, js);
        soycArtifacts.add(new SyntheticArtifact(
            SoycReportLinker.class, "detailedStories" + permutationId + ".xml.gz",
            baos.toByteArray()));
        recordStories.end();
      }
View Full Code Here

TOP

Related Classes of com.google.gwt.core.ext.linker.SyntheticArtifact

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.