mirror of
https://github.com/revenz/FileFlowsPlugins.git
synced 2025-12-31 15:49:31 -06:00
41 lines
1.1 KiB
C#
41 lines
1.1 KiB
C#
namespace FileFlows.BasicNodes.File
|
|
{
|
|
using System.ComponentModel;
|
|
using FileFlows.Plugin;
|
|
using FileFlows.Plugin.Attributes;
|
|
|
|
public class FileSize : Node
|
|
{
|
|
public override int Inputs => 1;
|
|
public override int Outputs => 2;
|
|
public override FlowElementType Type => FlowElementType.Logic;
|
|
public override string Icon => "fas fa-balance-scale-right";
|
|
|
|
|
|
[NumberInt(1)]
|
|
public int Lower { get; set; }
|
|
|
|
[NumberInt(2)]
|
|
public int Upper { get; set; }
|
|
|
|
public override int Execute(NodeParameters args)
|
|
{
|
|
var fi = new FileInfo(args.WorkingFile);
|
|
if (fi.Exists == false) {
|
|
args.Logger.ELog("File Does not exist: " + args.WorkingFile);
|
|
return -1;
|
|
}
|
|
|
|
return TestSize(args, fi.Length);
|
|
}
|
|
|
|
public int TestSize(NodeParameters args, long size)
|
|
{
|
|
if (size < (((long)Lower) * 1024 * 1024))
|
|
return 2;
|
|
if (Upper > 0 && size > (((long)Upper) * 1024 * 1024))
|
|
return 2;
|
|
return 1;
|
|
}
|
|
}
|
|
} |