List of usage examples for com.liferay.portal.kernel.util FileUtil getExtension
public static String getExtension(String fileName)
From source file:com.liferay.portlet.imagegallery.action.EditImageAction.java
License:Open Source License
protected String getContentType(UploadPortletRequest uploadRequest, File file) { String contentType = GetterUtil.getString(uploadRequest.getContentType("file")); if (contentType.equals("application/octet-stream")) { String ext = GetterUtil.getString(FileUtil.getExtension(file.getName())).toLowerCase(); if (Validator.isNotNull(ext)) { contentType = ContentTypeUtil.getContentType(ext); }/* ww w .ja va 2 s . c om*/ } return contentType; }
From source file:com.liferay.portlet.imagegallery.action.EditImageAction.java
License:Open Source License
protected void updateImage(ActionRequest actionRequest) throws Exception { UploadPortletRequest uploadRequest = PortalUtil.getUploadPortletRequest(actionRequest); long imageId = ParamUtil.getLong(uploadRequest, "imageId"); long folderId = ParamUtil.getLong(uploadRequest, "folderId"); String name = ParamUtil.getString(uploadRequest, "name"); String fileName = uploadRequest.getFileName("file"); String description = ParamUtil.getString(uploadRequest, "description", fileName); File file = uploadRequest.getFile("file"); String contentType = getContentType(uploadRequest, file); if (contentType.equals("application/octet-stream")) { String ext = GetterUtil.getString(FileUtil.getExtension(file.getName())).toLowerCase(); if (Validator.isNotNull(ext)) { contentType = ContentTypeUtil.getContentType(ext); }/*w ww .j a v a 2 s . c o m*/ } ServiceContext serviceContext = ServiceContextFactory.getInstance(IGImage.class.getName(), actionRequest); if (imageId <= 0) { // Add image if (Validator.isNull(name)) { name = fileName; } IGImage image = IGImageServiceUtil.addImage(folderId, name, description, file, contentType, serviceContext); AssetPublisherUtil.addAndStoreSelection(actionRequest, IGImage.class.getName(), image.getImageId(), -1); MetadataActionUtil.addMetadata(image, actionRequest); } else { // Update image if (Validator.isNull(fileName)) { file = null; } IGImageServiceUtil.updateImage(imageId, folderId, name, description, file, contentType, serviceContext); } AssetPublisherUtil.addRecentFolderId(actionRequest, IGImage.class.getName(), folderId); }
From source file:com.liferay.resourcesimporter.util.ResourceImporter.java
License:Open Source License
@Override protected void addLayoutPrototype(String dirName) throws Exception { Set<String> resourcePaths = servletContext.getResourcePaths(resourcesDir.concat(dirName)); if (resourcePaths == null) { return;//from ww w . j a va 2 s. com } for (String resourcePath : resourcePaths) { String extension = FileUtil.getExtension(resourcePath); if (!extension.equals("json")) { return; } URL url = servletContext.getResource(resourcePath); URLConnection urlConnection = url.openConnection(); addLayoutPrototype(urlConnection.getInputStream()); } }
From source file:com.liferay.rtl.servlet.filters.ComboServletFilter.java
License:Open Source License
@Override protected void processFilter(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws Exception { Set<String> modulePathsSet = new LinkedHashSet<String>(); Enumeration<String> enu = request.getParameterNames(); if (ServerDetector.isWebSphere()) { Map<String, String[]> parameterMap = HttpUtil.getParameterMap(request.getQueryString()); enu = Collections.enumeration(parameterMap.keySet()); }/*from ww w. j a va 2 s .c o m*/ while (enu.hasMoreElements()) { String name = enu.nextElement(); if (_protectedParameters.contains(name)) { continue; } modulePathsSet.add(name); } if (modulePathsSet.size() == 0) { response.sendError(HttpServletResponse.SC_BAD_REQUEST, "Modules paths set is empty"); return; } String[] modulePaths = modulePathsSet.toArray(new String[modulePathsSet.size()]); String firstModulePath = modulePaths[0]; String extension = FileUtil.getExtension(firstModulePath); String minifierType = ParamUtil.getString(request, "minifierType"); if (Validator.isNull(minifierType)) { minifierType = "js"; if (StringUtil.equalsIgnoreCase(extension, _CSS_EXTENSION)) { minifierType = "css"; } } if (!minifierType.equals("css") && !minifierType.equals("js")) { minifierType = "js"; } String modulePathsString = null; byte[][] bytesArray = null; if (!PropsValues.COMBO_CHECK_TIMESTAMP) { modulePathsString = Arrays.toString(modulePaths); if (minifierType.equals("css") && DynamicCSSUtil.isRightToLeft(request)) { modulePathsString += ".rtl"; } bytesArray = _bytesArrayPortalCache.get(modulePathsString); } if (bytesArray == null) { String rootPath = ServletContextUtil.getRootPath(_servletContext); bytesArray = new byte[modulePaths.length][]; for (int i = 0; i < modulePaths.length; i++) { String modulePath = modulePaths[i]; if (!validateModuleExtension(modulePath)) { response.setHeader(HttpHeaders.CACHE_CONTROL, HttpHeaders.CACHE_CONTROL_NO_CACHE_VALUE); response.setStatus(HttpServletResponse.SC_NOT_FOUND); return; } byte[] bytes = new byte[0]; if (Validator.isNotNull(modulePath)) { modulePath = StringUtil.replaceFirst(modulePath, PortalUtil.getPathContext(), StringPool.BLANK); URL url = getResourceURL(_servletContext, rootPath, modulePath); if (url == null) { response.setHeader(HttpHeaders.CACHE_CONTROL, HttpHeaders.CACHE_CONTROL_NO_CACHE_VALUE); response.setStatus(HttpServletResponse.SC_NOT_FOUND); return; } bytes = getResourceContent(request, response, url, modulePath, minifierType); } bytesArray[i] = bytes; } if ((modulePathsString != null) && !PropsValues.COMBO_CHECK_TIMESTAMP) { _bytesArrayPortalCache.put(modulePathsString, bytesArray); } } String contentType = ContentTypes.TEXT_JAVASCRIPT; if (StringUtil.equalsIgnoreCase(extension, _CSS_EXTENSION)) { contentType = ContentTypes.TEXT_CSS; } response.setContentType(contentType); ServletResponseUtil.write(response, bytesArray); }
From source file:com.liferay.sync.internal.upgrade.v1_0_2.UpgradeSyncDLObject.java
License:Open Source License
protected void verifyMacPackages(long groupId) throws Exception { String[] fileNames = SyncServiceConfigurationValues.SYNC_MAC_PACKAGE_METADATA_FILE_NAMES; StringBundler sb = new StringBundler((fileNames.length * 4) + 5); sb.append("select DLFolder.folderId, DLFolder.name from DLFolder, "); sb.append("DLFileEntry where DLFolder.repositoryId = "); sb.append(groupId);/*from w w w . ja va 2 s. c om*/ sb.append(" and DLFileEntry.folderId = DLFolder.folderId and "); sb.append("DLFileEntry.title in ("); for (int i = 0; i < fileNames.length; i++) { sb.append(StringPool.APOSTROPHE); sb.append(fileNames[i]); sb.append(StringPool.APOSTROPHE); if (i != (fileNames.length - 1)) { sb.append(CharPool.COMMA); } } sb.append(")"); try (PreparedStatement ps1 = connection.prepareStatement(sb.toString()); PreparedStatement ps2 = AutoBatchPreparedStatementUtil.concurrentAutoBatch(connection, "update SyncDLObject set extraSettings = ? where typePK " + "= ?"); ResultSet rs = ps1.executeQuery()) { while (rs.next()) { long folderId = rs.getLong("folderId"); String name = rs.getString("name"); String extension = FileUtil.getExtension(name); if (!ArrayUtil.contains(SyncServiceConfigurationValues.SYNC_MAC_PACKAGE_FOLDER_EXTENSIONS, extension)) { continue; } JSONObject extraSettingsJSONObject = JSONFactoryUtil.createJSONObject(); extraSettingsJSONObject.put("macPackage", true); ps2.setString(1, extraSettingsJSONObject.toString()); ps2.setLong(2, folderId); ps2.addBatch(); } ps2.executeBatch(); } }
From source file:com.liferay.web.extender.servlet.BundleServletContext.java
License:Open Source License
@Override public RequestDispatcher getRequestDispatcher(String path) { String alias = path;/*from ww w .j a v a 2 s .c om*/ FilterChain filterChain = getFilterChain(alias); if (path.startsWith(OSGiServlet.SERVLET_MAPPING) && path.endsWith(OSGiServlet.INVOKER_PATH)) { return new BundleRequestDispatcher(path, false, path, _portletServlet, filterChain); } if (!isValidPath(path)) { return null; } if (Validator.isNull(alias)) { alias = StringPool.SLASH; } if (_servletsMap.containsKey(alias)) { return new BundleRequestDispatcher(alias, false, path, _servletsMap.get(alias), filterChain); } String extensionMapping = FileUtil.getExtension(alias).toLowerCase(); if (Validator.isNotNull(extensionMapping)) { extensionMapping = _EXTENSION_PREFIX.concat(extensionMapping); } alias = alias.substring(0, alias.lastIndexOf(StringPool.SLASH)); while (alias.length() != 0) { if (_servletsMap.containsKey(alias)) { return new BundleRequestDispatcher(alias, false, path, _servletsMap.get(alias), filterChain); } else if (_servletsMap.containsKey(alias.concat(extensionMapping))) { return new BundleRequestDispatcher(alias.concat(extensionMapping), true, path, _servletsMap.get(alias.concat(extensionMapping)), filterChain); } alias = alias.substring(0, alias.lastIndexOf(StringPool.SLASH)); } if (_servletsMap.containsKey(StringPool.SLASH.concat(extensionMapping))) { return new BundleRequestDispatcher(StringPool.SLASH.concat(extensionMapping), true, path, _servletsMap.get(StringPool.SLASH.concat(extensionMapping)), filterChain); } if (_servletsMap.containsKey(StringPool.SLASH)) { return new BundleRequestDispatcher(StringPool.SLASH, false, path, _servletsMap.get(StringPool.SLASH), filterChain); } return null; }
From source file:cz.topolik.fsrepo.model.FileSystemFileEntry.java
License:Open Source License
public String getExtension() { return FileUtil.getExtension(getTitle()); }
From source file:it.smc.calendar.sync.caldav.LiferayCalDAVStorageImpl.java
License:Open Source License
@Override public Resource getResource(WebDAVRequest webDAVRequest) throws WebDAVException { try {/*w w w. j a v a2 s . c om*/ String[] pathArray = webDAVRequest.getPathArray(); String method = webDAVRequest.getHttpServletRequest().getMethod(); if (CalDAVUtil.isPrincipalRequest(webDAVRequest)) { long userid = GetterUtil.getLong(pathArray[2]); User user = null; try { user = UserServiceUtil.getUserById(userid); } catch (Exception e) { if (_log.isWarnEnabled()) { _log.warn(e); } } if (user == null) { throw new WebDAVException("No user were found with id " + pathArray[2]); } return toResource(webDAVRequest, user); } // calendar resource collection request String calendarResourceGUID = pathArray[0]; CalendarResource calendarResource = CalendarResourceLocalServiceUtil .fetchCalendarResourceByUuidAndCompanyId(calendarResourceGUID, webDAVRequest.getCompanyId()); if (calendarResource == null) { throw new ResourceNotFoundException( "No calendar resource were found for GUID " + calendarResourceGUID); } //CalendarResourcePermission.check( // webDAVRequest.getPermissionChecker(), calendarResource, // ActionKeys.VIEW); if (CalDAVUtil.isCalendarBookingRequest(webDAVRequest) && !method.equals(CalDAVHttpMethods.PUT)) { // calendar booking resource String resourceName = pathArray[pathArray.length - 1]; String resourceExtension = StringPool.PERIOD.concat(FileUtil.getExtension(resourceName)); if (resourceName.endsWith(resourceExtension)) { String resourceShortName = StringUtil.replace(resourceName, resourceExtension, StringPool.BLANK); long calendarBookingId = GetterUtil.getLong(resourceShortName); CalendarBooking calendarBooking = CalendarBookingServiceUtil .fetchCalendarBooking(calendarBookingId); if (calendarBooking == null) { throw new ResourceNotFoundException( "Calendar booking not found with id: " + calendarBookingId); } return toResource(webDAVRequest, calendarBooking); } } if (CalDAVUtil.isCalendarRequest(webDAVRequest)) { // calendar request String calendarGUID = pathArray[2]; Calendar calendar = CalendarLocalServiceUtil.fetchCalendarByUuidAndCompanyId(calendarGUID, webDAVRequest.getCompanyId()); if (calendar == null) { throw new ResourceNotFoundException("No calendar were found for GUID " + calendarGUID); } //CalendarPermission.check( // webDAVRequest.getPermissionChecker(), calendar, // ActionKeys.VIEW); return toResource(webDAVRequest, calendar); } else { return toResource(webDAVRequest, calendarResource); } } catch (Exception e) { throw new WebDAVException(e); } }
From source file:m.omarh.liferay.resources.importer.generator.SitemapGeneratorPortlet.java
License:Open Source License
@Override public void serveResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse) throws IOException, PortletException { String resourceId = resourceRequest.getResourceID(); boolean isDocument = ParamUtil.getBoolean(resourceRequest, "document"); ThemeDisplay themeDisplay = (ThemeDisplay) resourceRequest.getAttribute(WebKeys.THEME_DISPLAY); if (resourceId.equals("sitemap.json")) { String sitemap = JSONUtil.valorizeVariables(themeDisplay, SiteMapUtil.generateJSONSitemap(themeDisplay.getScopeGroup()).toString()); writeJSON(resourceRequest, resourceResponse, JSONUtil.beautify(sitemap)); } else if (resourceId.equals("assets.json")) { String assets = JSONUtil.valorizeVariables(themeDisplay, AssetsUtil.generateJSONAsset(themeDisplay.getScopeGroup()).toString()); writeJSON(resourceRequest, resourceResponse, JSONUtil.beautify(assets)); } else if (resourceId.endsWith(".html") && !isDocument) { writeJSON(resourceRequest, resourceResponse, JournalArticleUtil.getJournalArticleContentJSONObject(themeDisplay, resourceId)); } else if (resourceId.endsWith(".xml") && !isDocument) { String uuid = ParamUtil.getString(resourceRequest, "uuid"); writeJSON(resourceRequest, resourceResponse, JournalStructureUtil.getJournalStructureContent(themeDisplay, uuid)); } else if (resourceId.endsWith(".vm") || resourceId.endsWith(".ftl")) { String uuid = ParamUtil.getString(resourceRequest, "uuid"); writeJSON(resourceRequest, resourceResponse, JournalTemplateUtil.getJournalTemplateContent(themeDisplay, uuid)); } else if (resourceId.endsWith("articles_")) { writeJSON(resourceRequest, resourceResponse, JournalArticleUtil.buildJSONJournalArticles(themeDisplay, false, StringPool.BLANK, StringPool.BLANK)); } else if (resourceId.endsWith("structures_")) { writeJSON(resourceRequest, resourceResponse, JournalStructureUtil.buildJSONDDMStrcutures( themeDisplay.getScopeGroup(), false, StringPool.BLANK, StringPool.BLANK)); } else if (resourceId.endsWith("templates_")) { writeJSON(resourceRequest, resourceResponse, JournalTemplateUtil.buildJSONDDMTemplates( themeDisplay.getScopeGroup(), false, StringPool.BLANK, StringPool.BLANK)); } else if (resourceId.endsWith("application_display_")) { writeJSON(resourceRequest, resourceResponse, ApplicationDisplayUtil.buildJSONApplicationDisplay( themeDisplay.getScopeGroup(), false, StringPool.BLANK, StringPool.BLANK)); } else if (resourceId.endsWith("documents_")) { writeJSON(resourceRequest, resourceResponse, DocumentUtil .buildJSONDocuments(themeDisplay.getScopeGroup(), false, StringPool.BLANK, StringPool.BLANK)); } else if (ArrayUtil.contains(DocumentUtil.TEXT_EXTENSIONS, FileUtil.getExtension(resourceId))) { String uuid = ParamUtil.getString(resourceRequest, "uuid"); writeJSON(resourceRequest, resourceResponse, DocumentUtil.getDLFileContent(themeDisplay, uuid)); } else if (ArrayUtil.contains(DocumentUtil.MIME_TYPES_CONTENT_DISPOSITION_INLINE, FileUtil.getExtension(resourceId)) && isDocument) { String uuid = ParamUtil.getString(resourceRequest, "uuid"); InputStream inputStream = new ByteArrayInputStream(Base64 .encode(DocumentUtil.getDLFileBytes(themeDisplay, uuid)).getBytes(StandardCharsets.UTF_8)); ServletResponseUtil.sendFile(PortalUtil.getHttpServletRequest(resourceRequest), PortalUtil.getHttpServletResponse(resourceResponse), resourceId, inputStream); /*JSONObject base64JSONObject = JSONFactoryUtil.createJSONObject(); base64JSONObject.put("content", Base64.encode(DocumentUtil.getDLFileBytes(themeDisplay, uuid))); /* www. j av a 2 s . co m*/ writeJSON(resourceRequest, resourceResponse, base64JSONObject);*/ } super.serveResource(resourceRequest, resourceResponse); }
From source file:m.omarh.liferay.resources.importer.generator.util.tree.DocumentUtil.java
License:Open Source License
private static JSONObject createDLFileEntryJSONObject(DLFileEntry dlFileEntry, boolean writeFile, String fullPathResourceImporterURL, String fullPathPluginSourceURL) { JSONObject dlFileEntryJSONObject = JSONFactoryUtil.createJSONObject(); String fileName = dlFileEntry.getTitle(); if (Validator.isNull(FileUtil.getExtension(fileName))) { fileName += "." + dlFileEntry.getExtension(); }// w w w . ja v a 2 s . c o m dlFileEntryJSONObject.put("name", fileName); dlFileEntryJSONObject.put("uuid", dlFileEntry.getUuid()); dlFileEntryJSONObject.put("document", true); dlFileEntryJSONObject.put("leaf", true); if (writeFile) { byte[] fileContent = getDLFileBytes(dlFileEntry.getGroupId(), dlFileEntry.getUuid()); JSONUtil.writeJSONObjectToFile(fullPathResourceImporterURL + fileName, fileContent); JSONUtil.writeJSONObjectToFile(fullPathPluginSourceURL + fileName, fileContent); } return dlFileEntryJSONObject; }