001
014
015 package com.liferay.portal.zip;
016
017 import com.liferay.portal.kernel.zip.ZipWriter;
018 import com.liferay.portal.kernel.zip.ZipWriterFactory;
019 import com.liferay.portal.util.ClassLoaderUtil;
020
021 import java.io.File;
022
023
026 public class ZipWriterFactoryImpl implements ZipWriterFactory {
027
028 @Override
029 public ZipWriter getZipWriter() {
030 ClassLoader portalClassLoader = ClassLoaderUtil.getPortalClassLoader();
031
032 ClassLoader contextClassLoader =
033 ClassLoaderUtil.getContextClassLoader();
034
035 try {
036 if (contextClassLoader != portalClassLoader) {
037 ClassLoaderUtil.setContextClassLoader(portalClassLoader);
038 }
039
040 return new ZipWriterImpl();
041 }
042 finally {
043 if (contextClassLoader != portalClassLoader) {
044 ClassLoaderUtil.setContextClassLoader(contextClassLoader);
045 }
046 }
047 }
048
049 @Override
050 public ZipWriter getZipWriter(File file) {
051 ClassLoader portalClassLoader = ClassLoaderUtil.getPortalClassLoader();
052
053 ClassLoader contextClassLoader =
054 ClassLoaderUtil.getContextClassLoader();
055
056 try {
057 if (contextClassLoader != portalClassLoader) {
058 ClassLoaderUtil.setContextClassLoader(portalClassLoader);
059 }
060
061 return new ZipWriterImpl(file);
062 }
063 finally {
064 if (contextClassLoader != portalClassLoader) {
065 ClassLoaderUtil.setContextClassLoader(contextClassLoader);
066 }
067 }
068 }
069
070 }