protected override string GenerateCommandLineCommands()
		{
			var builder = new CommandLineBuilder();
			builder.AppendSwitch(NuGetVerb);

			builder.AppendFileNameIfNotNull(PackagePath);
			builder.AppendSwitch("-NonInteractive");
			builder.AppendSwitchIfNotNull("-Source ", Source);
			builder.AppendSwitchIfNotNull("-ApiKey ", ApiKey);
			builder.AppendSwitchIfNotNull("-Verbosity ", Verbosity);
			builder.AppendSwitchIfNotNull("-ConfigFile ", ConfigFile);
			builder.AppendSwitchIfNotNullOrEmpty(PushArguments);

			return builder.ToString();
		}
		protected override string GenerateCommandLineCommands()
		{
			var builder = new CommandLineBuilder();
			builder.AppendSwitch(NuGetVerb);

			// We don't allow the 'Build' argument because an infinite loop will occur
			// because Build will trigger our Post-Build which then will trigger
			// another Build again and again. Also, since 'Build' isn't allowed, then
			// the 'Properties' argument isn't needed either.
			// http://nuget.codeplex.com/workitem/1036

			var extraArguments = SanitizeExtraArguments();

			builder.AppendFileNameIfNotNull(InputFile);
			builder.AppendSwitch("-NonInteractive");
			builder.AppendSwitchIfNotNullOrEmpty("-OutputDirectory ", OutputDirectory);
			builder.AppendSwitchIfNotNullOrEmpty("-BasePath ", BasePath);
			builder.AppendSwitchIfNotNullOrEmpty("-Version ", Version);
			builder.AppendSwitchIfNotNull("-Exclude ", Exclude, ";");
			builder.AppendSwitchIfTrue("-Symbols", Symbols);
			builder.AppendSwitchIfTrue("-Tool", Tool);
			builder.AppendSwitchIfTrue("-NoDefaultExcludes", NoDefaultExcludes);
			builder.AppendSwitchIfTrue("-NoPackageAnalysis", NoPackageAnalysis);
			builder.AppendSwitchIfTrue("-IncludeReferencedProjects", IncludeReferencedProjects);
			builder.AppendSwitchIfTrue("-ExcludeEmptyDirectories", ExcludeEmptyDirectories);
			builder.AppendSwitchIfNotNullOrEmpty("-Verbosity ", Verbosity);
			builder.AppendSwitchIfNotNullOrEmpty("-MinClientVersion ", MinClientVersion);
			builder.AppendSwitchIfNotNullOrEmpty(extraArguments);

			return builder.ToString();
		}