Files
FeedCenter/Application/MainWindow/CommandLine.cs
Chris Kaczor fbc6500229 - Add support for filtering by category
- Break up main window into partials instead of using regions
2016-05-31 09:59:37 -04:00

43 lines
1.4 KiB
C#

using Common.IO;
using System;
namespace FeedCenter
{
public partial class MainWindow
{
private InterprocessMessageListener _commandLineListener;
private void HandleCommandLine(object sender, InterprocessMessageListener.InterprocessMessageEventArgs e)
{
// If the command line is blank then ignore it
if (e.Message.Length == 0)
return;
// Pad the command line with a trailing space just to be lazy in parsing
var commandLine = e.Message + " ";
// Look for the feed URL in the command line
var startPosition = commandLine.IndexOf("feed://", StringComparison.Ordinal);
// If we found one then we should extract and process it
if (startPosition > 0)
{
// Advance past the protocol
startPosition += 7;
// Starting at the URL position look for the next space
var endPosition = commandLine.IndexOf(" ", startPosition, StringComparison.Ordinal);
// Extract the feed URL
var feedUrl = commandLine.Substring(startPosition, endPosition - startPosition);
// Add the HTTP protocol by default
feedUrl = "http://" + feedUrl;
// Create a new feed using the URL
HandleNewFeed(feedUrl);
}
}
}
}