ソースを参照

Code cleaning : Add @Override annotations

tags/3.1
David Gageot 12年前
コミット
b150482f1f
57個のファイルの変更192行の追加0行の削除
  1. 1
    0
      plugins/sonar-checkstyle-plugin/src/main/java/org/sonar/plugins/checkstyle/CheckstyleProfileExporter.java
  2. 1
    0
      plugins/sonar-checkstyle-plugin/src/main/java/org/sonar/plugins/checkstyle/SonarWayProfile.java
  3. 1
    0
      plugins/sonar-checkstyle-plugin/src/main/java/org/sonar/plugins/checkstyle/SunConventionsProfile.java
  4. 1
    0
      plugins/sonar-jacoco-plugin/src/main/java/org/sonar/plugins/jacoco/JacocoAntInitializer.java
  5. 1
    0
      plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/asm/AsmClassProviderImpl.java
  6. 4
    0
      plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/asm/AsmClassVisitor.java
  7. 16
    0
      plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/asm/AsmMethodVisitor.java
  8. 1
    0
      plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/DITVisitor.java
  9. 2
    0
      plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/DependenciesVisitor.java
  10. 3
    0
      plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/LCOM4Visitor.java
  11. 1
    0
      plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/NOCVisitor.java
  12. 4
    0
      plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/RFCVisitor.java
  13. 1
    0
      plugins/sonar-squid-java-plugin/src/test/java/org/sonar/java/CheckMessages.java
  14. 6
    0
      sonar-batch/src/main/java/org/sonar/batch/DefaultProjectFileSystem2.java
  15. 4
    0
      sonar-batch/src/main/java/org/sonar/batch/ServerMetadata.java
  16. 23
    0
      sonar-batch/src/main/java/org/sonar/batch/index/DefaultIndex.java
  17. 1
    0
      sonar-channel/src/main/java/org/sonar/channel/ChannelDispatcher.java
  18. 1
    0
      sonar-colorizer/src/main/java/org/sonar/colorizer/CaseInsensitiveKeywordsTokenizer.java
  19. 1
    0
      sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlCodeBuilder.java
  20. 1
    0
      sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlRenderer.java
  21. 1
    0
      sonar-colorizer/src/main/java/org/sonar/colorizer/InlineDocTokenizer.java
  22. 2
    0
      sonar-colorizer/src/main/java/org/sonar/colorizer/KeywordsTokenizer.java
  23. 1
    0
      sonar-colorizer/src/main/java/org/sonar/colorizer/MultilinesDocTokenizer.java
  24. 1
    0
      sonar-colorizer/src/main/java/org/sonar/colorizer/NotThreadSafeTokenizer.java
  25. 1
    0
      sonar-colorizer/src/main/java/org/sonar/colorizer/RegexpTokenizer.java
  26. 1
    0
      sonar-core/src/main/java/org/sonar/core/persistence/dialect/MsSql.java
  27. 19
    0
      sonar-core/src/main/java/org/sonar/jpa/session/JpaDatabaseSession.java
  28. 1
    0
      sonar-core/src/test/java/org/sonar/core/persistence/DerbyUtils.java
  29. 1
    0
      sonar-deprecated/src/main/java/org/sonar/api/rules/DefaultRulesManager.java
  30. 4
    0
      sonar-duplications/src/main/java/net/sourceforge/pmd/cpd/SourceCode.java
  31. 2
    0
      sonar-duplications/src/main/java/net/sourceforge/pmd/cpd/TokenEntry.java
  32. 1
    0
      sonar-duplications/src/main/java/org/sonar/duplications/cpd/CodeLoaderWithoutCache.java
  33. 2
    0
      sonar-duplications/src/main/java/org/sonar/duplications/cpd/FileCodeLoaderWithoutCache.java
  34. 1
    0
      sonar-duplications/src/test/java/org/sonar/duplications/detector/CloneGroupMatcher.java
  35. 1
    0
      sonar-graph/src/test/java/org/sonar/graph/StringPrintWriter.java
  36. 1
    0
      sonar-markdown/src/main/java/org/sonar/markdown/MarkdownOutput.java
  37. 1
    0
      sonar-plugin-api/src/main/java/org/sonar/api/checks/AnnotationCheckFactory.java
  38. 2
    0
      sonar-plugin-api/src/main/java/org/sonar/api/config/Base64Cipher.java
  39. 8
    0
      sonar-plugin-api/src/main/java/org/sonar/api/resources/Directory.java
  40. 8
    0
      sonar-plugin-api/src/main/java/org/sonar/api/resources/File.java
  41. 8
    0
      sonar-plugin-api/src/main/java/org/sonar/api/resources/JavaFile.java
  42. 8
    0
      sonar-plugin-api/src/main/java/org/sonar/api/resources/JavaPackage.java
  43. 7
    0
      sonar-plugin-api/src/main/java/org/sonar/api/resources/Project.java
  44. 3
    0
      sonar-plugin-api/src/main/java/org/sonar/api/utils/DateUtils.java
  45. 1
    0
      sonar-plugin-api/src/main/java/org/sonar/api/utils/HttpDownloader.java
  46. 1
    0
      sonar-plugin-api/src/main/java/org/sonar/api/utils/LocalizedMessages.java
  47. 2
    0
      sonar-plugin-api/src/test/java/org/sonar/api/utils/DateUtilsTest.java
  48. 1
    0
      sonar-plugin-api/src/test/java/org/sonar/api/utils/FakeServlet.java
  49. 1
    0
      sonar-plugin-api/src/test/java/org/sonar/api/utils/RedirectServlet.java
  50. 5
    0
      sonar-server/src/main/java/org/sonar/server/platform/ServerImpl.java
  51. 5
    0
      sonar-server/src/test/java/org/sonar/server/platform/ServerLifecycleNotifierTest.java
  52. 4
    0
      sonar-server/src/test/java/org/sonar/server/startup/RegisterRulesTest.java
  53. 2
    0
      sonar-ws-client/src/main/java/org/sonar/wsclient/JdkUtils.java
  54. 4
    0
      sonar-ws-client/src/main/java/org/sonar/wsclient/connectors/HttpClient3Connector.java
  55. 4
    0
      sonar-ws-client/src/main/java/org/sonar/wsclient/connectors/HttpClient4Connector.java
  56. 1
    0
      sonar-ws-client/src/main/java/org/sonar/wsclient/unmarshallers/TimeMachineUnmarshaller.java
  57. 2
    0
      sonar-ws-client/src/test/java/org/sonar/wsclient/SonarTest.java

+ 1
- 0
plugins/sonar-checkstyle-plugin/src/main/java/org/sonar/plugins/checkstyle/CheckstyleProfileExporter.java ファイルの表示

@@ -55,6 +55,7 @@ public class CheckstyleProfileExporter extends ProfileExporter {
this(new BaseConfiguration());
}

@Override
public void exportProfile(RulesProfile profile, Writer writer) {
try {
ListMultimap<String, ActiveRule> activeRulesByConfigKey = arrangeByConfigKey(profile.getActiveRulesByRepository(CheckstyleConstants.REPOSITORY_KEY));

+ 1
- 0
plugins/sonar-checkstyle-plugin/src/main/java/org/sonar/plugins/checkstyle/SonarWayProfile.java ファイルの表示

@@ -32,6 +32,7 @@ public final class SonarWayProfile extends ProfileDefinition {
this.xmlProfileParser = xmlProfileParser;
}

@Override
public RulesProfile createProfile(ValidationMessages messages) {
return xmlProfileParser.parseResource(getClass().getClassLoader(), "org/sonar/plugins/checkstyle/profile-sonar-way.xml", messages);
}

+ 1
- 0
plugins/sonar-checkstyle-plugin/src/main/java/org/sonar/plugins/checkstyle/SunConventionsProfile.java ファイルの表示

@@ -33,6 +33,7 @@ public final class SunConventionsProfile extends ProfileDefinition {
}


@Override
public RulesProfile createProfile(ValidationMessages messages) {
return xmlProfileParser.parseResource(getClass().getClassLoader(), "org/sonar/plugins/checkstyle/profile-sun-conventions.xml", messages);
}

+ 1
- 0
plugins/sonar-jacoco-plugin/src/main/java/org/sonar/plugins/jacoco/JacocoAntInitializer.java ファイルの表示

@@ -87,6 +87,7 @@ public class JacocoAntInitializer extends Initializer implements CoverageExtensi
this.taskName = taskName;
}

@Override
public boolean supportsTask(final Task task) {
return taskName.equals(task.getTaskName());
}

+ 1
- 0
plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/asm/AsmClassProviderImpl.java ファイルの表示

@@ -43,6 +43,7 @@ public class AsmClassProviderImpl extends AsmClassProvider {
this.classLoader = classLoader;
}

@Override
public AsmClass getClass(String internalName, DETAIL_LEVEL level) {
if (internalName == null) {
throw new IllegalStateException("You can try to load a class whose internalName = 'null'");

+ 4
- 0
plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/asm/AsmClassVisitor.java ファイルの表示

@@ -36,6 +36,7 @@ public class AsmClassVisitor extends EmptyVisitor {
this.asmClass = asmClass;
}

@Override
public void visit(int version, int accessFlags, String internalName, String signature, String superClass, String[] interfaces) {
if (asmClass.getDetailLevel() == DETAIL_LEVEL.NOTHING) {
asmClass.setAccessFlags(accessFlags);
@@ -59,6 +60,7 @@ public class AsmClassVisitor extends EmptyVisitor {
}
}

@Override
public FieldVisitor visitField(int access, String fieldName, String description, String signature, Object value) {
AsmField field = asmClass.getFieldOrCreateIt(fieldName);
field.setAccessFlags(access);
@@ -68,6 +70,7 @@ public class AsmClassVisitor extends EmptyVisitor {
return null;
}

@Override
public MethodVisitor visitMethod(int access, String methodName, String description, String signature, String[] exceptions) {
AsmMethod method = asmClass.getMethodOrCreateIt(methodName + description);
if (isInheritedMethodSignature(method.getParent(), method.getKey())) {
@@ -87,6 +90,7 @@ public class AsmClassVisitor extends EmptyVisitor {
return null;
}

@Override
public void visitEnd() {
asmClass.setDetailLevel(level);
}

+ 16
- 0
plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/asm/AsmMethodVisitor.java ファイルの表示

@@ -39,6 +39,7 @@ public class AsmMethodVisitor extends EmptyVisitor {
emptyMethod = true;
}

@Override
public void visitFieldInsn(int opcode, String owner, String fieldName, String fieldDescription) {
AsmClass targetClass = asmClassProvider.getClass(owner, DETAIL_LEVEL.NOTHING);
AsmField targetField = targetClass.getFieldOrCreateIt(fieldName);
@@ -46,6 +47,7 @@ public class AsmMethodVisitor extends EmptyVisitor {
emptyMethod = false;
}

@Override
public void visitMethodInsn(int opcode, String owner, String methodName, String methodDescription) {
if (isNotCallToJavaArrayMethod(owner)) {
AsmClass targetClass = asmClassProvider.getClass(owner, DETAIL_LEVEL.STRUCTURE);
@@ -59,6 +61,7 @@ public class AsmMethodVisitor extends EmptyVisitor {
return internalName.charAt(0) != '[';
}

@Override
public void visitTryCatchBlock(Label start, Label end, Label handler, String exception) {
if (exception != null) {
AsmClass exceptionClass = asmClassProvider.getClass(exception, DETAIL_LEVEL.NOTHING);
@@ -67,42 +70,51 @@ public class AsmMethodVisitor extends EmptyVisitor {
emptyMethod = false;
}

@Override
public void visitTypeInsn(int opcode, String internalName) {
AsmClass usedClass = asmClassProvider.getClass(internalName, DETAIL_LEVEL.NOTHING);
method.addEdge(new AsmEdge(method, usedClass, SourceCodeEdgeUsage.USES, lineNumber));
emptyMethod = false;
}

@Override
public void visitLineNumber(final int line, final Label start) {
lineNumber = line;
}

@Override
public void visitEnd() {
method.setEmpty(emptyMethod);
}

@Override
public void visitIincInsn(int var, int increment) {
emptyMethod = false;
}

@Override
public void visitFrame(int type, int nLocal, Object[] local, int nStack, Object[] stack) {
emptyMethod = false;
}

@Override
public void visitInsn(int opcode) {
if (opcode != Opcodes.RETURN) {
emptyMethod = false;
}
}

@Override
public void visitIntInsn(int opcode, int operand) {
emptyMethod = false;
}

@Override
public void visitJumpInsn(int opcode, Label label) {
emptyMethod = false;
}

@Override
public void visitLdcInsn(Object cst) {
if (cst instanceof Type) {
Type type = (Type) cst;
@@ -112,18 +124,22 @@ public class AsmMethodVisitor extends EmptyVisitor {
emptyMethod = false;
}

@Override
public void visitLookupSwitchInsn(Label dflt, int[] keys, Label[] labels) {
emptyMethod = false;
}

@Override
public void visitMultiANewArrayInsn(String desc, int dims) {
emptyMethod = false;
}

@Override
public void visitTableSwitchInsn(int min, int max, Label dflt, Label[] labels) {
emptyMethod = false;
}

@Override
public void visitVarInsn(int opcode, int var) {
emptyMethod = false;
}

+ 1
- 0
plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/DITVisitor.java ファイルの表示

@@ -24,6 +24,7 @@ import org.sonar.squid.measures.Metric;

public class DITVisitor extends BytecodeVisitor {

@Override
public void visitClass(AsmClass asmClass) {
int dit = calculateDepthOfInheritance(asmClass);


+ 2
- 0
plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/DependenciesVisitor.java ファイルの表示

@@ -39,10 +39,12 @@ public class DependenciesVisitor extends BytecodeVisitor {
this.graph = graph;
}

@Override
public void visitClass(AsmClass asmClass) {
this.fromSourceClass = getSourceClass(asmClass);
}

@Override
public void visitEdge(AsmEdge edge) {
AsmClass toAsmClass = edge.getTargetAsmClass();
SourceClass toSourceClass = getSourceClass(toAsmClass);

+ 3
- 0
plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/LCOM4Visitor.java ファイルの表示

@@ -40,11 +40,13 @@ public class LCOM4Visitor extends BytecodeVisitor {
this.fieldsToExcludeFromLcom4Calculation = conf.getFielsToExcludeFromLcom4Calculation();
}

@Override
public void visitClass(AsmClass asmClass) {
this.asmClass = asmClass;
unrelatedBlocks = new ArrayList<Set<AsmResource>>();
}

@Override
public void visitMethod(AsmMethod asmMethod) {
if (isMethodElligibleForLCOM4Computation(asmMethod)) {
ensureBlockIsCreated(asmMethod);
@@ -90,6 +92,7 @@ public class LCOM4Visitor extends BytecodeVisitor {
}

@Override
public void leaveClass(AsmClass asmClass) {
removeIsolatedMethodBlocks();

+ 1
- 0
plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/NOCVisitor.java ファイルの表示

@@ -24,6 +24,7 @@ import org.sonar.squid.measures.Metric;

public class NOCVisitor extends BytecodeVisitor {

@Override
public void visitClass(AsmClass asmClass) {
getSourceClass(asmClass).add(Metric.NOC, asmClass.getNumberOfChildren());


+ 4
- 0
plugins/sonar-squid-java-plugin/src/main/java/org/sonar/java/bytecode/visitor/RFCVisitor.java ファイルの表示

@@ -34,18 +34,21 @@ public class RFCVisitor extends BytecodeVisitor {
private Set<AsmMethod> distinctCallToExternalMethods;
private int rfc = 0;

@Override
public void visitClass(AsmClass asmClass) {
rfc = 0;
this.asmClass = asmClass;
distinctCallToExternalMethods = new HashSet<AsmMethod>();
}

@Override
public void visitMethod(AsmMethod asmMethod) {
if (asmMethod.isBodyLoaded() && !asmMethod.isAccessor()) {
rfc++;
}
}

@Override
public void visitEdge(AsmEdge edge) {
if (edge.getTargetAsmClass() != asmClass && edge.getUsage() == SourceCodeEdgeUsage.CALLS_METHOD
&& !((AsmMethod) edge.getTo()).isAccessor()) {
@@ -53,6 +56,7 @@ public class RFCVisitor extends BytecodeVisitor {
}
}

@Override
public void leaveClass(AsmClass asmClass) {
rfc += distinctCallToExternalMethods.size();
getSourceClass(asmClass).add(Metric.RFC, rfc);

+ 1
- 0
plugins/sonar-squid-java-plugin/src/test/java/org/sonar/java/CheckMessages.java ファイルの表示

@@ -56,6 +56,7 @@ public class CheckMessages {
}

private static final Ordering<CheckMessage> CHECK_MESSAGE_ORDERING = new Ordering<CheckMessage>() {
@Override
public int compare(CheckMessage o1, CheckMessage o2) {
return ObjectUtils.compare(o1.getLine(), o2.getLine());
}

+ 6
- 0
sonar-batch/src/main/java/org/sonar/batch/DefaultProjectFileSystem2.java ファイルの表示

@@ -66,10 +66,12 @@ public class DefaultProjectFileSystem2 extends DefaultProjectFileSystem {
this(project, languages, def, pom, new FileFilter[0]);
}

@Override
public File getBasedir() {
return def.getBaseDir();
}

@Override
public File getBuildDir() {
if (pom != null) {
return resolvePath(pom.getBuild().getDirectory());
@@ -79,6 +81,7 @@ public class DefaultProjectFileSystem2 extends DefaultProjectFileSystem {
}
}

@Override
public File getBuildOutputDir() {
if (pom != null) {
return resolvePath(pom.getBuild().getOutputDirectory());
@@ -101,6 +104,7 @@ public class DefaultProjectFileSystem2 extends DefaultProjectFileSystem {
/**
* @deprecated since 2.6, because should be immutable
*/
@Override
@Deprecated
public DefaultProjectFileSystem addSourceDir(File dir) {
if (dir == null) {
@@ -125,6 +129,7 @@ public class DefaultProjectFileSystem2 extends DefaultProjectFileSystem {
/**
* @deprecated since 2.6, because should be immutable
*/
@Override
@Deprecated
public DefaultProjectFileSystem addTestDir(File dir) {
if (dir == null) {
@@ -140,6 +145,7 @@ public class DefaultProjectFileSystem2 extends DefaultProjectFileSystem {
/**
* TODO Godin: seems that used only by Cobertura and Clover
*/
@Override
public File getReportOutputDir() {
if (pom != null) {
return resolvePath(pom.getReporting().getOutputDirectory());

+ 4
- 0
sonar-batch/src/main/java/org/sonar/batch/ServerMetadata.java ファイルの表示

@@ -37,14 +37,17 @@ public class ServerMetadata extends Server {
this.settings = settings;
}

@Override
public String getId() {
return settings.getString(CoreProperties.SERVER_ID);
}

@Override
public String getVersion() {
return settings.getString(CoreProperties.SERVER_VERSION);
}

@Override
public Date getStartedAt() {
String dateString = settings.getString(CoreProperties.SERVER_STARTTIME);
if (dateString != null) {
@@ -58,6 +61,7 @@ public class ServerMetadata extends Server {
return null;
}

@Override
public String getURL() {
return StringUtils.removeEnd(StringUtils.defaultIfBlank(settings.getString("sonar.host.url"), "http://localhost:9000"), "/");
}

+ 23
- 0
sonar-batch/src/main/java/org/sonar/batch/index/DefaultIndex.java ファイルの表示

@@ -95,6 +95,7 @@ public class DefaultIndex extends SonarIndex {
}
}

@Override
public Project getProject() {
return currentProject;
}
@@ -134,6 +135,7 @@ public class DefaultIndex extends SonarIndex {
lock.unlock();
}

@Override
public Measure getMeasure(Resource resource, Metric metric) {
Bucket bucket = buckets.get(resource);
if (bucket != null) {
@@ -145,6 +147,7 @@ public class DefaultIndex extends SonarIndex {
return null;
}

@Override
public <M> M getMeasures(Resource resource, MeasuresFilter<M> filter) {
Bucket bucket = buckets.get(resource);
if (bucket != null) {
@@ -157,6 +160,7 @@ public class DefaultIndex extends SonarIndex {
/**
* the measure is updated if it's already registered.
*/
@Override
public Measure addMeasure(Resource resource, Measure measure) {
Bucket bucket = checkIndexed(resource);
if (bucket != null && !bucket.isExcluded()) {
@@ -182,6 +186,7 @@ public class DefaultIndex extends SonarIndex {
//
//

@Override
public Dependency addDependency(Dependency dependency) {
Dependency existingDep = getEdge(dependency.getFrom(), dependency.getTo());
if (existingDep != null) {
@@ -230,6 +235,7 @@ public class DefaultIndex extends SonarIndex {
incomingDeps.put(dependency.getFrom(), dependency);
}

@Override
public Set<Dependency> getDependencies() {
return dependencies;
}
@@ -287,6 +293,7 @@ public class DefaultIndex extends SonarIndex {
/**
* {@inheritDoc}
*/
@Override
public List<Violation> getViolations(ViolationQuery violationQuery) {
Resource resource = violationQuery.getResource();
if (resource == null) {
@@ -308,6 +315,7 @@ public class DefaultIndex extends SonarIndex {
return filteredViolations;
}

@Override
public void addViolation(Violation violation, boolean force) {
Resource resource = violation.getResource();
if (resource == null) {
@@ -362,10 +370,12 @@ public class DefaultIndex extends SonarIndex {
//
//

@Override
public void addLink(ProjectLink link) {
persistence.saveLink(currentProject, link);
}

@Override
public void deleteLink(String key) {
persistence.deleteLink(currentProject, key);
}
@@ -378,15 +388,18 @@ public class DefaultIndex extends SonarIndex {
//
//

@Override
public List<Event> getEvents(Resource resource) {
// currently events are not cached in memory
return persistence.getEvents(resource);
}

@Override
public void deleteEvent(Event event) {
persistence.deleteEvent(event);
}

@Override
public Event addEvent(Resource resource, String name, String description, String category, Date date) {
Event event = new Event(name, description, category);
event.setDate(date);
@@ -396,6 +409,7 @@ public class DefaultIndex extends SonarIndex {
return null;
}

@Override
public void setSource(Resource reference, String source) {
Bucket bucket = checkIndexed(reference);
if (bucket != null && !bucket.isExcluded()) {
@@ -403,6 +417,7 @@ public class DefaultIndex extends SonarIndex {
}
}

@Override
public String getSource(Resource resource) {
return persistence.getSource(resource);
}
@@ -410,11 +425,13 @@ public class DefaultIndex extends SonarIndex {
/**
* Does nothing if the resource is already registered.
*/
@Override
public Resource addResource(Resource resource) {
Bucket bucket = doIndex(resource);
return bucket != null ? bucket.getResource() : null;
}

@Override
public <R extends Resource> R getResource(R reference) {
Bucket bucket = buckets.get(reference);
if (bucket != null) {
@@ -442,6 +459,7 @@ public class DefaultIndex extends SonarIndex {
return excluded;
}

@Override
public List<Resource> getChildren(Resource resource) {
return getChildren(resource, false);
}
@@ -459,6 +477,7 @@ public class DefaultIndex extends SonarIndex {
return children;
}

@Override
public Resource getParent(Resource resource) {
Bucket bucket = getBucket(resource, false);
if (bucket != null && bucket.getParent() != null) {
@@ -467,6 +486,7 @@ public class DefaultIndex extends SonarIndex {
return null;
}

@Override
public boolean index(Resource resource) {
Bucket bucket = doIndex(resource);
return bucket != null && !bucket.isExcluded();
@@ -479,6 +499,7 @@ public class DefaultIndex extends SonarIndex {
return doIndex(resource, resource.getParent());
}

@Override
public boolean index(Resource resource, Resource parentReference) {
Bucket bucket = doIndex(resource, parentReference);
return bucket != null && !bucket.isExcluded();
@@ -541,11 +562,13 @@ public class DefaultIndex extends SonarIndex {
return bucket;
}

@Override
public boolean isExcluded(Resource reference) {
Bucket bucket = getBucket(reference, true);
return bucket != null && bucket.isExcluded();
}

@Override
public boolean isIndexed(Resource reference, boolean acceptExcluded) {
return getBucket(reference, acceptExcluded) != null;
}

+ 1
- 0
sonar-channel/src/main/java/org/sonar/channel/ChannelDispatcher.java ファイルの表示

@@ -68,6 +68,7 @@ public class ChannelDispatcher<OUTPUT> extends Channel<OUTPUT> {
this.failIfNoChannelToConsumeOneCharacter = builder.failIfNoChannelToConsumeOneCharacter;
}

@Override
public boolean consume(CodeReader code, OUTPUT output) {
int nextChar = code.peek();
while (nextChar != -1) {

+ 1
- 0
sonar-colorizer/src/main/java/org/sonar/colorizer/CaseInsensitiveKeywordsTokenizer.java ファイルの表示

@@ -33,6 +33,7 @@ public class CaseInsensitiveKeywordsTokenizer extends KeywordsTokenizer {
setCaseInsensitive(true);
}

@Override
public KeywordsTokenizer clone() {
KeywordsTokenizer clone = super.clone();
clone.setCaseInsensitive(true);

+ 1
- 0
sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlCodeBuilder.java ファイルの表示

@@ -56,6 +56,7 @@ public class HtmlCodeBuilder implements Appendable {
colorizedCode.append(htmlTag);
}

@Override
public String toString() {
return colorizedCode.toString();
}

+ 1
- 0
sonar-colorizer/src/main/java/org/sonar/colorizer/HtmlRenderer.java ファイルの表示

@@ -38,6 +38,7 @@ public class HtmlRenderer extends Renderer {
this(HtmlOptions.DEFAULT);
}

@Override
public String render(Reader code, List<? extends Channel<HtmlCodeBuilder>> tokenizers) {
try {
List<Channel<HtmlCodeBuilder>> allTokenizers = new ArrayList<Channel<HtmlCodeBuilder>>();

+ 1
- 0
sonar-colorizer/src/main/java/org/sonar/colorizer/InlineDocTokenizer.java ファイルの表示

@@ -37,6 +37,7 @@ public abstract class InlineDocTokenizer extends Tokenizer {
this.startToken = startToken.toCharArray();
}

@Override
public boolean consume(CodeReader code, HtmlCodeBuilder codeBuilder) {
if (code.peek() == startToken[0] && Arrays.equals(code.peek(startToken.length), startToken)) {
codeBuilder.appendWithoutTransforming(tagBefore);

+ 2
- 0
sonar-colorizer/src/main/java/org/sonar/colorizer/KeywordsTokenizer.java ファイルの表示

@@ -59,6 +59,7 @@ public class KeywordsTokenizer extends NotThreadSafeTokenizer {
this.matcher = Pattern.compile(DEFAULT_REGEX).matcher("");
}

@Override
public boolean consume(CodeReader code, HtmlCodeBuilder codeBuilder) {
if (code.popTo(matcher, tmpBuilder) > 0) {
if (isKeyword(tmpBuilder.toString())) {
@@ -87,6 +88,7 @@ public class KeywordsTokenizer extends NotThreadSafeTokenizer {
this.caseInsensitive = caseInsensitive;
}

@Override
public KeywordsTokenizer clone() {
KeywordsTokenizer clone = new KeywordsTokenizer(tagBefore, tagAfter, keywords, matcher.pattern().pattern());
clone.caseInsensitive = caseInsensitive;

+ 1
- 0
sonar-colorizer/src/main/java/org/sonar/colorizer/MultilinesDocTokenizer.java ファイルの表示

@@ -55,6 +55,7 @@ public class MultilinesDocTokenizer extends Tokenizer {
startToken)));
}

@Override
public boolean consume(CodeReader code, HtmlCodeBuilder codeBuilder) {
if (hasNextToken(code, codeBuilder)) {
codeBuilder.appendWithoutTransforming(tagBefore);

+ 1
- 0
sonar-colorizer/src/main/java/org/sonar/colorizer/NotThreadSafeTokenizer.java ファイルの表示

@@ -26,5 +26,6 @@ package org.sonar.colorizer;
*/
public abstract class NotThreadSafeTokenizer extends Tokenizer implements Cloneable {

@Override
public abstract NotThreadSafeTokenizer clone();
}

+ 1
- 0
sonar-colorizer/src/main/java/org/sonar/colorizer/RegexpTokenizer.java ファイルの表示

@@ -57,6 +57,7 @@ public class RegexpTokenizer extends NotThreadSafeTokenizer{
return false;
}

@Override
public RegexpTokenizer clone() {
return new RegexpTokenizer(tagBefore, tagAfter, matcher.pattern().pattern());
}

+ 1
- 0
sonar-core/src/main/java/org/sonar/core/persistence/dialect/MsSql.java ファイルの表示

@@ -60,6 +60,7 @@ public class MsSql implements Dialect {
registerColumnType(Types.CLOB, "nvarchar(max)");
}

@Override
public String getTypeName(int code, int length, int precision, int scale) {
if (code != 2005) {
return super.getTypeName(code, length, precision, scale);

+ 19
- 0
sonar-core/src/main/java/org/sonar/jpa/session/JpaDatabaseSession.java ファイルの表示

@@ -45,15 +45,18 @@ public class JpaDatabaseSession extends DatabaseSession {
* Note that usage of this method is discouraged, because it allows to construct and execute queries without additional exception handling,
* which done in methods of this class.
*/
@Override
public EntityManager getEntityManager() {
return entityManager;
}

@Override
public void start() {
entityManager = connector.createEntityManager();
index = 0;
}

@Override
public void stop() {
commit();
if (entityManager != null && entityManager.isOpen()) {
@@ -62,6 +65,7 @@ public class JpaDatabaseSession extends DatabaseSession {
}
}

@Override
public void commit() {
if (entityManager != null && inTransaction) {
if (entityManager.isOpen()) {
@@ -77,6 +81,7 @@ public class JpaDatabaseSession extends DatabaseSession {
}
}

@Override
public void rollback() {
if (entityManager != null && inTransaction) {
entityManager.getTransaction().rollback();
@@ -84,23 +89,27 @@ public class JpaDatabaseSession extends DatabaseSession {
}
}

@Override
public <T> T save(T model) {
startTransaction();
internalSave(model, true);
return model;
}

@Override
public Object saveWithoutFlush(Object model) {
startTransaction();
internalSave(model, false);
return model;
}

@Override
public boolean contains(Object model) {
startTransaction();
return entityManager.contains(model);
}

@Override
public void save(Object... models) {
startTransaction();
for (Object model : models) {
@@ -123,11 +132,13 @@ public class JpaDatabaseSession extends DatabaseSession {
}
}

@Override
public Object merge(Object model) {
startTransaction();
return entityManager.merge(model);
}

@Override
public void remove(Object model) {
startTransaction();
entityManager.remove(model);
@@ -136,11 +147,13 @@ public class JpaDatabaseSession extends DatabaseSession {
}
}

@Override
public void removeWithoutFlush(Object model) {
startTransaction();
entityManager.remove(model);
}

@Override
public <T> T reattach(Class<T> entityClass, Object primaryKey) {
startTransaction();
return entityManager.getReference(entityClass, primaryKey);
@@ -157,6 +170,7 @@ public class JpaDatabaseSession extends DatabaseSession {
* Note that not recommended to directly execute {@link Query#getSingleResult()}, because it will bypass exception handling,
* which done in {@link #getSingleResult(Query, Object)}.
*/
@Override
public Query createQuery(String hql) {
startTransaction();
return entityManager.createQuery(hql);
@@ -172,6 +186,7 @@ public class JpaDatabaseSession extends DatabaseSession {
* @return the result or <code>defaultValue</code>, if not found
* @throws NonUniqueResultException if more than one result
*/
@Override
public <T> T getSingleResult(Query query, T defaultValue) {
/*
* See http://jira.codehaus.org/browse/SONAR-2225
@@ -199,6 +214,7 @@ public class JpaDatabaseSession extends DatabaseSession {
}
}

@Override
public <T> T getEntity(Class<T> entityClass, Object id) {
startTransaction();
return getEntityManager().find(entityClass, id);
@@ -208,6 +224,7 @@ public class JpaDatabaseSession extends DatabaseSession {
* @return the result or <code>null</code>, if not found
* @throws NonUniqueResultException if more than one result
*/
@Override
public <T> T getSingleResult(Class<T> entityClass, Object... criterias) {
try {
return getSingleResult(getQueryForCriterias(entityClass, true, criterias), (T) null);
@@ -219,10 +236,12 @@ public class JpaDatabaseSession extends DatabaseSession {
}
}

@Override
public <T> List<T> getResults(Class<T> entityClass, Object... criterias) {
return getQueryForCriterias(entityClass, true, criterias).getResultList();
}

@Override
public <T> List<T> getResults(Class<T> entityClass) {
return getQueryForCriterias(entityClass, false, (Object[]) null).getResultList();
}

+ 1
- 0
sonar-core/src/test/java/org/sonar/core/persistence/DerbyUtils.java ファイルの表示

@@ -28,6 +28,7 @@ public final class DerbyUtils {
}

public static final OutputStream DEV_NULL = new OutputStream() {
@Override
public void write(int b) {
}
};

+ 1
- 0
sonar-deprecated/src/main/java/org/sonar/api/rules/DefaultRulesManager.java ファイルの表示

@@ -69,6 +69,7 @@ public class DefaultRulesManager extends RulesManager {
* @param ruleKey the rule key
* @return the rule
*/
@Override
public Rule getPluginRule(String pluginKey, String ruleKey) {
Map<String, Rule> rulesByKey = getPluginRulesIndexedByKey(pluginKey);
return rulesByKey.get(ruleKey);

+ 4
- 0
sonar-duplications/src/main/java/net/sourceforge/pmd/cpd/SourceCode.java ファイルの表示

@@ -89,10 +89,12 @@ public class SourceCode {
this.encoding = encoding;
}

@Override
public Reader getReader() throws Exception {
return new InputStreamReader(new FileInputStream(file), encoding);
}

@Override
public String getFileName() {
return this.file.getAbsolutePath();
}
@@ -114,10 +116,12 @@ public class SourceCode {
this.name = name;
}

@Override
public Reader getReader() {
return new StringReader(source_code);
}

@Override
public String getFileName() {
return name;
}

+ 2
- 0
sonar-duplications/src/main/java/net/sourceforge/pmd/cpd/TokenEntry.java ファイルの表示

@@ -114,6 +114,7 @@ public class TokenEntry implements Comparable<TokenEntry> {
return this.index;
}

@Override
public int hashCode() {
return hashCode;
}
@@ -122,6 +123,7 @@ public class TokenEntry implements Comparable<TokenEntry> {
this.hashCode = hashCode;
}

@Override
public boolean equals(Object o) {
if (!(o instanceof TokenEntry)) {
return false;

+ 1
- 0
sonar-duplications/src/main/java/org/sonar/duplications/cpd/CodeLoaderWithoutCache.java ファイルの表示

@@ -26,6 +26,7 @@ import net.sourceforge.pmd.cpd.SourceCode.CodeLoader;

public abstract class CodeLoaderWithoutCache extends CodeLoader {

@Override
public final List<String> getCode() {
return load();
}

+ 2
- 0
sonar-duplications/src/main/java/org/sonar/duplications/cpd/FileCodeLoaderWithoutCache.java ファイルの表示

@@ -35,10 +35,12 @@ public class FileCodeLoaderWithoutCache extends CodeLoaderWithoutCache {
this.encoding = encoding;
}

@Override
public Reader getReader() throws Exception {
return new InputStreamReader(new FileInputStream(file), encoding);
}

@Override
public String getFileName() {
return this.file.getAbsolutePath();
}

+ 1
- 0
sonar-duplications/src/test/java/org/sonar/duplications/detector/CloneGroupMatcher.java ファイルの表示

@@ -40,6 +40,7 @@ public class CloneGroupMatcher extends TypeSafeMatcher<CloneGroup> {
this.expectedParts = expectedParts;
}

@Override
public boolean matchesSafely(CloneGroup cloneGroup) {
// Check length
if (expectedLen != cloneGroup.getCloneUnitLength()) {

+ 1
- 0
sonar-graph/src/test/java/org/sonar/graph/StringPrintWriter.java ファイルの表示

@@ -27,6 +27,7 @@ public class StringPrintWriter {
builder.append(line + " \r");
}

@Override
public String toString() {
return builder.toString();
}

+ 1
- 0
sonar-markdown/src/main/java/org/sonar/markdown/MarkdownOutput.java ファイルの表示

@@ -31,6 +31,7 @@ class MarkdownOutput {
return ouput.append(character);
}

@Override
public String toString() {
return ouput.toString();
}

+ 1
- 0
sonar-plugin-api/src/main/java/org/sonar/api/checks/AnnotationCheckFactory.java ファイルの表示

@@ -64,6 +64,7 @@ public final class AnnotationCheckFactory extends CheckFactory {
}
}

@Override
protected Object createCheck(ActiveRule activeRule) {
Object object = checksByKey.get(activeRule.getConfigKey());
if (object != null) {

+ 2
- 0
sonar-plugin-api/src/main/java/org/sonar/api/config/Base64Cipher.java ファイルの表示

@@ -22,10 +22,12 @@ package org.sonar.api.config;
import org.apache.commons.codec.binary.Base64;

final class Base64Cipher extends Cipher {
@Override
String encrypt(String clearText) {
return new String(Base64.encodeBase64(clearText.getBytes()));
}

@Override
String decrypt(String encryptedText) {
return new String(Base64.decodeBase64(encryptedText));
}

+ 8
- 0
sonar-plugin-api/src/main/java/org/sonar/api/resources/Directory.java ファイルの表示

@@ -42,34 +42,42 @@ public class Directory extends Resource {
this.language = language;
}

@Override
public String getName() {
return getKey();
}

@Override
public String getLongName() {
return null;
}

@Override
public String getDescription() {
return null;
}

@Override
public Language getLanguage() {
return language;
}

@Override
public String getScope() {
return Scopes.DIRECTORY;
}

@Override
public String getQualifier() {
return Qualifiers.DIRECTORY;
}

@Override
public Resource getParent() {
return null;
}

@Override
public boolean matchFilePattern(String antPattern) {
WildcardPattern matcher = WildcardPattern.create(antPattern, "/");
return matcher.match(getKey());

+ 8
- 0
sonar-plugin-api/src/main/java/org/sonar/api/resources/File.java ファイルの表示

@@ -96,6 +96,7 @@ public class File extends Resource<Directory> {
*
* @see Resource#getParent()
*/
@Override
public Directory getParent() {
if (parent == null) {
parent = new Directory(directoryKey);
@@ -118,6 +119,7 @@ public class File extends Resource<Directory> {
*
* @see Resource#matchFilePattern(String)
*/
@Override
public boolean matchFilePattern(String antPattern) {
WildcardPattern matcher = WildcardPattern.create(antPattern, "/");
return matcher.match(getKey());
@@ -146,6 +148,7 @@ public class File extends Resource<Directory> {
*
* @see Resource#getName()
*/
@Override
public String getName() {
return filename;
}
@@ -155,6 +158,7 @@ public class File extends Resource<Directory> {
*
* @see Resource#getLongName()
*/
@Override
public String getLongName() {
return getKey();
}
@@ -164,6 +168,7 @@ public class File extends Resource<Directory> {
*
* @see Resource#getDescription()
*/
@Override
public String getDescription() {
return null;
}
@@ -173,6 +178,7 @@ public class File extends Resource<Directory> {
*
* @see Resource#getLanguage()
*/
@Override
public Language getLanguage() {
return language;
}
@@ -187,6 +193,7 @@ public class File extends Resource<Directory> {
/**
* @return SCOPE_ENTITY
*/
@Override
public final String getScope() {
return SCOPE;
}
@@ -196,6 +203,7 @@ public class File extends Resource<Directory> {
*
* @return QUALIFIER_UNIT_TEST_CLASS
*/
@Override
public String getQualifier() {
return qualifier;
}

+ 8
- 0
sonar-plugin-api/src/main/java/org/sonar/api/resources/JavaFile.java ファイルの表示

@@ -105,6 +105,7 @@ public class JavaFile extends Resource<JavaPackage> {
/**
* {@inheritDoc}
*/
@Override
public JavaPackage getParent() {
if (parent == null) {
parent = new JavaPackage(packageKey);
@@ -116,6 +117,7 @@ public class JavaFile extends Resource<JavaPackage> {
/**
* @return null
*/
@Override
public String getDescription() {
return null;
}
@@ -123,6 +125,7 @@ public class JavaFile extends Resource<JavaPackage> {
/**
* @return Java
*/
@Override
public Language getLanguage() {
return Java.INSTANCE;
}
@@ -130,6 +133,7 @@ public class JavaFile extends Resource<JavaPackage> {
/**
* {@inheritDoc}
*/
@Override
public String getName() {
return filename;
}
@@ -137,6 +141,7 @@ public class JavaFile extends Resource<JavaPackage> {
/**
* {@inheritDoc}
*/
@Override
public String getLongName() {
return longName;
}
@@ -144,6 +149,7 @@ public class JavaFile extends Resource<JavaPackage> {
/**
* @return SCOPE_ENTITY
*/
@Override
public String getScope() {
return Scopes.FILE;
}
@@ -151,6 +157,7 @@ public class JavaFile extends Resource<JavaPackage> {
/**
* @return QUALIFIER_UNIT_TEST_CLASS or QUALIFIER_CLASS depending whether it is a unit test class
*/
@Override
public String getQualifier() {
return unitTest ? Qualifiers.UNIT_TEST_FILE : Qualifiers.CLASS;
}
@@ -165,6 +172,7 @@ public class JavaFile extends Resource<JavaPackage> {
/**
* {@inheritDoc}
*/
@Override
public boolean matchFilePattern(String antPattern) {
if (unitTest) {
return false;

+ 8
- 0
sonar-plugin-api/src/main/java/org/sonar/api/resources/JavaPackage.java ファイルの表示

@@ -58,6 +58,7 @@ public class JavaPackage extends Resource {
/**
* {@inheritDoc}
*/
@Override
public boolean matchFilePattern(String antPattern) {
return false;
}
@@ -65,6 +66,7 @@ public class JavaPackage extends Resource {
/**
* {@inheritDoc}
*/
@Override
public String getDescription() {
return null;
}
@@ -72,6 +74,7 @@ public class JavaPackage extends Resource {
/**
* @return SCOPE_SPACE
*/
@Override
public String getScope() {
return Scopes.DIRECTORY;
}
@@ -79,6 +82,7 @@ public class JavaPackage extends Resource {
/**
* @return QUALIFIER_PACKAGE
*/
@Override
public String getQualifier() {
return Qualifiers.PACKAGE;
}
@@ -86,6 +90,7 @@ public class JavaPackage extends Resource {
/**
* {@inheritDoc}
*/
@Override
public String getName() {
return getKey();
}
@@ -93,6 +98,7 @@ public class JavaPackage extends Resource {
/**
* {@inheritDoc}
*/
@Override
public Resource<?> getParent() {
return null;
}
@@ -100,6 +106,7 @@ public class JavaPackage extends Resource {
/**
* {@inheritDoc}
*/
@Override
public String getLongName() {
return null;
}
@@ -107,6 +114,7 @@ public class JavaPackage extends Resource {
/**
* @return Java
*/
@Override
public Language getLanguage() {
return Java.INSTANCE;
}

+ 7
- 0
sonar-plugin-api/src/main/java/org/sonar/api/resources/Project.java ファイルの表示

@@ -154,14 +154,17 @@ public class Project extends Resource {
return packaging;
}

@Override
public String getName() {
return name;
}

@Override
public String getLongName() {
return name;
}

@Override
public String getDescription() {
return description;
}
@@ -243,6 +246,7 @@ public class Project extends Resource {
/**
* @return the project language
*/
@Override
public Language getLanguage() {
return language;
}
@@ -286,6 +290,7 @@ public class Project extends Resource {
/**
* @return the scope of the current object
*/
@Override
public String getScope() {
return Scopes.PROJECT;
}
@@ -293,6 +298,7 @@ public class Project extends Resource {
/**
* @return the qualifier of the current object
*/
@Override
public String getQualifier() {
return isRoot() ? Qualifiers.PROJECT : Qualifiers.MODULE;
}
@@ -302,6 +308,7 @@ public class Project extends Resource {
return false;
}

@Override
public Project getParent() {
return parent;
}

+ 3
- 0
sonar-plugin-api/src/main/java/org/sonar/api/utils/DateUtils.java ファイルの表示

@@ -129,6 +129,7 @@ public final class DateUtils {
}

private final ThreadLocal<Reference<DateFormat>> cache = new ThreadLocal<Reference<DateFormat>>() {
@Override
public Reference<DateFormat> get() {
Reference<DateFormat> softRef = super.get();
if (softRef == null || softRef.get() == null) {
@@ -143,10 +144,12 @@ public final class DateUtils {
return (DateFormat) ((Reference) cache.get()).get();
}

@Override
public StringBuffer format(Date date, StringBuffer toAppendTo, FieldPosition fieldPosition) {
return getDateFormat().format(date, toAppendTo, fieldPosition);
}

@Override
public Date parse(String source, ParsePosition pos) {
return getDateFormat().parse(source, pos);
}

+ 1
- 0
sonar-plugin-api/src/main/java/org/sonar/api/utils/HttpDownloader.java ファイルの表示

@@ -194,6 +194,7 @@ class ProxyAuthenticator extends Authenticator {
auth = new PasswordAuthentication(user, password == null ? new char[0] : password.toCharArray());
}

@Override
protected PasswordAuthentication getPasswordAuthentication() {
return auth;
}

+ 1
- 0
sonar-plugin-api/src/main/java/org/sonar/api/utils/LocalizedMessages.java ファイルの表示

@@ -46,6 +46,7 @@ public class LocalizedMessages extends ResourceBundle {
}
}

@Override
public Locale getLocale() {
return locale;
}

+ 2
- 0
sonar-plugin-api/src/test/java/org/sonar/api/utils/DateUtilsTest.java ファイルの表示

@@ -111,6 +111,7 @@ public class DateUtilsTest {
final List<Throwable> throwables = Lists.newArrayList();

final ThreadGroup tg = new ThreadGroup("shouldBeThreadSafe") {
@Override
public void uncaughtException(Thread t, Throwable e) {
throwables.add(e);
super.uncaughtException(t, e);
@@ -123,6 +124,7 @@ public class DateUtilsTest {
for (int i = 0; i < threads.length; ++i) {
threads[i] = new Thread(tg, "JUnit Thread " + i) {

@Override
public void run() {
int i = 0;
try {

+ 1
- 0
sonar-plugin-api/src/test/java/org/sonar/api/utils/FakeServlet.java ファイルの表示

@@ -31,6 +31,7 @@ public class FakeServlet extends GenericServlet {

int count = 0;

@Override
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
count++;
Properties props = new Properties();

+ 1
- 0
sonar-plugin-api/src/test/java/org/sonar/api/utils/RedirectServlet.java ファイルの表示

@@ -28,6 +28,7 @@ import java.io.IOException;

public class RedirectServlet extends GenericServlet {

@Override
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
((HttpServletResponse)response).sendRedirect("/");
}

+ 5
- 0
sonar-server/src/main/java/org/sonar/server/platform/ServerImpl.java ファイルの表示

@@ -60,18 +60,22 @@ public final class ServerImpl extends Server {
}
}

@Override
public String getPermanentServerId() {
return settings.getString(CoreProperties.PERMANENT_SERVER_ID);
}

@Override
public String getId() {
return id;
}

@Override
public String getVersion() {
return version;
}

@Override
public Date getStartedAt() {
return startedAt;
}
@@ -96,6 +100,7 @@ public final class ServerImpl extends Server {
return StringUtils.defaultIfEmpty(result, "");
}

@Override
public String getURL() {
return null;
}

+ 5
- 0
sonar-server/src/test/java/org/sonar/server/platform/ServerLifecycleNotifierTest.java ファイルの表示

@@ -84,22 +84,27 @@ public class ServerLifecycleNotifierTest {

class FakeServer extends Server {

@Override
public String getId() {
return null;
}

@Override
public String getVersion() {
return null;
}

@Override
public Date getStartedAt() {
return null;
}

@Override
public String getURL() {
return null;
}

@Override
public String getPermanentServerId() {
return null;
}

+ 4
- 0
sonar-server/src/test/java/org/sonar/server/startup/RegisterRulesTest.java ファイルの表示

@@ -246,6 +246,7 @@ class FakeRepository extends RuleRepository {
super("fake", "java");
}

@Override
public List<Rule> createRules() {
Rule rule1 = Rule.create("fake", "rule1", "One");
rule1.setDescription("Description of One");
@@ -267,6 +268,7 @@ class RuleWithoutNameRepository extends RuleRepository {
super("rule-without-name-repo", "java");
}

@Override
public List<Rule> createRules() {
// Rules must not have empty name
Rule rule1 = Rule.create("fake", "rule1", null);
@@ -279,6 +281,7 @@ class RuleWithoutDescriptionRepository extends RuleRepository {
super("rule-without-description-repo", "java");
}

@Override
public List<Rule> createRules() {
// Rules must not have empty description
Rule rule1 = Rule.create("fake", "rule1", "Rule 1");
@@ -293,6 +296,7 @@ class VolumeRepository extends RuleRepository {
super("volume", "java");
}

@Override
public List<Rule> createRules() {
List<Rule> rules = new ArrayList<Rule>();
for (int i = 0; i < SIZE; i++) {

+ 2
- 0
sonar-ws-client/src/main/java/org/sonar/wsclient/JdkUtils.java ファイルの表示

@@ -33,11 +33,13 @@ import java.util.Set;

public final class JdkUtils extends WSUtils {

@Override
public String format(Date date, String format) {
SimpleDateFormat dateFormat = new SimpleDateFormat(format);
return dateFormat.format(date);
}

@Override
public String encodeUrl(String url) {
try {
return URLEncoder.encode(url, "UTF-8");

+ 4
- 0
sonar-ws-client/src/main/java/org/sonar/wsclient/connectors/HttpClient3Connector.java ファイルの表示

@@ -69,18 +69,22 @@ public class HttpClient3Connector extends Connector {
}
}

@Override
public String execute(Query<?> query) {
return executeRequest(newGetRequest(query));
}

@Override
public String execute(CreateQuery<?> query) {
return executeRequest(newPostRequest(query));
}

@Override
public String execute(UpdateQuery<?> query) {
return executeRequest(newPutRequest(query));
}

@Override
public String execute(DeleteQuery query) {
return executeRequest(newDeleteRequest(query));
}

+ 4
- 0
sonar-ws-client/src/main/java/org/sonar/wsclient/connectors/HttpClient4Connector.java ファイルの表示

@@ -70,18 +70,22 @@ public class HttpClient4Connector extends Connector {
this.server = server;
}

@Override
public String execute(Query<?> query) {
return executeRequest(newGetMethod(query));
}

@Override
public String execute(CreateQuery<?> query) {
return executeRequest(newPostMethod(query));
}

@Override
public String execute(UpdateQuery<?> query) {
return executeRequest(newPutMethod(query));
}

@Override
public String execute(DeleteQuery query) {
return executeRequest(newDeleteMethod(query));
}

+ 1
- 0
sonar-ws-client/src/main/java/org/sonar/wsclient/unmarshallers/TimeMachineUnmarshaller.java ファイルの表示

@@ -26,6 +26,7 @@ import org.sonar.wsclient.services.WSUtils;

public class TimeMachineUnmarshaller extends AbstractUnmarshaller<TimeMachine> {

@Override
protected TimeMachine parse(Object json) {
WSUtils utils = WSUtils.getINSTANCE();
Object cols = utils.getField(json, "cols");

+ 2
- 0
sonar-ws-client/src/test/java/org/sonar/wsclient/SonarTest.java ファイルの表示

@@ -123,10 +123,12 @@ public class SonarTest {
}

static class EmptyQuery extends Query<Metric> {
@Override
public String getUrl() {
return "/api/empty";
}

@Override
public Class<Metric> getModelClass() {
return Metric.class;
}

読み込み中…
キャンセル
保存