Examples of Archiver


Examples of org.codehaus.plexus.archiver.Archiver

            }

            final List<ContainerDescriptorHandler> containerHandlers =
                selectContainerDescriptorHandlers( assembly.getContainerDescriptorHandlers(), configSource );

            final Archiver archiver =
                createArchiver( format, assembly.isIncludeBaseDirectory(), basedir, configSource, containerHandlers,
                                recompressZippedFiles );

            archiver.setDestFile( destFile );

            final AssemblyContext context = new DefaultAssemblyContext();

            dependencyResolver.resolve( assembly, configSource, context );

            for ( AssemblyArchiverPhase phase : assemblyPhases )
            {
                phase.execute( assembly, archiver, configSource, context );
            }

            archiver.createArchive();
        }
        catch ( final ArchiverException e )
        {
            throw new ArchiveCreationException( "Error creating assembly archive " + assembly.getId() + ": "
                + e.getMessage(), e );
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

                                       final AssemblerConfigurationSource configSource,
                                       final List<ContainerDescriptorHandler> containerHandlers,
                                       boolean recompressZippedFiles )
        throws ArchiverException, NoSuchArchiverException
    {
        Archiver archiver;
        if ( format.startsWith( "tar" ) )
        {
            archiver = createTarArchiver( format, configSource.getTarLongFileMode() );
        }
        else if ( "war".equals( format ) )
        {
            archiver = createWarArchiver();
        }
        else
        {
            archiver = archiverManager.getArchiver( format );
        }

        if ( archiver instanceof AbstractZipArchiver )
        {
            ( (AbstractZipArchiver) archiver ).setRecompressAddedZips( recompressZippedFiles );
        }

        final List<FileSelector> extraSelectors = new ArrayList<FileSelector>();
        final List<ArchiveFinalizer> extraFinalizers = new ArrayList<ArchiveFinalizer>();
        if ( archiver instanceof JarArchiver )
        {
            extraSelectors.add( new JarSecurityFileSelector() );

            extraFinalizers.add( new ManifestCreationFinalizer( configSource.getMavenSession(),
                                                                configSource.getProject(),
                                                                configSource.getJarArchiveConfiguration() ) );

        }

        if ( configSource.getArchiverConfig() != null )
        {
            configureArchiver( archiver, configSource );
        }

        String prefix = "";
        if ( includeBaseDir )
        {
            prefix = finalName;
        }

        archiver =
            new AssemblyProxyArchiver( prefix, archiver, containerHandlers, extraSelectors, extraFinalizers,
                                       configSource.getWorkingDirectory(), getLogger(), configSource.isDryRun() );

        archiver.setUseJvmChmod( configSource.isUpdateOnly() );
        archiver.setIgnorePermissions( configSource.isIgnorePermissions() );
        archiver.setForced( !configSource.isUpdateOnly() );

        return archiver;
    }
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

    @Test
    public void addFile_NoPerms_CallAcceptFilesOnlyOnce()
        throws IOException, ArchiverException
    {
        final MockControl delegateControl = MockControl.createControl( Archiver.class );
        final Archiver delegate = (Archiver) delegateControl.getMock();

        delegate.addFile( null, null );
        delegateControl.setMatcher( MockControl.ALWAYS_MATCHER );
        delegateControl.setVoidCallable();

        delegate.setForced( true );
        delegateControl.setVoidCallable( MockControl.ZERO_OR_MORE );

        final CounterSelector counter = new CounterSelector( true );
        final List<FileSelector> selectors = new ArrayList<FileSelector>();
        selectors.add( counter );
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

    @Test
    public void addDirectory_NoPerms_CallAcceptFilesOnlyOnce()
        throws IOException, ArchiverException
    {
        final Archiver delegate = new JarArchiver();

        final File output = fileManager.createTempFile();

        delegate.setDestFile( output );

        final CounterSelector counter = new CounterSelector( true );
        final List<FileSelector> selectors = new ArrayList<FileSelector>();
        selectors.add( counter );
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

        catch ( IOException e )
        {
            throw new MojoExecutionException( "Failed to generate javadoc-options file: " + e.getMessage(), e );
        }
       
        Archiver archiver;
        try
        {
            archiver = archiverManager.getArchiver( "jar" );
        }
        catch ( NoSuchArchiverException e )
        {
            throw new MojoExecutionException( "Failed to retrieve jar archiver component from manager.", e );
        }
       
        File optionsFile = getJavadocOptionsFile();
        File bundleFile =
            new File( getProject().getBuild().getDirectory(), finalName + "-" + getAttachmentClassifier() + ".jar" );
        try
        {
            archiver.addFile( optionsFile, BUNDLE_OPTIONS_PATH );
           
            File javadocDir = getJavadocDirectory();
            if ( javadocDir.exists() && javadocDir.isDirectory() )
            {
                archiver.addDirectory( javadocDir, RESOURCES_DIR_PATH );
            }
           
            archiver.setDestFile( bundleFile );
            archiver.createArchive();
        }
        catch ( ArchiverException e )
        {
            throw new MojoExecutionException( "Failed to assemble javadoc-resources bundle archive. Reason: "
                + e.getMessage(), e );
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

    {
        try
        {
            //WarArchiver archiver = new WarArchiver();

            Archiver archiver = new JarArchiver();

            archiver.setDestFile( destinationFile );
            archiver.addDirectory( directory );

            //archiver.setWebxml( new File(directory, "WEB-INF/web.xml"));

            // create archive
            archiver.createArchive();

        }
        catch ( ArchiverException e )
        {
            e.printStackTrace();
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

    {
        try
        {
            //WarArchiver archiver = new WarArchiver();

            Archiver archiver = new JarArchiver();

            archiver.setUseJvmChmod( true );

            archiver.setDestFile( destinationFile );
            archiver.addDirectory( directory );

            //archiver.setWebxml( new File(directory, "WEB-INF/web.xml"));

            // create archive
            archiver.createArchive();

        }
        catch ( ArchiverException e )
        {
            e.printStackTrace();
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

    public File archive(String sourcePath, String destPath, Artifact artifact) throws ArchiverException, IOException {
        File source = serverInfo.resolve(sourcePath);
        File dest = serverInfo.resolve(destPath);
        String serverName = artifact.getArtifactId() + "-" + artifact.getVersion();
        dest = new File(dest, serverName + "-bin." + artifact.getType());
        Archiver archiver;
        if ("tar.gz".equals(artifact.getType())) {
            archiver = new TarArchiver();
            TarArchiver.TarCompressionMethod tarCompressionMethod = new TarArchiver.TarCompressionMethod();
            tarCompressionMethod.setValue("gzip");
            ((TarArchiver) archiver).setCompression(tarCompressionMethod);
            TarLongFileMode fileMode = new TarLongFileMode();
            fileMode.setValue(TarLongFileMode.GNU);
            ((TarArchiver) archiver).setLongfile(fileMode);
        } else if ("zip".equals(artifact.getType())) {
            archiver = new ZipArchiver();
        } else {
            throw new IllegalArgumentException("Unknown target type: " + artifact.getType());
        }
        archiver.setIncludeEmptyDirs(true);
        archiver.setDestFile(dest);
/* see if using plexus-archiver 1.0-alpha-7 same as maven lets us share code.  Following is for 1.0-alpha-9
        DefaultFileSet all = new DefaultFileSet();
        all.setDirectory(source);
        archiver.addFileSet(all);
*/
       
        // add in all files and mark them with default file permissions
        Map<File, Boolean> emptyDirs = new HashMap<File, Boolean>();
        Map<String, File> all = IOUtil.listAllFileNames(source);
        removeExcludes(source, all);
        for (Map.Entry<String, File> entry : all.entrySet()) {
            String destFileName = serverName + "/" + entry.getKey();
            File sourceFile = entry.getValue();
            if (sourceFile.isFile()) {
                archiver.addFile(sourceFile, destFileName, UnixStat.DEFAULT_FILE_PERM);
                // mark parent directories non-empty
                for (File parentDir = sourceFile.getParentFile();
                     parentDir != null && !parentDir.equals(source);
                     parentDir = parentDir.getParentFile()) {              
                    emptyDirs.put(parentDir, Boolean.FALSE);
                }
               
            } else if (sourceFile.isDirectory()) {                          
                Boolean isEmpty = emptyDirs.get(sourceFile);               
                if (isEmpty == null) {      
                    emptyDirs.put(sourceFile, Boolean.TRUE);
                    // mark parent directories non-empty
                    for (File parentDir = sourceFile.getParentFile();
                         parentDir != null && !parentDir.equals(source);
                         parentDir = parentDir.getParentFile()) {              
                        emptyDirs.put(parentDir, Boolean.FALSE);
                    }
                }             
            }
        }
       
        if (!all.isEmpty()) {
            emptyDirs.put(source, Boolean.FALSE);
        }
               
        String sourceDirPath = source.getAbsolutePath();
        for (Map.Entry<File, Boolean> entry : emptyDirs.entrySet()) {
            if (entry.getValue().booleanValue()) {               
                String emptyDirPath = entry.getKey().getAbsolutePath();
                String relativeDir = emptyDirPath.substring(sourceDirPath.length());
                relativeDir = relativeDir.replace('\\', '/');
                archiver.addDirectory(entry.getKey(), serverName + relativeDir);
            }
        }
        emptyDirs.clear();
       
        all.clear();
       
        // add execute permissions to all non-batch files in the bin/ directory
        File bin = new File(source, "bin");
        if (bin.exists()) {
            Map<String, File> includes = IOUtil.listAllFileNames(bin);
            for (Map.Entry<String, File> entry : includes.entrySet()) {
                String destFileName = serverName + "/bin/" + entry.getKey();
                File sourceFile = entry.getValue();
                if (!destFileName.endsWith(".bat") && sourceFile.isFile()) {
                    archiver.addFile(sourceFile, destFileName, UnixStat.DEFAULT_DIR_PERM);
                }
            }
        }
       
        archiver.createArchive();
        return dest;
    }
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

    {
        try
        {
            // WarArchiver archiver = new WarArchiver();

            Archiver archiver = new JarArchiver();

            archiver.setUseJvmChmod( true );

            archiver.setDestFile( destinationFile );
            archiver.addDirectory( directory );

            // archiver.setWebxml( new File(directory, "WEB-INF/web.xml"));

            // create archive
            archiver.createArchive();

        }
        catch ( ArchiverException e )
        {
            e.printStackTrace();
View Full Code Here

Examples of org.codehaus.plexus.archiver.Archiver

            }

            final List<ContainerDescriptorHandler> containerHandlers =
                selectContainerDescriptorHandlers( assembly.getContainerDescriptorHandlers(), configSource );

            final Archiver archiver =
                createArchiver( format, assembly.isIncludeBaseDirectory(), basedir, configSource, containerHandlers,
                                recompressZippedFiles );

            archiver.setDestFile( destFile );

            for ( AssemblyArchiverPhase phase : assemblyPhases )
            {
                phase.execute( assembly, archiver, configSource );
            }

            archiver.createArchive();
        }
        catch ( final ArchiverException e )
        {
            throw new ArchiveCreationException( "Error creating assembly archive " + assembly.getId() + ": "
                + e.getMessage(), e );
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.