/* Copyright (c) 2007, http://www.codeviation.org project
* This program is made available under the terms of the MIT License.
*/
package hudson.plugins.codeviation;
import hudson.model.Project;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.logging.Level;
import org.codeviation.model.JavaFile;
import org.codeviation.model.Package;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
/**
*
* @author pzajac
*/
public class PackageView extends JavaFileIterableView {
Package pack;
public Project project;
public PackageView(Package pack,Project project) {
this.pack = pack;
this.project = project;
}
public List<JavaFileView> getJavaFileViews() {
List<JavaFileView> jfs = new ArrayList<JavaFileView>();
for (JavaFile jf : pack) {
getLogger().log(Level.SEVERE,"Add:" + jf.getName());
jfs.add(new JavaFileView(jf,project));
}
return jfs;
}
protected Date getMinDate() {
return pack.getSourceRoot().getMinTagDate();
}
protected Date getMaxDate() {
return pack.getSourceRoot().getMaxTagDate();
}
protected Iterable<JavaFile> getJavaFiles() {
return pack;
}
public String getDisplayName() {
return pack.getName();
}
public String getUrl() {
return pack.getName();
}
public JavaFileView getDynamic(String token, StaplerRequest req, StaplerResponse rsp ) throws IOException {
JavaFile jf = pack.getJavaFile(token);
return (jf == null) ? null :
new JavaFileView(jf,project);
}
}