Fixes from Cerberus and other development
This commit is contained in:
parent
870b8c6715
commit
60de762c8b
@ -227,7 +227,7 @@ function getmagnetlink {
|
|||||||
searchstring="$(echo "$1" | sed "s/ /$searchunifier/g")"
|
searchstring="$(echo "$1" | sed "s/ /$searchunifier/g")"
|
||||||
searchlink="$(printf "$torrentengine" "$searchstring")"
|
searchlink="$(printf "$torrentengine" "$searchstring")"
|
||||||
searchresult="$(wget --timeout=5 -q -O - "$searchlink" | bash -c "$torrentterms")"
|
searchresult="$(wget --timeout=5 -q -O - "$searchlink" | bash -c "$torrentterms")"
|
||||||
magnetlink="$(wget --timeout=5 -q -O - "$searchresult" | grep 'magnet:?' | cut -f $magnetposition -d \")"
|
magnetlink="$(wget --timeout=5 -q -O - "$searchresult" | grep 'magnet:?' | cut -f "$magnetposition" -d \"| head -n 1)"
|
||||||
if [ $torrentdebugging == "true" ]; then
|
if [ $torrentdebugging == "true" ]; then
|
||||||
echo '<'$searchstring'>'
|
echo '<'$searchstring'>'
|
||||||
echo '<'$searchlink'>'
|
echo '<'$searchlink'>'
|
||||||
|
@ -15,6 +15,7 @@ namespace AniNIX.Shared {
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="filename">The Config file</param>
|
/// <param name="filename">The Config file</param>
|
||||||
public Configure(String filename) {
|
public Configure(String filename) {
|
||||||
|
if (!File.Exists(filename)) throw new Exception("File not found.");
|
||||||
StreamReader fileReader = new StreamReader(filename);
|
StreamReader fileReader = new StreamReader(filename);
|
||||||
String line;
|
String line;
|
||||||
while (true) {
|
while (true) {
|
||||||
|
82
CSharp/DirHandle.csharp
Normal file
82
CSharp/DirHandle.csharp
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
using System;
|
||||||
|
using System.IO;
|
||||||
|
using System.Text;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace AniNIX.Shared {
|
||||||
|
|
||||||
|
public class DirHandle : IDisposable {
|
||||||
|
|
||||||
|
// Internal representations of the directory.
|
||||||
|
private FileSystemWatcher _dirHandle = new FileSystemWatcher();
|
||||||
|
private String _path;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Create a new DirHandle
|
||||||
|
/// </summary>
|
||||||
|
/// <param name=path>The path to watch</param>
|
||||||
|
/// <param name=filter>Optional filter to control files by -- accepts regex</param>
|
||||||
|
public DirHandle(String path, String filter = "*.*") {
|
||||||
|
this._path=path;
|
||||||
|
_dirHandle.Path = path;
|
||||||
|
_dirHandle.NotifyFilter = NotifyFilters.LastWrite;
|
||||||
|
_dirHandle.Filter = filter;
|
||||||
|
_dirHandle.NotifyFilter = NotifyFilters.LastWrite | NotifyFilters.Security | NotifyFilters.DirectoryName | NotifyFilters.FileName | NotifyFilters.Size;
|
||||||
|
_dirHandle.EnableRaisingEvents = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Wait until the directory changes
|
||||||
|
/// </summary>
|
||||||
|
public void HoldForChange() {
|
||||||
|
_dirHandle.WaitForChanged(WatcherChangeTypes.Changed);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Get a list of files in the path.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>A List of strings</returns>
|
||||||
|
public List<String> ListContents() {
|
||||||
|
return new List<String>(Directory.GetFiles(@_path));
|
||||||
|
}
|
||||||
|
|
||||||
|
/* IDisposable */
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up this FileStream, implementing IDisposable
|
||||||
|
/// </summary>
|
||||||
|
public void Dispose() {
|
||||||
|
this.Dispose(true);
|
||||||
|
GC.SuppressFinalize(this);
|
||||||
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// Force the GarbageCollector to Dispose if programmer does not
|
||||||
|
/// </summary>
|
||||||
|
~DirHandle() {
|
||||||
|
Dispose(false);
|
||||||
|
ReportMessage.Log(Verbosity.Error,"Programmer forgot to dispose of DirHandle. Marking for Garbage Collector");
|
||||||
|
}
|
||||||
|
|
||||||
|
// This bool indicates whether we have disposed of this Raven
|
||||||
|
public bool _isDisposed = false;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Dispose of this FileHandle's resources responsibly.
|
||||||
|
/// </summary>
|
||||||
|
private void Dispose(bool disposing) {
|
||||||
|
if (!_isDisposed) {
|
||||||
|
if (disposing) {
|
||||||
|
_path = null;
|
||||||
|
}
|
||||||
|
if ( _dirHandle != null) {
|
||||||
|
_dirHandle.Dispose();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this._isDisposed = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -20,9 +20,8 @@ namespace AniNIX.Shared {
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public static String Run(String command, String input) {
|
public static String Run(String command, String input) {
|
||||||
//Sanitize inputs.
|
//Sanitize inputs.
|
||||||
if (command.Contains("\'")) {
|
|
||||||
throw new Exception("Command strings cannot include \'.");
|
command = command.Replace("\\'","'").Replace("'","\\'");
|
||||||
}
|
|
||||||
|
|
||||||
//Create process.
|
//Create process.
|
||||||
Process proc = new Process();
|
Process proc = new Process();
|
||||||
|
103
CSharp/FileHandle.csharp
Normal file
103
CSharp/FileHandle.csharp
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
using System;
|
||||||
|
using System.IO;
|
||||||
|
using System.Text;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace AniNIX.Shared {
|
||||||
|
|
||||||
|
public class FileHandle : IDisposable {
|
||||||
|
|
||||||
|
//Private variables
|
||||||
|
private StreamReader _fileHandle = null;
|
||||||
|
private String _path = null;
|
||||||
|
private String _directory = null;
|
||||||
|
private String _file = null;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Create an object to bundle my usual file operations.
|
||||||
|
/// <summary>
|
||||||
|
public FileHandle(String path) {
|
||||||
|
this._path = path;
|
||||||
|
this._directory = Path.GetDirectoryName(path);
|
||||||
|
this._file = Path.GetFileName(path);
|
||||||
|
this.Reset();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Read the next line. If already reached EOF, block until line is added.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>Next line</returns>
|
||||||
|
public String NextLine() {
|
||||||
|
String nextLine = _fileHandle.ReadLine();
|
||||||
|
if (nextLine != null) {
|
||||||
|
return nextLine;
|
||||||
|
} else {
|
||||||
|
FileSystemWatcher fsw = new FileSystemWatcher(_directory);
|
||||||
|
fsw.Path = _directory;
|
||||||
|
fsw.Filter = _file;
|
||||||
|
fsw.NotifyFilter = NotifyFilters.LastWrite;
|
||||||
|
fsw.WaitForChanged(WatcherChangeTypes.Changed);
|
||||||
|
return _fileHandle.ReadLine();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Read all contents of the file.
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>File contents</returns>
|
||||||
|
public String ReadAll() {
|
||||||
|
return _fileHandle.ReadToEnd();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Close the old handle, if applicable, and open new one.
|
||||||
|
/// </summary>
|
||||||
|
public void Reset() {
|
||||||
|
if (this._fileHandle != null) {
|
||||||
|
this._fileHandle.Close();
|
||||||
|
this._fileHandle.Dispose();
|
||||||
|
}
|
||||||
|
this._fileHandle = new StreamReader(_path);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* IDisposable */
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clean up this FileStream, implementing IDisposable
|
||||||
|
/// </summary>
|
||||||
|
public void Dispose() {
|
||||||
|
this.Dispose(true);
|
||||||
|
GC.SuppressFinalize(this);
|
||||||
|
}
|
||||||
|
/// <summary>
|
||||||
|
/// Force the GarbageCollector to Dispose if programmer does not
|
||||||
|
/// </summary>
|
||||||
|
~FileHandle() {
|
||||||
|
Dispose(false);
|
||||||
|
ReportMessage.Log(Verbosity.Error,"Programmer forgot to dispose of FileHandle. Marking for Garbage Collector");
|
||||||
|
}
|
||||||
|
|
||||||
|
// This bool indicates whether we have disposed of this Raven
|
||||||
|
public bool _isDisposed = false;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Dispose of this FileHandle's resources responsibly.
|
||||||
|
/// </summary>
|
||||||
|
private void Dispose(bool disposing) {
|
||||||
|
if (!_isDisposed) {
|
||||||
|
if (disposing) {
|
||||||
|
_path = null;
|
||||||
|
_file = null;
|
||||||
|
_directory = null;
|
||||||
|
}
|
||||||
|
if ( _fileHandle != null) {
|
||||||
|
_fileHandle.Close();
|
||||||
|
_fileHandle.Dispose();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this._isDisposed = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -26,15 +26,7 @@ namespace AniNIX.Shared {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ReportMessage.verbosity == Verbosity.Quiet) {
|
if ( level <= ReportMessage.verbosity) {
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (level == Verbosity.Always
|
|
||||||
|| (ReportMessage.verbosity == Verbosity.Verbose && level == Verbosity.Verbose)
|
|
||||||
|| (ReportMessage.verbosity == Verbosity.VeryVerbose && (level == Verbosity.Verbose || level == Verbosity.VeryVerbose))
|
|
||||||
|| (ReportMessage.verbosity == Verbosity.Explicit && (level == Verbosity.Verbose || level == Verbosity.VeryVerbose || level == Verbosity.Explicit))
|
|
||||||
) {
|
|
||||||
Console.WriteLine(message);
|
Console.WriteLine(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user