protected override void ProcessRecord() {
#if USING_RESTABLE_CMDLET
if (Remote) {
ProcessRecordViaRest();
return;
}
#endif
ProviderInfo packagePathProviderInfo;
var pkgPath = SessionState.Path.GetResolvedProviderPathFromPSPath(Package, out packagePathProviderInfo);
using (var local = LocalEventSource) {
local.Events += new SourceError((code, location, message, objects) => {
location = location ?? SourceLocation.Unknowns;
Host.UI.WriteErrorLine("{0}:Error {1}:{2}".format(location.FirstOrDefault(), code, message.format(objects)));
return true;
});
if (!NoWarnings) {
local.Events += new SourceWarning((code, location, message, objects) => {
WriteWarning("{0}:Warning {1}:{2}".format((location ?? SourceLocation.Unknowns).FirstOrDefault(), message.format(objects)));
return false;
});
}
local.Events += new SourceDebug((code, location, message, objects) => {
WriteVerbose("{0}:DebugMessage {1}:{2}".format((location ?? SourceLocation.Unknowns).FirstOrDefault(), code, message.format(objects)));
return false;
});
using (var script = new PackageScript(pkgPath.FirstOrDefault())) {
script.SplitThreshold = SplitThreshold * 1024 * 1024;
if (NoSplit.IsPresent) {
script.NoSplit = true;
}
if (PackageDirectory.Is()) {
script.AddNuGetPackageDirectory(PackageDirectory.GetFullPath());
}
if (Defines != null) {
foreach (var i in Defines) {
var p = i.IndexOf("=");
var k = p > -1 ? i.Substring(0, p) : i;
var v = p > -1 ? i.Substring(p + 1) : "";
script.AddMacro(k, v);
}
}
if (Define != null) {
foreach (var i in Define) {
var p = i.IndexOf("=");
var k = p > -1 ? i.Substring(0, p) : i;
var v = p > -1 ? i.Substring(p + 1) : "";
script.AddMacro(k, v);
}
}
IEnumerable<string> overlayPackages;
var pkgFile = script.Save(PackageTypes.NuGet, !NoClean, GenerateOnly, out overlayPackages);
}
}
}