blob: b0f4a3633ad9e4cb26d3bfdde761a5742bffc46c [file] [log] [blame]
/*
* Copyright 2006-2011 Dave Griffith, Bas Leijdekkers
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.siyeh.ig;
import com.intellij.codeInspection.GlobalJavaBatchInspectionTool;
import org.jetbrains.annotations.Nls;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull;
public abstract class BaseGlobalInspection extends GlobalJavaBatchInspectionTool {
private String shortName = null;
@NonNls private static final String INSPECTION = "Inspection";
@Override
@NotNull
public String getShortName() {
if (shortName == null) {
final Class<? extends BaseGlobalInspection> aClass = getClass();
final String name = aClass.getName();
assert name.endsWith(INSPECTION) :
"class name must end with 'Inspection' to correctly" +
" calculate the short name: " + name;
shortName = name.substring(name.lastIndexOf((int)'.') + 1,
name.length() - INSPECTION.length());
}
return shortName;
}
@Override
@Nls
@NotNull
public final String getGroupDisplayName() {
return GroupDisplayNameUtil.getGroupDisplayName(getClass());
}
@Override
public boolean isEnabledByDefault() {
return false;
}
}