ArchiveUtils

Utility methods for archive handling. For example, to create a ZIP or JAR. 

Methods

createZip

Description:

MethodReturn valuesDescription

createZip(File path, OutputStream os)

void

Create ZIP archive from file.

path: The file to compress.

os: The output stream of the file.

Example:

package com.openkm;

import java.io.ByteArrayOutputStream;
import java.io.File;

import com.openkm.util.ArchiveUtils;
import com.openkm.util.ContextWrapper;

public class Test {

    public static void main(String[] args) {
        try {
            ArchiveUtils archiveUtils = ContextWrapper.getContext().getBean(ArchiveUtils.class);
            File file = new File("/home/openkm/test.pdf");
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            archiveUtils.createZip(file, baos);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

createJar

Description:

MethodReturn valuesDescription

createJar(File path, String root, OutputStream os)

void

Recursively create JAR archive from directory.

path: The file to compress.

root: A text with destiny of the file.

os: The output stream of the file.

Example:

package com.openkm;

import java.io.File;
import java.io.FileOutputStream;
import java.io.StringWriter;

import com.openkm.util.ArchiveUtils;
import com.openkm.util.ContextWrapper;
import com.openkm.util.FileUtils;
import com.openkm.util.PathUtils;
import com.openkm.util.impexp.RepositoryExporter;
import com.openkm.util.impexp.TextInfoDecorator;

public class Test {

    public static void main(String[] args) {
        try {
            ArchiveUtils archiveUtils = ContextWrapper.getContext().getBean(ArchiveUtils.class);
            PathUtils pathUtils = ContextWrapper.getContext().getBean(PathUtils.class);
            FileUtils fileUtils = ContextWrapper.getContext().getBean(FileUtils.class);
            RepositoryExporter repositoryExporter = ContextWrapper.getContext().getBean(RepositoryExporter.class);

            StringWriter out = new StringWriter();

            File dirFile = new File("/home/openkm");
            final File tmpFile = File.createTempFile("test", ".jar", dirFile);
            FileOutputStream os = new FileOutputStream(tmpFile);

            File tmp = fileUtils.createTempDir();
            repositoryExporter.exportFolder(null, "/okm:root/jar", tmp, false, out, new TextInfoDecorator("/okm:root/jar"));

            // Jar files
            archiveUtils.createJar(tmp, pathUtils.getName("/home/openkm"), os);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
Table of contents [ Hide Show ]