public boolean hasSuccesses() { return !this.getMetadataValidationSuccesses().isEmpty(); }
public boolean hasWarnings() { return !this.getMetadataValidationWarnings().isEmpty(); }
if (validationEvent.getType().equals(MetadataValidationEvent.ValidationType.FAILURE)) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(validationEvent.getMessage(), validationEvent.getValidationFailure()); result.addMetadataValidationError(eventMessage); result.setValidationPerformed(true); } else if (validationEvent.getType().equals(MetadataValidationEvent.ValidationType.NOOP)) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(validationEvent.getMessage(), validationEvent.getValidationFailure()); result.addMetadataValidationWarning(eventMessage); } else { MetadataEventMessage eventMessage = result.new MetadataEventMessage(validationEvent.getMessage(), ""); result.addMetadataValidationSuccess(eventMessage); result.setValidationPerformed(true); if (extractionEvent.getType().equals(MetadataExtractionEvent.ExtractionEventType.ERROR)) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(extractionEvent.getMessage(), ""); result.addMetadataExtractionError(eventMessage); } else { MetadataEventMessage eventMessage = result.new MetadataEventMessage(extractionEvent.getMessage(), ""); result.addMetadataExtractionSuccess(eventMessage); if (parsingEvent.getSeverity() == MetadataXmlParsingEvent.SEVERITY.ERROR || parsingEvent.getSeverity() == MetadataXmlParsingEvent.SEVERITY.FATAL) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(parsingEvent.getMessage(), parsingEvent.toString()); result.addMetadataValidationError(eventMessage); result.setValidationPerformed(true); } else if (parsingEvent.getSeverity() == MetadataXmlParsingEvent.SEVERITY.WARN) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(parsingEvent.getMessage(), parsingEvent.toString()); result.addMetadataValidationWarning(eventMessage); result.setValidationPerformed(true);
if (result.getValidationPeformed()) { if (result.getMetadataValidationSuccesses().size() > 0) { StringBuilder details = new StringBuilder(); for (MetadataResult.MetadataEventMessage successMessage : result.getMetadataValidationSuccesses()) { details.append(successMessage.getMessage()); details.append("\n"); if (result.getMetadataValidationErrors().size() > 0) { StringBuilder details = new StringBuilder(); details.append("Validation Errors:"); for (MetadataResult.MetadataEventMessage errorMessage : result.getMetadataValidationErrors()) { details.append("\n"); details.append(errorMessage.getMessage()); if (result.getMetadataValidationWarnings().size() > 0) { details.append("\n\n"); details.append("Validation Warnings:"); for (MetadataResult.MetadataEventMessage warningMessage : result.getMetadataValidationWarnings()) { details.append("\n"); details.append(warningMessage.getMessage());
@Override public MetadataResult extractMetadata(BusinessObject businessObject) { result = new MetadataResult(); MetadataHandlingEventManager.getInstance().registerListener(this); Set<AttributeSet> attributeSets = metadataHandlingService.extractMetadata(businessObject); result.setAttributeSets(attributeSets); Collection<BusinessObject> childBusinessObjects = getChildBusinessObjects(businessObject); for (BusinessObject childBusinessObject : childBusinessObjects) { attributeSets = metadataHandlingService.extractMetadata(childBusinessObject); result.getAttributeSets().addAll(attributeSets); } MetadataHandlingEventManager.getInstance().unRegisterListener(this); return result; }
@Override public MetadataResult validateMetadata(MetadataFile metadataFile, DcsMetadataFormat metadataFormat) throws BizInternalException { result = new MetadataResult(); MetadataHandlingEventManager eventManager = MetadataHandlingEventManager.getInstance(); eventManager.registerListener(this); if (result.getMetadataValidationErrors().isEmpty()) { final String message = String.format("Validation succeeded: validation of an XML instance document with format id %s succeeded against the " + "schema %s obtained from %s", metadataFormat.getId(), result.addMetadataValidationSuccess(eventMessage);
@Override public MetadataResult validateMetadataSchema(URL schemaUrl) throws IOException { result = new MetadataResult(); MetadataHandlingEventManager.getInstance().registerListener(this); FileMetadataInstance fileInstance = new FileMetadataInstance(MetadataFormatId.XSD_XML_FORMAT_ID, schemaUrl); // final String baseUrl = schemaUrl.toString().substring(0, schemaUrl.toString().lastIndexOf("/")+1); final String baseUrl = parseBaseUrl(schemaUrl); metadataValidationService.validate("", fileInstance, new URL(baseUrl)); MetadataHandlingEventManager.getInstance().unRegisterListener(this); return result; }
@Override public void execute(String depositId, IngestWorkflowState state) throws StatefulIngestServiceException { for (DcsEvent event : state.getEventManager().getEvents(depositId, Package.Events.METADATA_FILE_VALIDATED)) { if (!event.getTargets().isEmpty()) { if (event.getOutcome().equals(Package.Outcomes.SUCCESS)) { MetadataFile file = (MetadataFile)state.getBusinessObjectManager().get(event.getTargets().iterator().next().getRef()); MetadataResult result = metadataBizService.extractMetadata(file); String outcome = Package.Outcomes.SUCCESS; String extractionMessages = ""; if (!result.getMetadataExtractionErrors().isEmpty()) { outcome = Package.Outcomes.FAILURE; for (MetadataEventMessage error : result.getMetadataExtractionErrors()) { extractionMessages += error.getMessage() + "<\br>"; } } // Send the event, using the outcome and any error/warning messages. DcsEvent extractionEvent = state.getEventManager().newEvent(Package.Events.METADATA_FILE_EXTRACTION); extractionEvent.setOutcome(outcome); extractionEvent.setDetail(extractionMessages); extractionEvent.addTargets(new DcsEntityReference(file.getId())); state.getEventManager().addEvent(depositId, extractionEvent); } } } } }
if (validationEvent.getType().equals(MetadataValidationEvent.ValidationType.FAILURE)) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(validationEvent.getMessage(), validationEvent.getValidationFailure()); result.addMetadataValidationError(eventMessage); result.setValidationPerformed(true); } else if (validationEvent.getType().equals(MetadataValidationEvent.ValidationType.NOOP)) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(validationEvent.getMessage(), validationEvent.getValidationFailure()); result.addMetadataValidationWarning(eventMessage); } else { MetadataEventMessage eventMessage = result.new MetadataEventMessage(validationEvent.getMessage(), ""); result.addMetadataValidationSuccess(eventMessage); result.setValidationPerformed(true); if (extractionEvent.getType().equals(MetadataExtractionEvent.ExtractionEventType.ERROR)) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(extractionEvent.getMessage(), ""); result.addMetadataExtractionError(eventMessage); } else { MetadataEventMessage eventMessage = result.new MetadataEventMessage(extractionEvent.getMessage(), ""); result.addMetadataExtractionSuccess(eventMessage); if (parsingEvent.getSeverity() == MetadataXmlParsingEvent.SEVERITY.ERROR || parsingEvent.getSeverity() == MetadataXmlParsingEvent.SEVERITY.FATAL) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(parsingEvent.getMessage(), parsingEvent.toString()); result.addMetadataValidationError(eventMessage); result.setValidationPerformed(true); } else if (parsingEvent.getSeverity() == MetadataXmlParsingEvent.SEVERITY.WARN) { MetadataEventMessage eventMessage = result.new MetadataEventMessage(parsingEvent.getMessage(), parsingEvent.toString()); result.addMetadataValidationWarning(eventMessage); result.setValidationPerformed(true);
if (result.getValidationPeformed()) { if (result.getMetadataValidationSuccesses().size() > 0) { StringBuilder details = new StringBuilder(); for (MetadataResult.MetadataEventMessage successMessage : result.getMetadataValidationSuccesses()) { details.append(successMessage.getMessage()); details.append("\n"); if (result.getMetadataValidationErrors().size() > 0) { StringBuilder details = new StringBuilder(); details.append("Validation Errors:"); for (MetadataResult.MetadataEventMessage errorMessage : result.getMetadataValidationErrors()) { details.append("\n"); details.append(errorMessage.getMessage()); if (result.getMetadataValidationWarnings().size() > 0) { details.append("\n\n"); details.append("Validation Warnings:"); for (MetadataResult.MetadataEventMessage warningMessage : result.getMetadataValidationWarnings()) { details.append("\n"); details.append(warningMessage.getMessage());
@Override public MetadataResult extractMetadata(BusinessObject businessObject) { result = new MetadataResult(); MetadataHandlingEventManager.getInstance().registerListener(this); Set<AttributeSet> attributeSets = metadataHandlingService.extractMetadata(businessObject); result.setAttributeSets(attributeSets); Collection<BusinessObject> childBusinessObjects = getChildBusinessObjects(businessObject); for (BusinessObject childBusinessObject : childBusinessObjects) { attributeSets = metadataHandlingService.extractMetadata(childBusinessObject); result.getAttributeSets().addAll(attributeSets); } MetadataHandlingEventManager.getInstance().unRegisterListener(this); return result; }
@Override public MetadataResult validateMetadata(MetadataFile metadataFile, DcsMetadataFormat metadataFormat) throws BizInternalException { result = new MetadataResult(); MetadataHandlingEventManager eventManager = MetadataHandlingEventManager.getInstance(); eventManager.registerListener(this); if (result.getMetadataValidationErrors().isEmpty()) { final String message = String.format("Validation succeeded: validation of an XML instance document with format id %s succeeded against the " + "schema %s obtained from %s", metadataFormat.getId(), result.addMetadataValidationSuccess(eventMessage);
@Override public MetadataResult validateMetadataSchema(URL schemaUrl) throws IOException { result = new MetadataResult(); MetadataHandlingEventManager.getInstance().registerListener(this); FileMetadataInstance fileInstance = new FileMetadataInstance(MetadataFormatId.XSD_XML_FORMAT_ID, schemaUrl); // final String baseUrl = schemaUrl.toString().substring(0, schemaUrl.toString().lastIndexOf("/")+1); final String baseUrl = parseBaseUrl(schemaUrl); metadataValidationService.validate("", fileInstance, new URL(baseUrl)); MetadataHandlingEventManager.getInstance().unRegisterListener(this); return result; }
@Override public void execute(String depositId, IngestWorkflowState state) throws StatefulIngestServiceException { for (DcsEvent event : state.getEventManager().getEvents(depositId, Package.Events.METADATA_FILE_VALIDATED)) { if (!event.getTargets().isEmpty()) { if (event.getOutcome().equals(Package.Outcomes.SUCCESS)) { MetadataFile file = (MetadataFile)state.getBusinessObjectManager().get(event.getTargets().iterator().next().getRef()); MetadataResult result = metadataBizService.extractMetadata(file); String outcome = Package.Outcomes.SUCCESS; String extractionMessages = ""; if (!result.getMetadataExtractionErrors().isEmpty()) { outcome = Package.Outcomes.FAILURE; for (MetadataEventMessage error : result.getMetadataExtractionErrors()) { extractionMessages += error.getMessage() + "<\br>"; } } // Send the event, using the outcome and any error/warning messages. DcsEvent extractionEvent = state.getEventManager().newEvent(Package.Events.METADATA_FILE_EXTRACTION); extractionEvent.setOutcome(outcome); extractionEvent.setDetail(extractionMessages); extractionEvent.addTargets(new DcsEntityReference(file.getId())); state.getEventManager().addEvent(depositId, extractionEvent); } } } } }
@Override public MetadataResult validateAndExtractMetadata(BusinessObject businessObject, String parentId) { result = new MetadataResult(); MetadataHandlingEventManager.getInstance().registerListener(this); Set<AttributeSet> attributeSets = metadataHandlingService.validateAndExtractMetadata(businessObject, parentId, null); result.setAttributeSets(attributeSets); Collection<BusinessObject> childBusinessObjects = getChildBusinessObjects(businessObject); for (BusinessObject childBusinessObject : childBusinessObjects) { attributeSets = metadataHandlingService.validateAndExtractMetadata(childBusinessObject, businessObject.getId(), null); result.getAttributeSets().addAll(attributeSets); } MetadataHandlingEventManager.getInstance().unRegisterListener(this); return result; }
public boolean hasWarnings() { return !this.getMetadataValidationWarnings().isEmpty(); }
public boolean hasSuccesses() { return !this.getMetadataValidationSuccesses().isEmpty(); }
@Override public MetadataResult validateMetadata(BusinessObject businessObject) { result = new MetadataResult(); MetadataHandlingEventManager.getInstance().registerListener(this); metadataHandlingService.validateMetadata(businessObject, null); Collection<BusinessObject> childBusinessObjects = getChildBusinessObjects(businessObject); for (BusinessObject childBusinessObject : childBusinessObjects) { metadataHandlingService.validateMetadata(childBusinessObject, null); } MetadataHandlingEventManager.getInstance().unRegisterListener(this); return result; }
@Override public MetadataResult validateAndExtractMetadata(BusinessObject businessObject, String parentId) { result = new MetadataResult(); MetadataHandlingEventManager.getInstance().registerListener(this); Set<AttributeSet> attributeSets = metadataHandlingService.validateAndExtractMetadata(businessObject, parentId, null); result.setAttributeSets(attributeSets); Collection<BusinessObject> childBusinessObjects = getChildBusinessObjects(businessObject); for (BusinessObject childBusinessObject : childBusinessObjects) { attributeSets = metadataHandlingService.validateAndExtractMetadata(childBusinessObject, businessObject.getId(), null); result.getAttributeSets().addAll(attributeSets); } MetadataHandlingEventManager.getInstance().unRegisterListener(this); return result; }
@Override public MetadataResult validateMetadata(BusinessObject businessObject) { result = new MetadataResult(); MetadataHandlingEventManager.getInstance().registerListener(this); metadataHandlingService.validateMetadata(businessObject, null); Collection<BusinessObject> childBusinessObjects = getChildBusinessObjects(businessObject); for (BusinessObject childBusinessObject : childBusinessObjects) { metadataHandlingService.validateMetadata(childBusinessObject, null); } MetadataHandlingEventManager.getInstance().unRegisterListener(this); return result; }