if ( this.isSimpleString ) { message = BaseMessages.getString( PKG, "ExportFeedback.Message.Simple", sdf.format( this.getTime() ), this .getItemName() ); sb.append( message ); sb.append( Const.CR ); BaseMessages.getString( PKG, "ExportFeedback.Message.Main", sdf.format( this.getTime() ), this.getStatus() .getStatus(), this.getItemName(), this.getItemPath() ); sb.append( message ); sb.append( Const.CR ); if ( getStatus().equals( ExportFeedback.Status.REJECTED ) ) { List<ImportValidationFeedback> fList = this.getResult(); for ( ImportValidationFeedback res : fList ) { message = BaseMessages.getString( PKG, "ExportFeedback.Message.RuleViolated", res.getComment() );
/** * * @param list * @param fail * @return */ private String getExportResultDetails( List<ExportFeedback> list, boolean fail ) { StringBuilder sb = new StringBuilder(); for ( ExportFeedback feedback : list ) { if ( fail && ( feedback.getResult() == null || feedback.getResult().isEmpty() ) ) { if ( feedback.isSimpleString() ) { sb.append( feedback.toString() ); } // we do write only not success results in this case. continue; } sb.append( feedback.toString() ); } return sb.toString(); }
ExportFeedback fb = new ExportFeedback(); fb.setType( ExportFeedback.Type.JOB ); fb.setItemName( jobMeta.getName() ); fb.setItemPath( dirPath ); ExportFeedback.Status status = errors.isEmpty() ? ExportFeedback.Status.EXPORTED : ExportFeedback.Status.REJECTED; fb.setStatus( status ); fb.setResult( errors ); this.feedbackList.add( fb );
/** * Test that we can have some feedback on rule violations * * @throws KettleException */ @Test public void testExportAllRulesViolation() throws Exception { RepositoryExporter exporter = new RepositoryExporter( repository ); exporter.setImportRulesToValidate( getImportRules() ); List<ExportFeedback> feedback = exporter.exportAllObjectsWithFeedback( null, xmlFileName, root, RepositoryExporter.ExportType.ALL.toString() ); Assert.assertEquals( "Feedback contains all items recorded", 3, feedback.size() ); for ( ExportFeedback feed : feedback ) { if ( feed.isSimpleString() ) { continue; } Assert.assertEquals( "all items rejected: " + feed.toString(), ExportFeedback.Status.REJECTED, feed.getStatus() ); } Assert.assertTrue( "Export file is deleted", !fileObject.exists() ); }
/** * Test that jobs can be exported with feedback * * @throws Exception */ @Test public void testExportJobsWithFeedback() throws Exception { RepositoryExporter exporter = new RepositoryExporter( repository ); List<ExportFeedback> feedback = exporter.exportAllObjectsWithFeedback( null, xmlFileName, root, RepositoryExporter.ExportType.JOBS.toString() ); Assert.assertEquals( "Feedback contains all items recorded", 2, feedback.size() ); ExportFeedback fb = feedback.get( 1 ); Assert.assertEquals( "Job1 was exproted", "job1", fb.getItemName() ); Assert.assertEquals( "Repository path for Job1 is specified", "path", fb.getItemPath() ); String res = this.validateXmlFile( fileObject.getContent().getInputStream(), "//job1" ); Assert.assertEquals( "Export xml contains exported job xml", "found", res ); }
ExportFeedback feed = new ExportFeedback(); feed.setItemName( BaseMessages.getString( PKG, "Repository.Exporter.Feedback.CreateExportFile", xmlFilename ) ); feed.setSimpleString( true ); this.feedbackList.add( feed );
ExportFeedback fb = new ExportFeedback(); fb.setType( ExportFeedback.Type.TRANSFORMATION ); fb.setItemName( transMeta.getName() ); fb.setItemPath( dirPath ); ExportFeedback.Status status = errors.isEmpty() ? ExportFeedback.Status.EXPORTED : ExportFeedback.Status.REJECTED; fb.setStatus( status ); fb.setResult( errors ); this.feedbackList.add( fb );
/** * Test that transformations can be exported with feedback * * @throws Exception */ @Test public void testExportTransformationsWithFeedback() throws Exception { RepositoryExporter exporter = new RepositoryExporter( repository ); List<ExportFeedback> feedback = exporter.exportAllObjectsWithFeedback( null, xmlFileName, root, RepositoryExporter.ExportType.TRANS.toString() ); Assert.assertEquals( "Feedback contains all items recorded", 2, feedback.size() ); ExportFeedback fb = feedback.get( 1 ); Assert.assertEquals( "Job1 was exproted", "trans1", fb.getItemName() ); Assert.assertEquals( "Repository path for Job1 is specified", "path", fb.getItemPath() ); String res = this.validateXmlFile( fileObject.getContent().getInputStream(), "//trans1" ); Assert.assertEquals( "Export xml contains exported job xml", "found", res ); }