public ValidationResult CheckValidationState(string uuid) { if (!string.IsNullOrWhiteSpace(uuid)) { string inspireId = GetInspireId(uuid); if (!string.IsNullOrWhiteSpace(inspireId)) { Log.Info($"Check validation state for metadata. Inspire id: {inspireId}"); string inspireValidationResponse = _httpRequestExecutor.GetRequest(_inspireUrl + _validationStatusEndpoint + inspireId, "application/xml", ""); XDocument xmlDoc = XDocument.Parse(inspireValidationResponse); InspireValidationResponseParser parser = new InspireValidationResponseParser(xmlDoc); return(parser.ParseValidationResponseWithCompletenessIndicator()); } else { throw new Exception($"Cannot retrieve inspire id for {uuid}"); } } else { throw new Exception("Metadata id missing."); } }
public ValidationResult Validate(MetadataEntry metadataEntry, MD_Metadata_Type metadata, string rawXmlProcessed) { ValidationResult validationResult = new ValidationResult(); //if (metadataEntry.HasResourceType(ResourceTypeSoftware)) //{ // CheckDistributionUrl(metadata, validationResult); //} //else //{ string response = _httpRequestExecutor.GetRequest(EndpointValidatorInMetadataEditor + metadataEntry.Uuid, ContentTypeXml, ContentTypeXml); if (!string.IsNullOrWhiteSpace(response)) { External.MetadataEditor.MetadataEntry externalMetadataEntry = SerializeUtil.DeserializeFromString <External.MetadataEditor.MetadataEntry>(response); validationResult.Initialize(externalMetadataEntry); validationResult.Timestamp = DateTime.Now; } //} return(validationResult); }