Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
FtsFile.cs
1using System;
2using System.Collections.Generic;
3using System.IO;
4using System.Threading.Tasks;
13
15{
20 {
29 public FtsFile(ScriptNode IndexCollection, ScriptNode FileName,
31 : base(new ScriptNode[] { IndexCollection, FileName }, argumentTypes2Scalar,
33 {
34 }
35
39 public override string FunctionName => nameof(FtsFile);
40
44 public override string[] DefaultArgumentNames => new string[] { "IndexCollection", "FileName" };
45
50 public override bool IsAsynchronous => true;
51
59 {
60 return this.EvaluateAsync(Arguments, Variables).Result;
61 }
62
69 public override async Task<IElement> EvaluateAsync(IElement[] Arguments, Variables Variables)
70 {
71 int i = 0;
72 string Index = Arguments[i++].AssociatedObjectValue?.ToString() ?? string.Empty;
73 string FileName = Arguments[i++].AssociatedObjectValue?.ToString() ?? string.Empty;
74
75 if (string.IsNullOrEmpty(FileName))
76 throw new ScriptRuntimeException("Empty filename.", this);
77
78 bool Result = await Waher.Persistence.FullTextSearch.Search.IndexFile(Index, FileName);
79
80 return Result ? BooleanValue.True : BooleanValue.False;
81 }
82 }
83}
Static class for access to Full-Text-Search
Definition: Search.cs:68
static Task< bool > IndexFile(string IndexCollection, string FileName)
Indexes or reindexes a file.
Definition: Search.cs:338
Class managing a script expression.
Definition: Expression.cs:39
FtsFile(ScriptNode IndexCollection, ScriptNode FileName, int Start, int Length, Expression Expression)
Indexes a specific file.
Definition: FtsFile.cs:29
override string[] DefaultArgumentNames
Default Argument names
Definition: FtsFile.cs:44
override string FunctionName
Name of the function
Definition: FtsFile.cs:39
override async Task< IElement > EvaluateAsync(IElement[] Arguments, Variables Variables)
Evaluates the function.
Definition: FtsFile.cs:69
override bool IsAsynchronous
If the node (or its decendants) include asynchronous evaluation. Asynchronous nodes should be evaluat...
Definition: FtsFile.cs:50
override IElement Evaluate(IElement[] Arguments, Variables Variables)
Evaluates the function.
Definition: FtsFile.cs:58
Base class for multivariate funcions.
ScriptNode[] Arguments
Function arguments.
static readonly ArgumentType[] argumentTypes2Scalar
Two scalar parameters.
Base class for all nodes in a parsed script tree.
Definition: ScriptNode.cs:69
int Length
Length of expression covered by node.
Definition: ScriptNode.cs:101
override string ToString()
Definition: ScriptNode.cs:359
Expression Expression
Expression of which the node is a part.
Definition: ScriptNode.cs:177
int Start
Start position in script expression.
Definition: ScriptNode.cs:92
Boolean-valued number.
Definition: BooleanValue.cs:12
static readonly BooleanValue False
Constant false value.
Collection of variables.
Definition: Variables.cs:25
Basic interface for all types of elements.
Definition: IElement.cs:20
Definition: App.xaml.cs:4