hudson.plugins.jobConfigHistory
Class JobConfigHistoryBaseAction

java.lang.Object
  extended by hudson.plugins.jobConfigHistory.JobConfigHistoryBaseAction
All Implemented Interfaces:
hudson.model.Action, hudson.model.ModelObject
Direct Known Subclasses:
JobConfigHistoryProjectAction, JobConfigHistoryRootAction

public abstract class JobConfigHistoryBaseAction
extends Object
implements hudson.model.Action

Implements some basic methods needed by the JobConfigHistoryRootAction and JobConfigHistoryProjectAction.

Author:
mfriedenhagen

Nested Class Summary
static class JobConfigHistoryBaseAction.SideBySideView
          Holds information for the SideBySideView.
 
Constructor Summary
JobConfigHistoryBaseAction()
          Set the Hudson instance.
 
Method Summary
protected abstract  void checkConfigurePermission()
          See whether the current user may read configurations in the object returned by getAccessControlledObject().
protected  boolean checkTimestamp(String timestamp)
          Checks the url parameter 'timestamp' and returns true if it is parseable as a date.
protected abstract  hudson.security.AccessControlled getAccessControlledObject()
          Returns the object for which we want to provide access control.
protected  String getDiffAsString(File file1, File file2, String[] file1Lines, String[] file2Lines)
          Returns a unified diff between two string arrays.
 List<JobConfigHistoryBaseAction.SideBySideView.Line> getDiffLines(List<String> diffLines)
          Returns side-by-side (i.e. human-readable) diff view lines.
 String getDisplayName()
           Make method final, as we always want the same display name.
protected  hudson.model.Hudson getHudson()
          Returns the hudson instance.
 String getOutputType()
          Returns how the config file should be formatted in configOutput.jelly: as plain text or xml.
protected  JobConfigHistory getPlugin()
          Returns the JobConfigHistory plugin instance.
protected  String getRequestParameter(String parameterName)
          Returns the parameter named parameterName from current request.
 String getUrlName()
           Do not make this method final as JobConfigHistoryRootAction overrides this method.
protected abstract  boolean hasConfigurePermission()
          Returns whether the current user may read configurations in the object returned by getAccessControlledObject().
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface hudson.model.Action
getIconFileName
 

Constructor Detail

JobConfigHistoryBaseAction

public JobConfigHistoryBaseAction()
Set the Hudson instance.

Method Detail

getDisplayName

public final String getDisplayName()
Make method final, as we always want the same display name.

Specified by:
getDisplayName in interface hudson.model.Action
Specified by:
getDisplayName in interface hudson.model.ModelObject

getUrlName

public String getUrlName()
Do not make this method final as JobConfigHistoryRootAction overrides this method.

Specified by:
getUrlName in interface hudson.model.Action

getOutputType

public final String getOutputType()
Returns how the config file should be formatted in configOutput.jelly: as plain text or xml.

Returns:
"plain" or "xml"

checkTimestamp

protected boolean checkTimestamp(String timestamp)
Checks the url parameter 'timestamp' and returns true if it is parseable as a date.

Parameters:
timestamp - Timestamp of config change.
Returns:
True if timestamp is okay.

getRequestParameter

protected String getRequestParameter(String parameterName)
Returns the parameter named parameterName from current request.

Parameters:
parameterName - name of the parameter.
Returns:
value of the request parameter or null if it does not exist.

checkConfigurePermission

protected abstract void checkConfigurePermission()
See whether the current user may read configurations in the object returned by getAccessControlledObject().


hasConfigurePermission

protected abstract boolean hasConfigurePermission()
Returns whether the current user may read configurations in the object returned by getAccessControlledObject().

Returns:
true if the current user may read configurations.

getHudson

protected final hudson.model.Hudson getHudson()
Returns the hudson instance.

Returns:
the hudson

getPlugin

protected final JobConfigHistory getPlugin()
Returns the JobConfigHistory plugin instance.

Returns:
the JobConfigHistory plugin

getAccessControlledObject

protected abstract hudson.security.AccessControlled getAccessControlledObject()
Returns the object for which we want to provide access control.

Returns:
the access controlled object.

getDiffLines

public final List<JobConfigHistoryBaseAction.SideBySideView.Line> getDiffLines(List<String> diffLines)
                                                                        throws IOException
Returns side-by-side (i.e. human-readable) diff view lines.

Parameters:
diffLines - Unified diff as list of Strings.
Returns:
Nice and clean diff as list of single Lines.
Throws:
IOException - if reading one of the config files does not succeed.

getDiffAsString

protected final String getDiffAsString(File file1,
                                       File file2,
                                       String[] file1Lines,
                                       String[] file2Lines)
Returns a unified diff between two string arrays.

Parameters:
file1 - first config file.
file2 - second config file.
file1Lines - the lines of the first file.
file2Lines - the lines of the second file.
Returns:
unified diff


Copyright © 2004-2013. All Rights Reserved.