Created
April 26, 2022 16:02
-
-
Save CorneAussems/2836e13b88a0a6ddcf59796dc48d31c6 to your computer and use it in GitHub Desktop.
Liferay 7.0 Regenerate Thumbnails Groovy
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import com.liferay.document.library.kernel.service.* | |
import com.liferay.document.library.kernel.util.* | |
import com.liferay.portlet.documentlibrary.util.* | |
import com.liferay.portlet.documentlibrary.lar.* | |
import com.liferay.portlet.documentlibrary.service.* | |
import com.liferay.portal.kernel.service.*; | |
import com.liferay.portlet.documentlibrary.model.* | |
import com.liferay.portal.kernel.dao.orm.* | |
final def SCRIPT_ID = "thumbnailed-20210426-PDF" | |
outputFile = new File("""${System.getProperty("liferay.home")}/logs/out-${SCRIPT_ID}.txt""") | |
outputFile.getParentFile().mkdirs() | |
def trace(message) { | |
out.println(message) | |
outputFile << "${message}\n" | |
} | |
try{ | |
companies = CompanyLocalServiceUtil.getCompanies(QueryUtil.ALL_POS, QueryUtil.ALL_POS) | |
for(c=0;c<companies.size();c++){ | |
company = companies.get(c) | |
trace(company) | |
groups = GroupLocalServiceUtil.getGroups(company.getCompanyId(), -1, true) | |
for(i=0;i<groups.size();i++){ | |
group = groups.get(i) | |
groupId = group.getGroupId() | |
allFiles = DLAppServiceUtil.getGroupFileEntries(groupId, 0, QueryUtil.ALL_POS, QueryUtil.ALL_POS) | |
// filesCount = DLAppServiceUtil.getGroupFileEntriesCount(groupId, 0) | |
// trace('groupId='+groupId+' filesCount='+filesCount+' group='+group.name) | |
for(ii=0;ii<allFiles.size();ii++){ | |
file = allFiles.get(ii) | |
fileVersion = file.getFileVersion() | |
latestVersion = file.getFileVersion() | |
// trace('group='+groupId+' file='+file.getTitle()+' fileVersion='+fileVersion.getTitle()+' version='+fileVersion.getVersion()+' latestVersion='+file.getLatestFileVersion() ) | |
// trace('group='+groupId+' version='+fileVersion.version+' latestVersion='+file.latestFileVersion.version +' file='+file.title ) | |
// 25000 images takes ~2 hours | |
if(ImageProcessorUtil.isImageSupported(fileVersion) && !ImageProcessorUtil.hasImages(fileVersion) ){ | |
try{ | |
ImageProcessorUtil.generateImages(null,fileVersion); | |
trace(ii+'/'+allFiles.size()+' Image Thumbnailed: group='+groupId+' file='+file.title ) | |
} catch (e){ | |
trace('ImageProcessorUtil.generateImages Exception='+e +' file='+file.title ) | |
} | |
} | |
/** | |
if(PDFProcessorUtil.isDocumentSupported(fileVersion) && !PDFProcessorUtil.hasImages(fileVersion) ){ | |
try{ | |
PDFProcessorUtil.generateImages(null,fileVersion); | |
trace(ii+'/'+allFiles.size()+' PDF Thumbnailed: group='+groupId+' file='+file.title ) | |
} catch (e){ | |
trace('PDFProcessorUtil.generateImages Exception='+e +' file='+file.title ) | |
} | |
} | |
**/ | |
/** | |
if(VideoProcessor.isVideoSupported(fileVersion) && !VideoProcessor.hasVideo(fileVersion) ){ | |
try{ | |
VideoProcessor.generateVideo(null,fileVersion); | |
trace(ii+'/'+allFiles.size()+' Video Thumbnailed: group='+groupId+' file='+file.title ) | |
} catch (e){ | |
trace('VideoProcessor.generateVideo Exception='+e +' file='+file.title ) | |
} | |
} | |
**/ | |
} | |
trace('Processed files:'+ii) | |
} | |
} | |
}catch ( e ){ | |
trace('Exception='+e) | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment