use of ch.acanda.eclipse.pmd.domain.RuleSetModel in project eclipse-pmd by acanda.
the class PMDPropertyPageController method init.
public void init(final IProject project) {
this.project = project;
final WorkspaceModel workspaceModel = PMDPlugin.getDefault().getWorkspaceModel();
projectModel = workspaceModel.getOrCreateProject(project.getName());
model.setInitialState(projectModel.isPMDEnabled(), projectModel.getRuleSets(), project);
final ImmutableSortedSet.Builder<RuleSetModel> ruleSetBuilder = ImmutableSortedSet.orderedBy(ProjectModel.RULE_SET_COMPARATOR);
for (final ProjectModel projectModel : workspaceModel.getProjects()) {
ruleSetBuilder.addAll(projectModel.getRuleSets());
}
model.setRuleSets(ImmutableList.copyOf(toViewModels(ruleSetBuilder.build(), project)));
reset();
}
use of ch.acanda.eclipse.pmd.domain.RuleSetModel in project eclipse-pmd by acanda.
the class ProjectConfigurationContentHandler method createRuleSet.
private RuleSetModel createRuleSet(final Attributes attributes) {
final LocationContext context = getContext(attributes.getValue(ATTRIBUTE_NAME_REFCONTEXT));
final Location location = new Location(attributes.getValue(ATTRIBUTE_NAME_REF), context);
return new RuleSetModel(attributes.getValue(ATTRIBUTE_NAME_NAME), location);
}
use of ch.acanda.eclipse.pmd.domain.RuleSetModel in project eclipse-pmd by acanda.
the class ProjectModelSerializerTest method assertRuleSetModel.
private void assertRuleSetModel(final ProjectModel projectModel, final LocationContext context, final String name, final String path) {
final RuleSetModel remoteRuleSet = extractRuleSetModel(projectModel, context);
assertEquals("Name of the " + context + " rule set", name, remoteRuleSet.getName());
assertEquals("Path of the " + context + " rule set", path, remoteRuleSet.getLocation().getPath());
}
use of ch.acanda.eclipse.pmd.domain.RuleSetModel in project eclipse-pmd by acanda.
the class RuleSetsCacheTest method secondGetLoadsWhenProjectRuleSetsWereChanged.
/**
* Verifies that the second cache access loads the rule sets if the project model's rule sets have been changed
* after the first access.
*/
@Test
public void secondGetLoadsWhenProjectRuleSetsWereChanged() throws Exception {
final WorkspaceModel workspaceModel = getWorkspaceModel();
final RuleSetsCache cache = new RuleSetsCache(getCacheLoaderMock(), workspaceModel);
cache.getRuleSets(PROJECT_NAME_1);
final RuleSetModel ruleSetModel = new RuleSetModel("abc", new Location("path", LocationContext.WORKSPACE));
workspaceModel.getOrCreateProject(PROJECT_NAME_1).setRuleSets(Arrays.asList(ruleSetModel));
final RuleSets actualRuleSets = cache.getRuleSets(PROJECT_NAME_1);
assertSame("Second cache access should reload rule sets", RULE_SETS_FOO_2, actualRuleSets);
}
Aggregations