Shows how to use WasModified to avoid an expensive operation, like saving to a file, if no changes were made during a data sanitization process.

ID: 1151

				
					using uCalcSoftware;

var uc = new uCalc();
var sanitizer = new uCalc.Transformer();
sanitizer.FromTo("error", "ERROR");

// Simulate processing multiple logs
string log1 = "status: ok";
string log2 = "status: error";

Console.WriteLine("--- Processing Log 1 ---");
sanitizer.Text = log1;
sanitizer.Transform();
if (sanitizer.WasModified) {
   Console.WriteLine("Change detected. Saving updated log...");
   // SaveToFile(sanitizer.GetText());
} else {
   Console.WriteLine("No changes. Skipping save.");
}

Console.WriteLine("");
Console.WriteLine("--- Processing Log 2 ---");
sanitizer.Text = log2;
sanitizer.Transform();
if (sanitizer.WasModified) {
   Console.WriteLine("Change detected. Saving updated log...");
   // SaveToFile(sanitizer.GetText());
   Console.WriteLine($"Updated log: {sanitizer.Text}");
} else {
   Console.WriteLine("No changes. Skipping save.");
}
				
			
--- Processing Log 1 ---
No changes. Skipping save.

--- Processing Log 2 ---
Change detected. Saving updated log...
Updated log: status: ERROR
				
					#include <iostream>
#include "uCalc.h"

using namespace std;
using namespace uCalcSoftware;

int main() {
   uCalc uc;
   uCalc::Transformer sanitizer;
   sanitizer.FromTo("error", "ERROR");

   // Simulate processing multiple logs
   string log1 = "status: ok";
   string log2 = "status: error";

   cout << "--- Processing Log 1 ---" << endl;
   sanitizer.Text(log1);
   sanitizer.Transform();
   if (sanitizer.WasModified()) {
      cout << "Change detected. Saving updated log..." << endl;
      // SaveToFile(sanitizer.GetText());
   } else {
      cout << "No changes. Skipping save." << endl;
   }

   cout << "" << endl;
   cout << "--- Processing Log 2 ---" << endl;
   sanitizer.Text(log2);
   sanitizer.Transform();
   if (sanitizer.WasModified()) {
      cout << "Change detected. Saving updated log..." << endl;
      // SaveToFile(sanitizer.GetText());
      cout << "Updated log: " << sanitizer.Text() << endl;
   } else {
      cout << "No changes. Skipping save." << endl;
   }
}
				
			
--- Processing Log 1 ---
No changes. Skipping save.

--- Processing Log 2 ---
Change detected. Saving updated log...
Updated log: status: ERROR
				
					Imports System
Imports uCalcSoftware
Public Module Program
   Public Sub Main()
      Dim uc As New uCalc()
      Dim sanitizer As New uCalc.Transformer()
      sanitizer.FromTo("error", "ERROR")
      
      '// Simulate processing multiple logs
      Dim log1 As String = "status: ok"
      Dim log2 As String = "status: error"
      
      Console.WriteLine("--- Processing Log 1 ---")
      sanitizer.Text = log1
      sanitizer.Transform()
      If sanitizer.WasModified Then
         Console.WriteLine("Change detected. Saving updated log...")
         '// SaveToFile(sanitizer.GetText());
      Else
         Console.WriteLine("No changes. Skipping save.")
      End If
      
      Console.WriteLine("")
      Console.WriteLine("--- Processing Log 2 ---")
      sanitizer.Text = log2
      sanitizer.Transform()
      If sanitizer.WasModified Then
         Console.WriteLine("Change detected. Saving updated log...")
         '// SaveToFile(sanitizer.GetText());
         Console.WriteLine($"Updated log: {sanitizer.Text}")
      Else
         Console.WriteLine("No changes. Skipping save.")
      End If
   End Sub
End Module
				
			
--- Processing Log 1 ---
No changes. Skipping save.

--- Processing Log 2 ---
Change detected. Saving updated log...
Updated log: status: ERROR