/* | |
* 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; | |
} | |
} |