in tomcat8-maven-plugin/src/main/java/org/apache/tomcat/maven/plugin/tomcat8/AbstractCatalinaMojo.java [160:225]
protected abstract void invokeManager()
throws MojoExecutionException, TomcatManagerException, IOException;
/**
* Gets the Tomcat manager wrapper object configured for this goal.
*
* @return the Tomcat manager wrapper object
* @throws org.apache.maven.plugin.MojoExecutionException
* if there was a problem obtaining the authentication details
*/
protected TomcatManager getManager()
throws MojoExecutionException
{
// lazily instantiate when config values have been injected
if ( manager == null )
{
String userName;
String password;
if ( server == null )
{
// no server set, use defaults
getLog().debug( messagesProvider.getMessage( "AbstractCatalinaMojo.defaultAuth" ) );
userName = DEFAULT_USERNAME;
password = DEFAULT_PASSWORD;
}
else
{
// obtain authenication details for specified server from wagon
AuthenticationInfo info = wagonManager.getAuthenticationInfo( server );
if ( info == null )
{
throw new MojoExecutionException(
messagesProvider.getMessage( "AbstractCatalinaMojo.unknownServer", server ) );
}
// derive username
userName = info.getUserName();
if ( userName == null )
{
getLog().debug( messagesProvider.getMessage( "AbstractCatalinaMojo.defaultUserName" ) );
userName = DEFAULT_USERNAME;
}
// derive password
password = info.getPassword();
if ( password == null )
{
getLog().debug( messagesProvider.getMessage( "AbstractCatalinaMojo.defaultPassword" ) );
password = DEFAULT_PASSWORD;
}
}
// if userName/password are defined in the mojo or the cli they override
if ( !StringUtils.isEmpty( this.username ) )
{
userName = this.username;
password = this.password == null ? "" : this.password;
}
manager = new TomcatManager( url, userName, password, charset, settings.isInteractiveMode() );
manager.setUserAgent( name + "/" + version );
}
return manager;
}