Skip to content

Commit

Permalink
Cleanup: get a warning-free build & workspace.
Browse files Browse the repository at this point in the history
With all these warning markers it's a bit hard to see what's going on.
  • Loading branch information
tomaswolf authored and rodrigc committed Dec 11, 2015
1 parent c29b6fb commit 4da63be
Show file tree
Hide file tree
Showing 16 changed files with 153 additions and 89 deletions.
48 changes: 47 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,21 @@
</execute >
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>maven-replacer-plugin</artifactId>
<versionRange>[1.3.2,)</versionRange>
<goals>
<goal>replace</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute>
<runOnIncremental>false</runOnIncremental>
</execute >
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
Expand Down Expand Up @@ -125,7 +140,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<version>3.1</version><!--$NO-MVN-MAN-VER$-->
<configuration>
<source>1.6</source>
<target>1.6</target>
Expand All @@ -150,6 +165,37 @@
</execution>
</executions>
</plugin>
<plugin>
<!-- Fix the injected tests source generated by maven-hpi-plugin. -->
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>maven-replacer-plugin</artifactId>
<version>1.3.2</version>
<executions>
<execution>
<phase>process-test-sources</phase>
<goals>
<goal>replace</goal>
</goals>
</execution>
</executions>
<configuration>
<includes>
<include>target/inject-tests/*.java</include>
<include>target/generated-test-sources/injected/*.java</include>
</includes>
<regex>false</regex>
<replacements>
<replacement>
<token>Map parameters = new HashMap();</token>
<value>Map&lt;String,String&gt; parameters = new HashMap&lt;String,String&gt;();</value>
</replacement>
<replacement>
<token>new org.jvnet.hudson.test.PluginAutomaticTestBuilder()</token>
<value>org.jvnet.hudson.test.PluginAutomaticTestBuilder</value>
</replacement>
</replacements>
</configuration>
</plugin>
</plugins>
</build>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
package hudson.plugins.scm_sync_configuration;

import hudson.model.Hudson;

import java.io.File;

import jenkins.model.Jenkins;

public class JenkinsFilesHelper {

public static String buildPathRelativeToHudsonRoot(File file){
File hudsonRoot = Hudson.getInstance().getRootDir();
if(!file.getAbsolutePath().startsWith(hudsonRoot.getAbsolutePath())){
File jenkinsRoot = Jenkins.getInstance().getRootDir();
if(!file.getAbsolutePath().startsWith(jenkinsRoot.getAbsolutePath())){
return null;
}
String truncatedPath = file.getAbsolutePath().substring(hudsonRoot.getAbsolutePath().length()+1); // "+1" because we don't need ending file separator
String truncatedPath = file.getAbsolutePath().substring(jenkinsRoot.getAbsolutePath().length()+1); // "+1" because we don't need ending file separator
return truncatedPath.replaceAll("\\\\", "/");
}

public static File buildFileFromPathRelativeToHudsonRoot(String pathRelativeToHudsonRoot){
File hudsonRoot = Hudson.getInstance().getRootDir();
return new File(hudsonRoot.getAbsolutePath()+File.separator+pathRelativeToHudsonRoot);
public static File buildFileFromPathRelativeToHudsonRoot(String pathRelativeToJenkinsRoot){
File jenkinsRoot = Jenkins.getInstance().getRootDir();
return new File(jenkinsRoot.getAbsolutePath(), pathRelativeToJenkinsRoot);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
Expand Down Expand Up @@ -201,14 +200,12 @@ public List<File> addFile(File scmRoot, String filePathRelativeToScmRoot){
return synchronizedFiles;
}

private List<File> refineUpdatedFilesInScmResult(List updatedFiles){
private List<File> refineUpdatedFilesInScmResult(List<?> updatedFiles){
List<File> refinedUpdatedFiles = new ArrayList<File>();

// Cannot use directly a List<ScmFile> or List<File> here, since result type will depend upon
// current scm api version
Iterator scmFileIter = updatedFiles.iterator();
while(scmFileIter.hasNext()){
Object scmFile = scmFileIter.next();
for (Object scmFile :updatedFiles) {
if(scmFile instanceof File){
String checkoutScmDir = ScmSyncConfigurationBusiness.getCheckoutScmDirectoryAbsolutePath();
String scmPath = ((File) scmFile).getAbsolutePath();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
package hudson.plugins.scm_sync_configuration;

import com.google.common.io.Files;
import hudson.model.Hudson;

import hudson.model.User;
import hudson.plugins.scm_sync_configuration.exceptions.LoggableException;
import hudson.plugins.scm_sync_configuration.model.*;
import hudson.plugins.scm_sync_configuration.strategies.ScmSyncStrategy;
import hudson.plugins.scm_sync_configuration.utils.Checksums;
import hudson.security.Permission;
import hudson.util.DaemonThreadFactory;

import org.apache.commons.io.FileUtils;
import org.apache.maven.scm.ScmException;
import org.apache.maven.scm.manager.ScmManager;
Expand All @@ -25,6 +26,8 @@
import java.util.concurrent.Future;
import java.util.logging.Logger;

import jenkins.model.Jenkins;


public class ScmSyncConfigurationBusiness {

Expand Down Expand Up @@ -305,18 +308,17 @@ public boolean scmCheckoutDirectorySettledUp(ScmContext scmContext){

public List<File> reloadAllFilesFromScm() throws IOException, ScmException {
this.scmManipulator.update(new File(getCheckoutScmDirectoryAbsolutePath()));
return syncDirectories(new File(getCheckoutScmDirectoryAbsolutePath() + File.separator), "");
return syncDirectories(new File(getCheckoutScmDirectoryAbsolutePath()), "");
}

private List<File> syncDirectories(File from, String relative) throws IOException {
List<File> l = new ArrayList<File>();
for(File f : from.listFiles()) {
String newRelative = relative + File.separator + f.getName();
File jenkinsFile = new File(Hudson.getInstance().getRootDir() + newRelative);
File jenkinsFile = new File(Jenkins.getInstance().getRootDir() + newRelative);
if (f.getName().equals(scmManipulator.getScmSpecificFilename())) {
// nothing to do
}
else if (f.isDirectory()) {
} else if (f.isDirectory()) {
if (!jenkinsFile.exists()) {
FileUtils.copyDirectory(f, jenkinsFile, new FileFilter() {

Expand All @@ -330,8 +332,7 @@ public boolean accept(File f) {
else {
l.addAll(syncDirectories(f, newRelative));
}
}
else {
} else {
if (!jenkinsFile.exists() || !FileUtils.contentEquals(f, jenkinsFile)) {
FileUtils.copyFile(f, jenkinsFile);
l.add(jenkinsFile);
Expand All @@ -351,24 +352,24 @@ private void signal(String operation, boolean result) {
}

public static String getCheckoutScmDirectoryAbsolutePath(){
return new File(new File(Hudson.getInstance().getRootDir(), WORKING_DIRECTORY), CHECKOUT_SCM_DIRECTORY).getAbsolutePath();
return new File(new File(Jenkins.getInstance().getRootDir(), WORKING_DIRECTORY), CHECKOUT_SCM_DIRECTORY).getAbsolutePath();
}

public static String getScmDirectoryName() {
return WORKING_DIRECTORY;
}

public void purgeFailLogs() {
Hudson.getInstance().checkPermission(purgeFailLogPermission());
Jenkins.getInstance().checkPermission(purgeFailLogPermission());
scmSyncConfigurationStatusManager.purgeFailLogs();
}

public boolean canCurrentUserPurgeFailLogs() {
return Hudson.getInstance().hasPermission(purgeFailLogPermission());
return Jenkins.getInstance().hasPermission(purgeFailLogPermission());
}

private static Permission purgeFailLogPermission(){
// Only administrators should be able to purge logs
return Hudson.ADMINISTER;
return Jenkins.ADMINISTER;
}
}
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
package hudson.plugins.scm_sync_configuration;

import hudson.plugins.scm_sync_configuration.model.BotherTimeout;

import org.kohsuke.stapler.Stapler;

import javax.servlet.http.HttpServletRequest;

import java.util.*;
import java.util.Map.Entry;
import java.util.concurrent.Callable;
Expand Down Expand Up @@ -57,6 +59,7 @@ public static Date retrieveBotherTimeoutMatchingUrl(String currentURL){
}

protected static Map<BotherTimeout, Date> retrievePurgedBotherTimeouts(){
@SuppressWarnings("unchecked")
Map<BotherTimeout, Date> botherTimeouts = (Map<BotherTimeout, Date>)retrieveObject(BOTHER_TIMEOUTS_SESSION_KEY, false);
if(botherTimeouts != null){
purgeOutdatedBotherTimeouts(botherTimeouts);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@
import com.google.common.base.Function;
import com.google.common.base.Predicate;
import com.google.common.collect.Collections2;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.Iterables;
import com.google.common.collect.Lists;

import hudson.Plugin;
import hudson.model.Descriptor;
import hudson.model.Descriptor.FormException;
import hudson.model.Hudson;
import hudson.model.Saveable;
import hudson.model.User;
import hudson.plugins.scm_sync_configuration.extensions.ScmSyncConfigurationFilter;
Expand All @@ -29,7 +29,6 @@

import org.acegisecurity.AccessDeniedException;
import org.apache.maven.scm.ScmException;
import org.apache.tools.ant.types.selectors.FileSelector;
import org.kohsuke.stapler.QueryParameter;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
Expand Down Expand Up @@ -60,13 +59,13 @@ public class ScmSyncConfigurationPlugin extends Plugin{
/**
* Strategies that cannot be updated by user
*/
public static final transient List<ScmSyncStrategy> DEFAULT_STRATEGIES = new ArrayList<ScmSyncStrategy>(){{
addAll(Collections2.filter(Arrays.asList(AVAILABLE_STRATEGIES), new Predicate<ScmSyncStrategy>() {
public static final transient List<ScmSyncStrategy> DEFAULT_STRATEGIES = ImmutableList.copyOf(
Collections2.filter(Arrays.asList(AVAILABLE_STRATEGIES), new Predicate<ScmSyncStrategy>() {
public boolean apply(@Nullable ScmSyncStrategy scmSyncStrategy) {
return !( scmSyncStrategy instanceof ManualIncludesScmSyncStrategy );
}
}));
}};
})
);

public void purgeFailLogs() {
business.purgeFailLogs();
Expand Down Expand Up @@ -130,7 +129,7 @@ public List<String> getManualSynchronizationIncludes(){
public void start() throws Exception {
super.start();

Hudson.XSTREAM.registerConverter(new ScmSyncConfigurationXStreamConverter());
Jenkins.XSTREAM.registerConverter(new ScmSyncConfigurationXStreamConverter());

this.load();

Expand Down Expand Up @@ -296,13 +295,13 @@ public List<String> getDefaultIncludes(){
private User getCurrentUser(){
User user = null;
try {
user = Hudson.getInstance().getMe();
user = Jenkins.getInstance().getMe();
}catch(AccessDeniedException e){}
return user;
}

public static ScmSyncConfigurationPlugin getInstance(){
return Hudson.getInstance().getPlugin(ScmSyncConfigurationPlugin.class);
return Jenkins.getInstance().getPlugin(ScmSyncConfigurationPlugin.class);
}

public ScmSyncStrategy getStrategyForSaveable(Saveable s, File f){
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package hudson.plugins.scm_sync_configuration;

import hudson.model.Hudson;

import java.io.File;
import java.io.IOException;
import java.util.Date;
import java.util.logging.Logger;

import jenkins.model.Jenkins;

import org.codehaus.plexus.util.FileUtils;

public class ScmSyncConfigurationStatusManager {
Expand All @@ -21,8 +21,8 @@ public class ScmSyncConfigurationStatusManager {
private File success;

public ScmSyncConfigurationStatusManager() {
fail = new File(Hudson.getInstance().getRootDir().getAbsolutePath()+File.separator+LOG_FAIL_FILENAME);
success = new File(Hudson.getInstance().getRootDir().getAbsolutePath()+File.separator+LOG_SUCCESS_FILENAME);
fail = new File(Jenkins.getInstance().getRootDir().getAbsolutePath(), LOG_FAIL_FILENAME);
success = new File(Jenkins.getInstance().getRootDir().getAbsolutePath(), LOG_SUCCESS_FILENAME);
}

public String getLastFail() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,22 +5,25 @@
* Exception which will be easily loggable, by providing both class and method called, causing the exception
*/
public class LoggableException extends RuntimeException {
Class clazz;

private static final long serialVersionUID = 442135528912013310L;

Class<?> clazz;
String methodName;

public LoggableException(String message, Class clazz, String methodName, Throwable cause) {
public LoggableException(String message, Class<?> clazz, String methodName, Throwable cause) {
super(message, cause);
this.clazz = clazz;
this.methodName = methodName;
}

public LoggableException(String message, Class clazz, String methodName) {
public LoggableException(String message, Class<?> clazz, String methodName) {
super(message);
this.clazz = clazz;
this.methodName = methodName;
}

public Class getClazz() {
public Class<?> getClazz() {
return clazz;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@
import hudson.Extension;
import hudson.model.PageDecorator;
import hudson.plugins.scm_sync_configuration.ScmSyncConfigurationPlugin;

import org.kohsuke.stapler.bind.JavaScriptMethod;

@Extension
public class ScmSyncConfigurationPageDecorator extends PageDecorator{

@SuppressWarnings("deprecation") // Super constructor is deprecated. Unsure if default constructor would work, though.
public ScmSyncConfigurationPageDecorator(){
super(ScmSyncConfigurationPageDecorator.class);
}
Expand Down
Loading

0 comments on commit 4da63be

Please sign in to comment.