/* * Sonar XML Plugin * Copyright (C) 2010 Matthijs Galesloot * dev@sonar.codehaus.org * * 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 org.sonar.plugins.xml; import java.util.ArrayList; import java.util.Collection; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Set; import org.sonar.api.batch.Event; import org.sonar.api.batch.SensorContext; import org.sonar.api.design.Dependency; import org.sonar.api.measures.Measure; import org.sonar.api.measures.MeasuresFilter; import org.sonar.api.measures.Metric; import org.sonar.api.resources.ProjectLink; import org.sonar.api.resources.Resource; import org.sonar.api.rules.Violation; /** * @author Matthijs Galesloot */ public class MockSensorContext implements SensorContext { private Measure measure; private final Map<Resource, List<Measure>> measures = new HashMap<Resource, List<Measure>>(); private final List<Resource> resources = new ArrayList<Resource>(); private final List<Violation> violations = new ArrayList<Violation>(); @Override public Event createEvent(Resource resource, String name, String description, String category, Date date) { // TODO Auto-generated method stub return null; } @Override public void deleteEvent(Event event) { // TODO Auto-generated method stub } @Override public void deleteLink(String key) { // TODO Auto-generated method stub } @Override public Set<Dependency> getDependencies() { // TODO Auto-generated method stub return null; } @Override public List<Event> getEvents(Resource resource) { // TODO Auto-generated method stub return null; } @Override public Collection<Dependency> getIncomingDependencies(Resource to) { // TODO Auto-generated method stub return null; } @Override public Measure getMeasure(Metric metric) { return measure; } @Override public Measure getMeasure(Resource resource, Metric metric) { for (Resource r : measures.keySet()) { if (r.equals(resource)) { for (Measure m : measures.get(r)) { if (m.getMetric().equals(metric)) { return m; } } } } return null; } @Override public <M> M getMeasures(MeasuresFilter<M> filter) { // TODO Auto-generated method stub return null; } @Override public <M> M getMeasures(Resource resource, MeasuresFilter<M> filter) { // TODO Auto-generated method stub return null; } public int getNumResources() { return resources.size(); } @Override public Collection<Dependency> getOutgoingDependencies(Resource from) { // TODO Auto-generated method stub return null; } @Override public Resource getResource(Resource resource) { // TODO Auto-generated method stub return null; } public List<Resource> getResources() { return resources; } public List getViolations() { return violations; } @Override public Dependency saveDependency(Dependency dependency) { // TODO Auto-generated method stub return null; } @Override public void saveLink(ProjectLink link) { // TODO Auto-generated method stub } @Override public Measure saveMeasure(Measure measure) { // TODO Auto-generated method stub return null; } @Override public Measure saveMeasure(Metric metric, Double value) { this.measure = new Measure(metric, value); return measure; } @Override public Measure saveMeasure(Resource resource, Measure measure) { if (measures.get(resource) == null) { measures.put(resource, new ArrayList<Measure>()); } if ( !resources.contains(resource)) { resources.add(resource); } measures.get(resource).add(measure); return measure; } @Override public Measure saveMeasure(Resource resource, Metric metric, Double value) { Measure m = new Measure(metric, value); return saveMeasure(resource, m); } @Override public String saveResource(Resource resource) { resources.add(resource); return null; } @Override public void saveSource(Resource resource, String source) { resources.add(resource); } @Override public void saveViolation(Violation violation) { violations.add(violation); } @Override public void saveViolation(Violation arg0, boolean arg1) { // TODO Auto-generated method stub } @Override public void saveViolations(Collection<Violation> violations) { // TODO Auto-generated method stub } @Override public boolean index(Resource resource) { // TODO Auto-generated method stub return false; } @Override public boolean index(Resource resource, Resource parentReference) { // TODO Auto-generated method stub return false; } @Override public boolean isExcluded(Resource reference) { // TODO Auto-generated method stub return false; } @Override public boolean isIndexed(Resource reference, boolean acceptExcluded) { // TODO Auto-generated method stub return false; } @Override public Resource getParent(Resource reference) { // TODO Auto-generated method stub return null; } @Override public Collection<Resource> getChildren(Resource reference) { // TODO Auto-generated method stub return null; } }