5: Create BasePlugin and Issue
This commit is contained in:
34
src/main/java/com/bartek/esa/core/archetype/BasePlugin.java
Normal file
34
src/main/java/com/bartek/esa/core/archetype/BasePlugin.java
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
package com.bartek.esa.core.archetype;
|
||||||
|
|
||||||
|
import com.bartek.esa.core.model.Issue;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public abstract class BasePlugin {
|
||||||
|
private List<Issue> issues = new ArrayList<>();
|
||||||
|
private File file;
|
||||||
|
|
||||||
|
public void update(File file) {
|
||||||
|
this.file = file;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Issue> runForIssues() {
|
||||||
|
run(file);
|
||||||
|
return issues;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected abstract void run(File file);
|
||||||
|
|
||||||
|
protected void addIssue(int lineNumber, String line) {
|
||||||
|
Issue issue = Issue.builder()
|
||||||
|
.issuer(this.getClass())
|
||||||
|
.file(file)
|
||||||
|
.lineNumber(lineNumber)
|
||||||
|
.line(line)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
issues.add(issue);
|
||||||
|
}
|
||||||
|
}
|
||||||
15
src/main/java/com/bartek/esa/core/model/Issue.java
Normal file
15
src/main/java/com/bartek/esa/core/model/Issue.java
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
package com.bartek.esa.core.model;
|
||||||
|
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
public class Issue {
|
||||||
|
private final Class<?> issuer;
|
||||||
|
private final File file;
|
||||||
|
private final int lineNumber;
|
||||||
|
private final String line;
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user