←Select platform

ActionElementSet Class

Summary

Collection of ActionElement objects.

Syntax
C#
C++/CLI
Python
public class ActionElementSet 
public: 
   ref class ActionElementSet 
class ActionElementSet: 
Remarks

This set is required in order to have the DocumentAnalyzer run the actions automatically after analysis is completed.

Example

This example shows how to define and run a custom action (using ActionElementSet).

C#
Java
using Leadtools; 
using Leadtools.Document.Analytics; 
using Leadtools.Document; 
using Leadtools.Document.Unstructured; 
 
 
 
public class RedactAction : ActionElement 
{ 
   public RedactAction() 
   { 
      Id = "REDACT_DOCUMENT"; 
   } 
 
   public override void Run(LEADDocument document, IList<ElementSetResult> results) 
   { 
      //process(document, results.Items); 
      //save(document); 
   }          
} 
 
public void Sample() 
{ 
   var leadDoc = DocumentFactory.LoadFromFile(@"c:\test.docx", new LoadDocumentOptions()); 
   var analyzer = new DocumentAnalyzer(); 
   var elem = new UnstructuredElementSet() { Name = "Test", Element = CreateElement() }; 
   var actions = new ActionElementSet(); 
   actions.ActionElements.Add(new RedactAction()); 
 
   var runOptions = new DocumentAnalyzerRunOptions() 
   {             
      Actions = actions, 
   }; 
   runOptions.Elements.Add(elem); 
   analyzer.Run(leadDoc, runOptions); 
} 
 
private static GroupElement CreateElement() 
{ 
   GroupElement mainGroup = new GroupElement(); 
   mainGroup.Id = "ALL"; 
   mainGroup.Settings.SetValue(SettingsManager.Name, "all"); 
   mainGroup.Settings.SetValue(SettingsManager.ReportInElementResult, "true"); 
   mainGroup.Settings.SetValue(SettingsManager.Description, "Rules"); 
   mainGroup.Settings.SetValue(SettingsManager.Language, "en"); 
                   
   return mainGroup; 
} 
 
import static org.junit.Assert.assertTrue; 
 
import java.io.File; 
import java.io.IOException; 
import java.util.List; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
 
import leadtools.document.*; 
import leadtools.document.analytics.*; 
import leadtools.document.unstructured.*; 
 
 
public class RedactAction extends ActionElement { 
   private String Id; 
 
   public RedactAction() { 
      Id = "REDACT_DOCUMENT"; 
   } 
 
   @Override 
   public void run(LEADDocument document, List<ElementSetResult> results) { 
      System.out.println("Process hit"); 
      assertTrue(document != null); 
      // process(document, results.Items); 
      // save(document); 
   } 
} 
 
public void sample() { 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
 
   LEADDocument leadDoc = DocumentFactory.loadFromFile(combine(LEAD_VARS_IMAGES_DIR, "LEADTOOLSEditor.docx"), 
         new LoadDocumentOptions()); 
   DocumentAnalyzer analyzer = new DocumentAnalyzer(); 
   UnstructuredElementSet elem = new UnstructuredElementSet(); 
   elem.setName("Test"); 
   elem.setElement(createElement()); 
   ActionElementSet actions = new ActionElementSet(); 
   actions.getActionElements().add(new RedactAction()); 
 
   DocumentAnalyzerRunOptions runOptions = new DocumentAnalyzerRunOptions(); 
 
   runOptions.setActions(actions); 
 
   runOptions.getElements().add(elem); 
   analyzer.run(leadDoc, runOptions); 
} 
 
private static GroupElement createElement() { 
   GroupElement mainGroup = new GroupElement(); 
   mainGroup.setId("ALL"); 
   mainGroup.getSettings().setValue(SettingsManager.NAME, "all"); 
   mainGroup.getSettings().setValue(SettingsManager.REPORT_IN_ELEMENT_RESULT, "true"); 
   mainGroup.getSettings().setValue(SettingsManager.DESCRIPTION, "Rules"); 
   mainGroup.getSettings().setValue(SettingsManager.LANGUAGE, "en"); 
 
   return mainGroup; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document.Analytics Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.