public void AddMetadata(FieldContext fc)
 {
     MetadataContext mc = new MetadataContext(fc.FieldId, fc.FieldInfo.FieldName, fc.Values[0].TextContext.Text, fc.Document.DocumentId);
     List<string> listOfMetadataHashId = GetListOfMetadataHashId();
     string hash = CalculateMD5Hash(mc.Id);
     if (!listOfMetadataHashId.Contains(hash + ".json"))
     {
         listOfMetadata.Add(mc);
         WriteJsonFile(listOfMetadata);
     }
 }
 private void VerifyIfContextContainSearchString(string searchString, List<string> ListOfContextsThatContainSearchString, MetadataContext item)
 {
     if ((item.Metadata).Contains(searchString))
     {
         string hash = CalculateMD5Hash(item.Id);
         ListOfContextsThatContainSearchString.Add(GetFilePathUsingFullNameOfFile(hash));
     }
 }
 private List<MetadataContext> CreateListOfMetadata(IEnumerable<FieldContext> extractionContext)
 {
     foreach (var item in extractionContext)
     {
         MetadataContext mc = new MetadataContext(item.FieldId, item.FieldInfo.FieldName, item.Values[0].TextContext.Text, item.Document.DocumentId);
         listOfMetadata.Add(mc);
     }
     return listOfMetadata;
 }
 private void VerifyIfAnyFieldContextWasModified(string filePath, DateTime creationTime, DateTime writeTime, MetadataContext metadataContext)
 {
     if (creationTime < writeTime)
     {
         AddModifiedMetadata(metadataContext);
         File.SetCreationTime(filePath, writeTime);
     }
     else
     {
         AddUnmodifiedMetadata(metadataContext);
     }
 }
 private void AddUnmodifiedMetadata(MetadataContext metadataContext)
 {
     listOfMetadata.Add(metadataContext);
 }