private Result errorResult( Result result ) { result.setNrErrors( 1 ); result.setResult( false ); return result; }
/** * Execute this job entry and return the result. In this case it means, just set the result boolean in the Result * class. * * @param previousResult * The result of the previous execution * @return The Result of the execution. */ public Result execute( Result previousResult, int nr ) { Result result = previousResult; result.setNrErrors( 0 ); result.setResult( true ); return result; }
@Override public Result getResult() { Result toRet = new Result(); toRet.setNrErrors( getErrors() ); return toRet; }
public boolean evaluate( Result result ) { String Returnmessage = null; String RealMessageabort = environmentSubstitute( getMessageabort() ); try { // Return False if ( RealMessageabort == null ) { Returnmessage = BaseMessages.getString( PKG, "JobEntryAbort.Meta.CheckResult.Label" ); } else { Returnmessage = RealMessageabort; } logError( Returnmessage ); result.setNrErrors( 1 ); return false; } catch ( Exception e ) { result.setNrErrors( 1 ); logError( BaseMessages.getString( PKG, "JobEntryAbort.Meta.CheckResult.CouldNotExecute" ) + e.toString() ); return false; } }
@Override public void run() { try { Result threadResult = execute( nr + 1, newResult, nextEntry, jobEntryCopy, nextComment ); threadResults.add( threadResult ); } catch ( Throwable e ) { log.logError( Const.getStackTracker( e ) ); threadExceptions.add( new KettleException( BaseMessages.getString( PKG, "Job.Log.UnexpectedError", nextEntry.toString() ), e ) ); Result threadResult = new Result(); threadResult.setResult( false ); threadResult.setNrErrors( 1L ); threadResults.add( threadResult ); } } };
/** * Display the Message Box. */ public boolean evaluate( Result result ) { try { // default to ok // Try to display MSGBOX boolean response = true; ThreadDialogs dialogs = GUIFactory.getThreadDialogs(); if ( dialogs != null ) { response = dialogs.threadMessageBox( getRealBodyMessage() + Const.CR, getRealTitleMessage(), true, Const.INFO ); } return response; } catch ( Exception e ) { result.setNrErrors( 1 ); logError( "Couldn't display message box: " + e.toString() ); return false; } }
@Test public void testRunWithException() throws Exception { when( mockJob.isStopped() ).thenReturn( false ); when( mockJob.getParentJob() ).thenReturn( parentJob ); when( mockJob.getJobMeta() ).thenReturn( mockJobMeta ); when( parentJob.isStopped() ).thenReturn( false ); doThrow( KettleException.class ).when( mockJob ).execute( anyInt(), any( Result.class ) ); jobRunner.run(); verify( mockResult, times( 1 ) ).setNrErrors( Mockito.anyInt() ); //[PDI-14981] catch more general exception to prevent thread hanging doThrow( Exception.class ).when( mockJob ).fireJobFinishListeners(); jobRunner.run(); }
@Override public Result execute( Result previousResult, int nr ) throws KettleJobException { previousResult.setResult( false ); previousResult.setNrErrors( previousResult.getNrErrors() + 1 ); getLogChannel().logError( BaseMessages.getString( MissingEntry.class, "MissingEntry.Log.CannotRunJob" ) ); return previousResult; }
public Result execute( Result previousResult, int nr ) { Result result = previousResult; result.setResult( false ); if ( filename != null ) { String realFilename = getRealFilename(); try { FileObject file = KettleVFS.getFileObject( realFilename, this ); if ( file.exists() && file.isReadable() ) { result = executeTalenJob( file, result, nr ); } else { logDetailed( BaseMessages.getString( PKG, "JobEntryTalendJobExec.File_Does_Not_Exist", realFilename ) ); } } catch ( Exception e ) { result.setNrErrors( 1 ); logError( BaseMessages.getString( PKG, "JobEntryTalendJobExec.ERROR_0004_IO_Exception", e.getMessage() ), e ); } } else { result.setNrErrors( 1 ); logError( BaseMessages.getString( PKG, "JobEntryTalendJobExec.ERROR_0005_No_Filename_Defined" ) ); } return result; }
public Result execute( Result previousResult, int nr ) { Result result = previousResult; result.setResult( false ); result.setNrErrors( 0 ); if ( filename != null ) { //Set Embedded NamedCluter MetatStore Provider Key so that it can be passed to VFS if ( parentJobMeta.getNamedClusterEmbedManager() != null ) { parentJobMeta.getNamedClusterEmbedManager() .passEmbeddedMetastoreKey( this, parentJobMeta.getEmbeddedMetastoreProviderKey() ); } String realFilename = getRealFilename(); try { FileObject file = KettleVFS.getFileObject( realFilename, this ); if ( file.exists() && file.isReadable() ) { logDetailed( BaseMessages.getString( PKG, "JobEntryFileExists.File_Exists", realFilename ) ); result.setResult( true ); } else { logDetailed( BaseMessages.getString( PKG, "JobEntryFileExists.File_Does_Not_Exist", realFilename ) ); } } catch ( Exception e ) { result.setNrErrors( 1 ); logError( BaseMessages.getString( PKG, "JobEntryFileExists.ERROR_0004_IO_Exception", e.getMessage() ), e ); } } else { result.setNrErrors( 1 ); logError( BaseMessages.getString( PKG, "JobEntryFileExists.ERROR_0005_No_Filename_Defined" ) ); } return result; }
@Override public Result execute( Result prevResult, int nr ) throws KettleException { Result result = new Result( nr ); result.setResult( false ); logDetailed( toString(), "Start of processing" ); // String substitution.. String realCubeName = environmentSubstitute( getCubeName() ); PaloHelper database = new PaloHelper( this.getDatabaseMeta(), getLogLevel() ); try { database.connect(); database.createCube( realCubeName, dimensionNames.toArray( new String[dimensionNames.size()] ) ); result.setResult( true ); result.setNrLinesOutput( 1 ); } catch ( Exception e ) { result.setNrErrors( 1 ); e.printStackTrace(); logError( toString(), "Error processing Palo Cube Create : " + e.getMessage() ); } finally { database.disconnect(); } return result; }
public Result execute( Result previousResult, int nr ) { Result result = previousResult; result.setNrErrors( 1 ); result.setResult( false ); String hostname = getRealHostname(); int port = Const.toInt( getRealPort(), DEFAULT_PORT ); int timeoutInt = Const.toInt( getRealTimeOut(), -1 ); if ( Utils.isEmpty( hostname ) ) { // No Host was specified logError( BaseMessages.getString( PKG, "JobTelnet.SpecifyHost.Label" ) ); return result; } try { SocketUtil.connectToHost( hostname, port, timeoutInt ); if ( isDetailed() ) { logDetailed( BaseMessages.getString( PKG, "JobTelnet.OK.Label", hostname, port ) ); } result.setNrErrors( 0 ); result.setResult( true ); } catch ( Exception ex ) { logError( BaseMessages.getString( PKG, "JobTelnet.NOK.Label", hostname, String.valueOf( port ) ) ); logError( BaseMessages.getString( PKG, "JobTelnet.Error.Label" ) + ex.getMessage() ); } return result; }
@Override public Result execute( Result prev_result, int nr ) { Result result = new Result( nr ); result.setResult( false ); long filesRetrieved = 0; logDetailed( toString(), "Start of processing" ); // String substitution.. String realWildcard = environmentSubstitute( wildcard ); String realTargetDirectory = environmentSubstitute( targetDirectory ); String realSourceDirectory = environmentSubstitute( sourceDirectory ); DummyJob proc = new DummyJob( realSourceDirectory, realTargetDirectory, realWildcard ); try { filesRetrieved = proc.process(); result.setResult( true ); result.setNrFilesRetrieved( filesRetrieved ); } catch ( Exception e ) { result.setNrErrors( 1 ); e.printStackTrace(); logError( toString(), "Error processing DummyJob : " + e.getMessage() ); } return result; }
@Test public void testExecute() throws KettleJobException { MissingEntry entry = spy( new MissingEntry() ); when( entry.getLogChannel() ).thenReturn( mock( LogChannel.class ) ); entry.setName( "MissingTest" ); Result result = new Result(); result.setNrErrors( 0 ); result.setResult( true ); entry.execute( result, 0 ); assertEquals( 1, result.getNrErrors() ); assertEquals( false, result.getResult() ); }
public Result execute( Result prevResult, int nr ) throws KettleException { Result result = new Result( nr ); result.setResult( false ); logDetailed( toString(), "Start of processing" ); // String substitution.. String realCubeName = environmentSubstitute( getCubeName() ); PaloHelper database = new PaloHelper( this.getDatabaseMeta(), getLogLevel() ); try { database.connect(); int cubesremoved = database.removeCube( realCubeName ); result.setResult( true ); result.setNrLinesOutput( cubesremoved ); } catch ( Exception e ) { result.setNrErrors( 1 ); e.printStackTrace(); logError( toString(), "Error processing Palo Cube Delete : " + e.getMessage() ); } finally { database.disconnect(); } return result; }
@Test public void testAbortWithError() throws Exception { prepareOneRowForExecutor(); meta.setGroupSize( "1" ); data.groupSize = 1; internalResult.setSafeStop( false ); internalResult.setNrErrors( 1 ); executor.init( meta, data ); executor.setInputRowMeta( new RowMeta() ); assertTrue( executor.processRow( meta, data ) ); verify( executor.getTrans(), never() ).safeStop(); verify( executor.getTrans(), never() ).stopAll(); } }
log.logError( "An error occurred executing this job entry : ", e ); result.setResult( false ); result.setNrErrors( 1 ); } finally { result.setNrErrors( 1 ); result.setResult( false ); log.logError( BaseMessages.getString( PKG, "Job.Log.ErrorExecJob", e.getMessage() ), e );
result.setNrErrors( result.getNrErrors() + stepStatus.getErrors() + ( result.isStopped() ? 1 : 0 ) ); // If the
result.setNrErrors( 1 ); logError( BaseMessages.getString( PKG, "TableExists.Error.RunningJobEntry", dbe.getMessage() ) ); } finally { result.setNrErrors( 1 ); logError( BaseMessages.getString( PKG, "TableExists.Error.NoConnectionDefined" ) );
public Result execute( Result previousResult, int nr ) { Result result = previousResult; result.setResult( true ); String realxmlfilename = getRealxmlfilename(); String realDTDfilename = getRealDTDfilename(); // Define a new DTD validator instance DTDValidator validator = new DTDValidator( log ); // Set XML filename validator.setXMLFilename( realxmlfilename ); if ( dtdintern ) { // The DTD is intern to XML file validator.setInternDTD( true ); } else { // The DTD is extern // set the DTD filename validator.setDTDFilename( realDTDfilename ); } // Validate the XML file and return the status boolean status = validator.validate(); if ( !status ) { // The XML file is invalid! log.logError( validator.getErrorMessage() ); result.setResult( false ); result.setNrErrors( validator.getNrErrors() ); result.setLogText( validator.getErrorMessage() ); } return result; }