Repository: flex-utilities Updated Branches: refs/heads/develop 868e68ee2 -> eb90937ca
- Added generation of the templates artifacts for flex and air - Added generation of an "adl" zip-artifact containing the adl executables for the air-runtime package Project: http://git-wip-us.apache.org/repos/asf/flex-utilities/repo Commit: http://git-wip-us.apache.org/repos/asf/flex-utilities/commit/eb90937c Tree: http://git-wip-us.apache.org/repos/asf/flex-utilities/tree/eb90937c Diff: http://git-wip-us.apache.org/repos/asf/flex-utilities/diff/eb90937c Branch: refs/heads/develop Commit: eb90937ca07738d1c80ba747284ec7d1357f918d Parents: 868e68e Author: Christofer Dutz <[email protected]> Authored: Sat Jul 23 15:07:11 2016 +0200 Committer: Christofer Dutz <[email protected]> Committed: Sat Jul 23 15:07:23 2016 +0200 ---------------------------------------------------------------------- .../utilities/converter/air/AirConverter.java | 53 ++++++++++++++++---- .../utilities/converter/flex/FlexConverter.java | 26 ++++++++++ 2 files changed, 70 insertions(+), 9 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/eb90937c/flex-maven-tools/flex-sdk-converter/converters/air/src/main/java/org/apache/flex/utilities/converter/air/AirConverter.java ---------------------------------------------------------------------- diff --git a/flex-maven-tools/flex-sdk-converter/converters/air/src/main/java/org/apache/flex/utilities/converter/air/AirConverter.java b/flex-maven-tools/flex-sdk-converter/converters/air/src/main/java/org/apache/flex/utilities/converter/air/AirConverter.java index 5ea1231..5360b83 100644 --- a/flex-maven-tools/flex-sdk-converter/converters/air/src/main/java/org/apache/flex/utilities/converter/air/AirConverter.java +++ b/flex-maven-tools/flex-sdk-converter/converters/air/src/main/java/org/apache/flex/utilities/converter/air/AirConverter.java @@ -61,6 +61,7 @@ public class AirConverter extends BaseConverter implements Converter { generateCompilerArtifacts(); generateRuntimeArtifacts(); generateFrameworkArtifacts(); + generateTemplatesArtifact(); } /** @@ -271,19 +272,25 @@ public class AirConverter extends BaseConverter implements Converter { runtime.setVersion(airSdkVersion); runtime.setPackaging("pom"); - // Create a list of all libs that should belong to the AIR SDK runtime. + // Generate artifacts from the adl/adl.exe files + MavenArtifact adl = new MavenArtifact(); + adl.setGroupId("com.adobe.air.runtime"); + adl.setArtifactId("adl"); + adl.setVersion(airSdkVersion); + adl.setPackaging("zip"); final File directory = new File(rootSourceDirectory, "bin"); if (!directory.exists() || !directory.isDirectory()) { throw new ConverterException("Runtime directory does not exist."); } - final List<File> files = new ArrayList<File>(); - files.addAll(Arrays.asList(directory.listFiles(new AirRuntimeFilter()))); - - // Generate artifacts for every jar in the input directories (Actually this is only one file). - for (final File sourceFile : files) { - final MavenArtifact artifact = resolveArtifact(sourceFile, "com.adobe.air.runtime", airSdkVersion); - runtime.addDependency(artifact); + try { + File adlZip = File.createTempFile("adl-" + airSdkVersion, "zip"); + generateZip(directory.listFiles(new AirRuntimeFilter()), adlZip); + adl.addDefaultBinaryArtifact(adlZip); + } catch (IOException e) { + throw new ConverterException("Error creating adl zip.", e); } + runtime.addDependency(adl); + writeArtifact(adl); // Zip up the AIR runtime directory. final MavenArtifact airRuntimeArtifact = generateAirRuntimeArtifact(rootSourceDirectory); @@ -327,6 +334,34 @@ public class AirConverter extends BaseConverter implements Converter { writeArtifact(framework); } + protected void generateTemplatesArtifact() throws ConverterException { + // Create the root artifact. + final MavenArtifact templates = new MavenArtifact(); + templates.setGroupId("com.adobe.air"); + templates.setArtifactId("templates"); + templates.setVersion(airSdkVersion); + templates.setPackaging("jar"); + + final File templatesDir = new File(rootSourceDirectory, "templates"); + final File[] directories = templatesDir.listFiles(new FileFilter() { + public boolean accept(File pathname) { + return pathname.isDirectory() && ("air".equals(pathname.getName()) || + "extensions".equals(pathname.getName()) || "sdk".equals(pathname.getName())); + } + }); + + try { + final File jar = File.createTempFile("air-templates-" + airSdkVersion, "jar"); + generateZip(directories, jar); + templates.addDefaultBinaryArtifact(jar); + } catch (IOException e) { + throw new ConverterException("Error creating runtime zip.", e); + } + + // Write this artifact to file. + writeArtifact(templates); + } + /////////////////////////////////////////////////////////////////////////////////////////////////// // // Utility methods @@ -411,7 +446,7 @@ public class AirConverter extends BaseConverter implements Converter { public static class AirRuntimeFilter implements FilenameFilter { public boolean accept(File dir, String name) { - return name.equalsIgnoreCase("adl.exe"); + return name.equalsIgnoreCase("adl.exe") || name.equalsIgnoreCase("adl"); } } http://git-wip-us.apache.org/repos/asf/flex-utilities/blob/eb90937c/flex-maven-tools/flex-sdk-converter/converters/flex/src/main/java/org/apache/flex/utilities/converter/flex/FlexConverter.java ---------------------------------------------------------------------- diff --git a/flex-maven-tools/flex-sdk-converter/converters/flex/src/main/java/org/apache/flex/utilities/converter/flex/FlexConverter.java b/flex-maven-tools/flex-sdk-converter/converters/flex/src/main/java/org/apache/flex/utilities/converter/flex/FlexConverter.java index e5a178a..cbe7e87 100644 --- a/flex-maven-tools/flex-sdk-converter/converters/flex/src/main/java/org/apache/flex/utilities/converter/flex/FlexConverter.java +++ b/flex-maven-tools/flex-sdk-converter/converters/flex/src/main/java/org/apache/flex/utilities/converter/flex/FlexConverter.java @@ -69,6 +69,7 @@ public class FlexConverter extends BaseConverter implements Converter { generateCompilerArtifacts(); generateFrameworkArtifacts(); + generateTemplatesArtifact(); } /** @@ -195,6 +196,31 @@ public class FlexConverter extends BaseConverter implements Converter { } } + protected void generateTemplatesArtifact() throws ConverterException { + // Create the root artifact. + final MavenArtifact templates = new MavenArtifact(); + templates.setGroupId("org.apache.flex"); + templates.setArtifactId("templates"); + templates.setVersion(flexSdkVersion); + templates.setPackaging("jar"); + + final File templatesDir = new File(rootSourceDirectory, "templates"); + final File[] directories = templatesDir.listFiles(new FileFilter() { + public boolean accept(File pathname) { + return pathname.isDirectory() && "automation-runtimeloading-files".equals(pathname.getName()); + } + }); + + try { + final File jar = File.createTempFile("flex-templates-" + flexSdkVersion, "jar"); + generateZip(directories, jar); + templates.addDefaultBinaryArtifact(jar); + } catch (IOException e) { + throw new ConverterException("Error creating runtime zip.", e); + } + + } + /////////////////////////////////////////////////////////////////////////////////////////////////// // // Utility methods
