payuploadjob.java

来自「项目支付宝批量打款,采用httpclient+spring +quarz实现.」· Java 代码 · 共 73 行

JAVA
73
字号
package com.szhelper.pay.quartz.job;

import java.io.File;
import java.io.FilenameFilter;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.MultipartPostMethod;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;

import com.szhelper.pay.ApplicationContextWrapper;
import com.szhelper.pay.Constants;
import com.szhelper.pay.quartz.PayUploadBootstrap;
import com.szhelper.pay.quartz.PayUploadSender;
import com.szhelper.pay.quartz.base.BaseSender;
import com.szhelper.pay.quartz.base.Message;
import com.szhelper.pay.quartz.util.CSVFilter;
import com.szhelper.pay.service.IPayProxyService;
import com.szhelper.pay.service.impl.PayProxyServiceImpl;
/**
 * 
 * @author Fang
 * @version 1.0
 * @date 2008-08-06
 */
public class PayUploadJob implements Job {
    private static Log logger = LogFactory.getLog(PayUploadJob.class);    
    private Map uploadPayConfig;
    private IPayProxyService payProxyService ;
    private String uploadPath;
    public PayUploadJob() {
    	uploadPayConfig = (Map) ApplicationContextWrapper.getInstance()
		.getBean("uploadPayConfig");
    	
    	payProxyService = (PayProxyServiceImpl) ApplicationContextWrapper.getInstance()
		.getBean("PayProxyService");   
    	
    	uploadPath = uploadPayConfig.get("uploadPath").toString();	
    	if(!uploadPath.endsWith("/"))
			uploadPath+="/";
    }

    public void execute(JobExecutionContext context) throws
            JobExecutionException {
        if (PayUploadBootstrap.getInstance().isRunFlag()) {
            BaseSender sender = PayUploadSender.getInstance();               
            
            File file = new File(uploadPath);
			if(!file.exists()){
				file.mkdir();
			}
			String csvFiles[]=file.list(new CSVFilter());
			
			if (csvFiles == null || csvFiles.length== 0)
				return;
			
			for (int i=0;i<csvFiles.length;i++) {
				Message message = payProxyService.prepareSendUploadPM(csvFiles[i]);
	            if(message != null){
	            	logger.info("push one message to upload queue.");
	            	sender.getQueue().push(message);     
	            }
			}
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?