Skip to content

Commit

Permalink
#767 Qulice release 0.16.4 is too slow
Browse files Browse the repository at this point in the history
  • Loading branch information
dskalenko committed Jun 3, 2016
1 parent 9ab9bec commit bb2f38a
Show file tree
Hide file tree
Showing 5 changed files with 41 additions and 39 deletions.
20 changes: 11 additions & 9 deletions qulice-ant/src/main/java/com/qulice/ant/QuliceTask.java
Original file line number Diff line number Diff line change
Expand Up @@ -147,16 +147,18 @@ private Environment environment() {
private static void validate(final Environment env)
throws ValidationException {
final Collection<Violation> results = new LinkedList<>();
for (final File file : env.files("*.*")) {
for (final ResourceValidator validator
: QuliceTask.validators(env)) {
results.addAll(validator.validate(file));
final Collection<File> files = env.files("*.*");
if (!files.isEmpty()) {
final Collection<ResourceValidator> validators =
QuliceTask.validators(env);
for (final ResourceValidator validator : validators) {
results.addAll(validator.validate(files));
}
for (final Violation result : results) {
Logger.info(
QuliceTask.class, "%s: %s", result.file(), result.message()
);
}
}
for (final Violation result : results) {
Logger.info(
QuliceTask.class, "%s: %s", result.file(), result.message()
);
}
for (final Validator validator : QuliceTask.validators()) {
validator.validate(env);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
*/
package com.qulice.checkstyle;

import com.google.common.collect.Lists;
import com.jcabi.aspects.Tv;
import com.jcabi.log.Logger;
import com.puppycrawl.tools.checkstyle.Checker;
Expand All @@ -45,7 +46,6 @@
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Collection;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import java.util.Properties;
Expand Down Expand Up @@ -95,9 +95,9 @@ public CheckstyleValidator(final Environment env) {

@Override
@SuppressWarnings("PMD.AvoidInstantiatingObjectsInLoops")
public Collection<Violation> validate(final File file) {
public Collection<Violation> validate(final Collection<File> files) {
try {
this.checker.process(Collections.singletonList(file));
this.checker.process(Lists.newArrayList(files));
} catch (final CheckstyleException ex) {
throw new IllegalStateException("Failed to process files", ex);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ public void catchesCheckstyleViolationsInLicense() throws Exception {
).withFile(String.format("src/main/java/foo/%s", name), content);
final Collection<Violation> results =
new CheckstyleValidator(env)
.validate(env.files(name).iterator().next());
.validate(env.files(name));
MatcherAssert.assertThat(
results,
Matchers.hasItem(
Expand Down Expand Up @@ -526,9 +526,7 @@ public void doesNotThrowExceptionIfImportsOnly() throws Exception {
this.toUrl(license)
).withFile(String.format("src/main/java/foo/%s", name), content);
final Collection<Violation> results =
new CheckstyleValidator(env).validate(
env.files(name).iterator().next()
);
new CheckstyleValidator(env).validate(env.files(name));
MatcherAssert.assertThat(
results,
Matchers.not(Matchers.<Violation>empty())
Expand Down Expand Up @@ -759,7 +757,7 @@ private Collection<Violation> runValidation(final String file,
);
final Collection<Violation> results =
new CheckstyleValidator(env).validate(
env.files(file).iterator().next()
env.files(file)
);
if (result) {
MatcherAssert.assertThat(
Expand Down
42 changes: 22 additions & 20 deletions qulice-maven-plugin/src/main/java/com/qulice/maven/CheckMojo.java
Original file line number Diff line number Diff line change
Expand Up @@ -87,27 +87,29 @@ public void setValidatorsProvider(final ValidatorsProvider prov) {
*/
private void run() throws ValidationException {
final Collection<Violation> results = new LinkedList<>();
for (final File file : this.env().files("*.*")) {
for (final ResourceValidator validator
: this.provider.externalResource()) {
results.addAll(validator.validate(file));
final Collection<File> files = this.env().files("*.*");
if (!files.isEmpty()) {
final Collection<ResourceValidator> validators =
this.provider.externalResource();
for (final ResourceValidator validator : validators) {
results.addAll(validator.validate(files));
}
for (final Violation result : results) {
Logger.info(
this,
"%s: %s[%s]: %s (%s)",
result.validator(),
StringUtils.removeStart(
result.file(),
String.format(
"%s/", this.session().getExecutionRootDirectory()
)
),
result.lines(),
result.message(),
result.name()
);
}
}
for (final Violation result : results) {
Logger.info(
this,
"%s: %s[%s]: %s (%s)",
result.validator(),
StringUtils.removeStart(
result.file(),
String.format(
"%s/", this.session().getExecutionRootDirectory()
)
),
result.lines(),
result.message(),
result.name()
);
}
if (!results.isEmpty()) {
throw new ValidationException(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,10 @@ public interface ResourceValidator {

/**
* Validate and throws exception if there are any problems.
* @param file File to validate
* @param files Files to validate
* @return Validation results
*/
Collection<Violation> validate(File file);
Collection<Violation> validate(Collection<File> files);

/**
* Name of this validator.
Expand Down

0 comments on commit bb2f38a

Please sign in to comment.