/** * Copyright 2016 vip.com. * <p> * 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. * </p> */ package com.vip.saturn.job.internal.statistics; import com.vip.saturn.job.basic.JobScheduler; import com.vip.saturn.job.internal.analyse.AnalyseService; import com.vip.saturn.job.internal.config.JobConfiguration; import com.vip.saturn.job.internal.server.ServerService; /** * 统计处理数据数量的作业. * * */ public class ProcessCountJob implements Runnable { private final JobConfiguration jobConfiguration; private final ServerService serverService; private final AnalyseService analyseService; public ProcessCountJob(final JobScheduler jobScheduler) { jobConfiguration = jobScheduler.getCurrentConf(); serverService = jobScheduler.getServerService(); analyseService = jobScheduler.getAnalyseService(); } @Override public void run() { String jobName = jobConfiguration.getJobName(); serverService.persistProcessSuccessCount(ProcessCountStatistics.getProcessSuccessCount(serverService.getExecutorName(), jobName)); serverService.persistProcessFailureCount(ProcessCountStatistics.getProcessFailureCount(serverService.getExecutorName(), jobName)); analyseService.persistTotalCount(); analyseService.persistErrorCount(); } }