All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.elephantdrummer.executor.SimpleJobNewThread Maven / Gradle / Ivy

There is a newer version: 1.2.5
Show newest version
package com.elephantdrummer.executor;

import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

import com.elephantdrummer.executor.base.ExecutorBase;
import com.elephantdrummer.executor.base.JobType;

/**
 * Copyright 2018 Elephant Software Klaudiusz Wojtkowiak e-mail: [email protected]
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"); 
 * you may not use this file except in compliance with the License. 
 * You may obtain a copy of the License at 
 * 
 *  http://www.apache.org/licenses/LICENSE-2.0 
 *  
 *  Unless required by applicable law or agreed to in writing, software 
 *  distributed under the License is distributed on an "AS IS" BASIS, 
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
 *  See the License for the specific language governing permissions and 
 *  limitations under the License. 
 */
public class SimpleJobNewThread extends ExecutorBase{
	 
	
	
	@Override
	protected final JobType getJobType() {
		return JobType.TYPICAL_JOB_NEW_THREAD;
	}
	

	 @Override
	public Void call() throws InterruptedException, ExecutionException{
		if (isEnabled()==false) return null;
		
		
		
		ExecutorService executor = Executors.newSingleThreadExecutor();
		executor.submit(() -> {
			startJobProcedure();
			if (getJobLogicProvider()==null==false){
				getJobLogicProvider().jobLogic();
			}
			finishJobProcedure();
		});
		
		
		return null;
    	
    	  
	}
	
	

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy