/** * Copyright (c) 2000-present Liferay, Inc. All rights reserved. * * This library is free software; you can redistribute it and/or modify it under * the terms of the GNU Lesser General Public License as published by the Free * Software Foundation; either version 2.1 of the License, or (at your option) * any later version. * * This library is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more * details. */ package com.liferay.source.formatter.checks; import com.liferay.portal.kernel.util.CharPool; import java.io.File; /** * @author Hugo Huijser */ public class BNDSchemaVersionCheck extends BaseFileCheck { @Override protected String doProcess( String fileName, String absolutePath, String content) { _checkMissingSchemaVersion(fileName, absolutePath, content); // LPS-61288 if (fileName.endsWith("-web/bnd.bnd") && content.contains("Liferay-Require-SchemaVersion: 1.0.0")) { addMessage( fileName, "Do not include the header Liferay-Require-SchemaVersion in " + "web modules"); } return content; } private void _checkMissingSchemaVersion( String fileName, String absolutePath, String content) { if (content.contains("Liferay-Require-SchemaVersion:") || !content.contains("Liferay-Service: true")) { return; } int pos = absolutePath.lastIndexOf(CharPool.SLASH); File serviceXMLfile = new File( absolutePath.substring(0, pos + 1) + "service.xml"); if (serviceXMLfile.exists()) { addMessage( fileName, "Missing 'Liferay-Require-SchemaVersion', see LPS-69385"); } } }