Package com.jigen.ant

Examples of com.jigen.ant.Installer


  }
 
  @Override
  public void executeTask() throws Exception
  {
    Installer installer = jigen.getInstallers().get(installerIndex);
   
    String targetsDescriptor = Installer.Target.getDescriptor(installer.getTargets());
   
    String installerId = jigen.getProduct().getUnixName() + "-" + jigen.getProduct().getVersion() + "-" + targetsDescriptor;

    File jarOutputFile = new File(installer.getDestination() + File.separator + installerId + ".jar");
   
    publish("Starting " + jarOutputFile.getName() + "...");
   
    JarGenerator jarGenerator = new JarGenerator(jarOutputFile, "/jix.jar");
   
    ConfigFileGenerator configFileGenerator = new ConfigFileGenerator();
   
    if (installer.containsTarget(Installer.Target.WIN))
    {
      File wsfOutputFile = new File(installer.getDestination() + File.separator + "Run " + installerId + ".wsf");
 
      MsiGenerator msiGenerator = new MsiGenerator(jigen);
     
      publish("Generating WiX file...");
     
      msiGenerator.generateWixFile();
     
      publish("Generating WiX object file...");
     
      StringWriter candleSw = new StringWriter();
     
      try
      {
        msiGenerator.candle(new PrintWriter(candleSw));
        publish(candleSw.toString());
      }
      catch(RuntimeException e)
      {
        publish(candleSw.toString());
        throw e;
      }
     
      publish("Generating MSI file...");
     
      StringWriter lightSw = new StringWriter();
     
      File msiFile;
     
      try
      {
        msiFile = msiGenerator.light(lightSw);
        publish(lightSw.toString());
      }
      catch(RuntimeException e)
      {
        publish(lightSw.toString());
        throw e;
      }
     
      publish("Appending MSI file...");
     
      jarGenerator.appendFile("windows-installer.msi", msiFile);
     
      configFileGenerator.appendValue("win.product.guid", msiGenerator.getProductGuid());

      msiGenerator.dispose();

      publish("Generating WSF script...");

      WsfGenerator wsfGenerator = new WsfGenerator(jarOutputFile.getName());
     
      wsfGenerator.format(wsfOutputFile);
    }
   
    if (installer.containsTarget(Installer.Target.UNIX))
    {
      UnixPackageGenerator packageGenerator = new UnixPackageGenerator(jigen);
     
      publish("Packaging runnable files...");
     
      packageGenerator.appendJigenRunnables();
     
      publish("Packaging runnable scripts and shortcuts...");
     
      packageGenerator.appendJigenRunnableScripts();
      packageGenerator.appendIcons();
      packageGenerator.appendShortcuts();
      packageGenerator.appendUninstaller();
     
      publish("Packaging resource files...");
     
      packageGenerator.appendJigenResources();
     
      publish("Closing package.");

      packageGenerator.closeFile();
     
      jarGenerator.appendFile("unix-package.zip", packageGenerator.getFile());
     
      publish("Adding text files list...");
     
      jarGenerator.appendFile("text-files.txt",       packageGenerator.getTextFilesList());
      jarGenerator.appendFile("executable-files.txt", packageGenerator.getExecutableFilesList());
         
      packageGenerator.dispose();
    }
   
    configFileGenerator.appendValue("product.is_license_attached",    jigen.getProduct().isSetLicense());
    configFileGenerator.appendValue("product.name",                   jigen.getProduct().getUnixName());
    configFileGenerator.appendValue("product.long_name",              jigen.getProduct().getName());
    configFileGenerator.appendValue("product.version",                jigen.getProduct().getVersion());

    configFileGenerator.appendValue("program.has_desktop_shortcuts",   jigen.hasDesktopShortcuts());
    configFileGenerator.appendValue("program.has_startmenu_shortcuts", jigen.hasStartMenuShortcuts());
   
    configFileGenerator.appendValue("environment.min_java_version", jigen.getEnvironment().getRequiredJava());
    configFileGenerator.appendValue("environment.extensions", ':',  jigen.getExtensionsMap());

    TreeMap<String,String> supportedPlatforms = new TreeMap<String,String>();
   
    for (Installer.Target target : installer.getTargets())
      supportedPlatforms.put(target.toString(), target.getLongDescription());
   
    configFileGenerator.appendValue("environment.platforms", ':', supportedPlatforms);
   
    if (jigen.getProduct().isSetLicense())
View Full Code Here


    return antAssociate;
  }

  private Installer importInstaller(com.jigen.xsd.Installer installer)
  {
    Installer antInstaller = new Installer();
   
    antInstaller.setDestination(getFile(installer.getDestination()));
   
    for(OsName.Enum target : installer.getTargetArray())
      antInstaller.addTarget(target.toString());
   
    return antInstaller;
  }
View Full Code Here

TOP

Related Classes of com.jigen.ant.Installer

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.