org.jenkinsci.plugins.tokenmacro.impl
Class BuildUrlMacro

java.lang.Object
  extended by org.jenkinsci.plugins.tokenmacro.TokenMacro
      extended by org.jenkinsci.plugins.tokenmacro.impl.BuildUrlMacro
All Implemented Interfaces:
hudson.ExtensionPoint

@Extension
public class BuildUrlMacro
extends TokenMacro

Author:
Kohsuke Kawaguchi

Nested Class Summary
 
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
hudson.ExtensionPoint.LegacyInstancesAreScopedToHudson
 
Constructor Summary
BuildUrlMacro()
           
 
Method Summary
 boolean acceptsMacroName(java.lang.String macroName)
          Returns true if this object can evaluate the macro of the given name.
 java.lang.String evaluate(hudson.model.AbstractBuild<?,?> context, hudson.model.TaskListener listener, java.lang.String macroName, java.util.Map<java.lang.String,java.lang.String> arguments, com.google.common.collect.ListMultimap<java.lang.String,java.lang.String> argumentMultimap)
          Evaluates the macro and produces the token.
 
Methods inherited from class org.jenkinsci.plugins.tokenmacro.TokenMacro
all, expand
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BuildUrlMacro

public BuildUrlMacro()
Method Detail

acceptsMacroName

public boolean acceptsMacroName(java.lang.String macroName)
Description copied from class: TokenMacro
Returns true if this object can evaluate the macro of the given name.

Specified by:
acceptsMacroName in class TokenMacro
Parameters:
macroName - By convention we encourage all caps name.
Returns:
true ... to claim the macro of the given name and have TokenMacro.evaluate(AbstractBuild, TaskListener, String, Map, ListMultimap) called.

evaluate

public java.lang.String evaluate(hudson.model.AbstractBuild<?,?> context,
                                 hudson.model.TaskListener listener,
                                 java.lang.String macroName,
                                 java.util.Map<java.lang.String,java.lang.String> arguments,
                                 com.google.common.collect.ListMultimap<java.lang.String,java.lang.String> argumentMultimap)
                          throws MacroEvaluationException,
                                 java.io.IOException,
                                 java.lang.InterruptedException
Description copied from class: TokenMacro
Evaluates the macro and produces the token.

Locale

If the token is to produce a human readable text, it should do so by using the implicit locale associated with the calling thread — see Functions.getCurrentLocale().

Specified by:
evaluate in class TokenMacro
Parameters:
context - The build object for which this macro is evaluated.
listener - If the progress/status needs to be reported to the build console output, this object can be used.
macroName - The macro name that you accepted
arguments - Arguments as a map. If multiple values are specified for one key, this will only retain the last one. This is passed in separately from argumentMultimap because
argumentMultimap - The same arguments, but in a multi-map. If multiple values are specified for one key, all of them are retained here in the order of appearance. For those macros that support multiple values for the same key this is more accurate than arguments, but it's bit more tedious to use.
Returns:
The result of the evaluation. Must not be null.
Throws:
MacroEvaluationException - If the evaluation failed, for example because of the parameter error, and that the error message should be presented.
java.io.IOException - Other fatal IOExceptions that should leave the stack trace in the console.
java.lang.InterruptedException - If the evaluation involves some remoting operation, user might cancel the build, which results in an InterruptedException. Don't catch it, just propagate.


Copyright © 2004-2011. All Rights Reserved.