blob: 2a45f71177d7cda4a79347b862304d489c37c3cc [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package npanday.nuget;
import com.google.common.base.Preconditions;
import com.google.common.base.Strings;
import com.google.common.collect.Lists;
import java.io.File;
import java.util.Collection;
import java.util.List;
/**
* @author <a href="mailto:lcorneliussen@apache.org">Lars Corneliussen</a>
*/
public class NugetInstallParameters
{
private String packageName;
private String version;
private File outputDirectory;
private boolean prerelease;
private boolean excludeVersion;
private List<String> sources;
public NugetInstallParameters( String packageName )
{
Preconditions.checkArgument( packageName != null, "packageName was null!" );
this.packageName = packageName;
}
public Collection<String> buildCommands()
{
List<String> commands = Lists.newArrayList();
commands.add( "install" );
commands.add( packageName );
if ( !Strings.isNullOrEmpty( version ) )
{
commands.add( "-Version" );
commands.add( version );
}
if ( outputDirectory != null )
{
commands.add( "-OutputDirectory" );
commands.add( outputDirectory.getAbsolutePath() );
}
if ( prerelease )
{
commands.add( "-Prerelease" );
}
if ( excludeVersion )
{
commands.add( "-ExcludeVersion" );
}
if ( sources != null && sources.size() > 0 )
{
for ( String source : sources )
{
commands.add( "-Source" );
commands.add( source );
}
}
return commands;
}
public void setSources( List<String> sources )
{
this.sources = sources;
}
public void setVersion( String version )
{
this.version = version;
}
public void setOutputDirectory( File outputDirectory )
{
this.outputDirectory = outputDirectory;
}
public void setPrerelease( boolean prerelease )
{
this.prerelease = prerelease;
}
public void setExcludeVersion( boolean excludeVersion )
{
this.excludeVersion = excludeVersion;
}
}