Package com.taobao.zeus.model

Examples of com.taobao.zeus.model.JobDescriptor


   * 收到定时触发任务的事件的处理流程
   * @param event
   */
  private void triggerEventHandle(ScheduleTriggerEvent event){
    String eId=event.getJobId();
    JobDescriptor jobDescriptor=cache.getJobDescriptor();
    if(jobDescriptor==null){//说明job被删除了,这是一个异常状况,autofix
      autofix();
      return;
    }
    if(!eId.equals(jobDescriptor.getId())){
      return;
    }
    ScheduleInfoLog.info("JobId:"+jobId+" receive a timer trigger event");
    JobHistory history=new JobHistory();
    history.setJobId(jobDescriptor.getId());
    history.setTriggerType(TriggerType.SCHEDULE);
    context.getJobHistoryManager().addJobHistory(history);
    master.run(history);
  }
View Full Code Here


  }
 
  @Override
  public String toString() {
    StringBuffer sb=new StringBuffer();
    JobDescriptor jd=cache.getJobDescriptor();
    if(jd==null){
      sb.append("JobId:"+jobId+" 查询为null,有异常");
    }else{
      sb.append("JobId:"+jobId).append(" auto:"+cache.getJobDescriptor().getAuto());
      sb.append(" dependency:"+cache.getJobDescriptor().getDependencies());
View Full Code Here

        final JobSuccessEvent event=(JobSuccessEvent) mvce.getAppEvent();
        if(event.getTriggerType()==TriggerType.SCHEDULE){
          return;
        }
        JobHistory history=jobHistoryManager.findJobHistory(event.getHistoryId());
        final JobDescriptor jd=groupManager.getJobDescriptor(history.getJobId()).getX();
        if(history.getOperator()!=null){
          //此处可以发送IM消息
        }
      }
    } catch (Exception e) {
View Full Code Here

        Query query=session.createQuery("select id,groupId from com.taobao.zeus.store.mysql.persistence.JobPersistence where gmt_modified>?");
        query.setDate(0, ignoreContentJobJudge.lastModified);
        List<Object[]> list=query.list();
        List<JobDescriptor> result=new ArrayList<JobDescriptor>();
        for(Object[] o:list){
          JobDescriptor jd=new JobDescriptor();
          jd.setId(String.valueOf(o[0]));
          jd.setGroupId(String.valueOf(o[1]));
          result.add(jd);
        }
        return result;
      }
    });
View Full Code Here

      JobBean bean=allJobs.get(jd.getId());
      if(bean==null){
        DebugInfoLog.info("isAllJobsNotChangeParent job id="+ jd.getId()+" has changed");
        return false;
      }
      JobDescriptor old=bean.getJobDescriptor();
      if(!old.getGroupId().equals(jd.getGroupId())){
        DebugInfoLog.info("isAllJobsNotChangeParent job id="+ jd.getId()+" has changed");
        return false;
      }
    }
    return true;
View Full Code Here

      type=JobRunType.Shell;
    }else if(JobModel.HIVE.equals(jobType)){
      type=JobRunType.Hive;
    }
    try {
      JobDescriptor jd=permissionGroupManager.createJob(LoginUser.getUser().getUid(), jobName, parentGroupId,type);
      return getUpstreamJob(jd.getId());
    } catch (ZeusException e) {
      log.error(e);
      throw new GwtException(e.getMessage());
    }
  }
View Full Code Here

  }
 
 
  @Override
  public JobModel updateJob(JobModel jobModel) throws GwtException {
    JobDescriptor jd=new JobDescriptor();
    jd.setCronExpression(jobModel.getCronExpression());
    jd.setDependencies(jobModel.getDependencies());
    jd.setDesc(jobModel.getDesc());
    jd.setGroupId(jobModel.getGroupId());
    jd.setId(jobModel.getId());
    JobRunType type=null;
    if(jobModel.getJobRunType().equals(JobModel.MapReduce)){
      type=JobRunType.MapReduce;
    }else if(jobModel.getJobRunType().equals(JobModel.SHELL)){
      type=JobRunType.Shell;
    }else if(jobModel.getJobRunType().equals(JobModel.HIVE)){
      type=JobRunType.Hive;
    }
    jd.setJobType(type);
    JobScheduleType scheduleType=null;
    if(JobModel.DEPEND_JOB.equals(jobModel.getJobScheduleType())){
      scheduleType=JobScheduleType.Dependent;
    }else if(JobModel.INDEPEN_JOB.equals(jobModel.getJobScheduleType())){
      scheduleType=JobScheduleType.Independent;
    }
    jd.setName(jobModel.getName());
    jd.setOwner(jobModel.getOwner());
    jd.setResources(jobModel.getLocalResources());
    jd.setProperties(jobModel.getLocalProperties());
    jd.setScheduleType(scheduleType);
    jd.setScript(jobModel.getScript());
    jd.setAuto(jobModel.getAuto());
   
    jd.setPreProcessers(parseProcessers(jobModel.getPreProcessers()));
    jd.setPostProcessers(parseProcessers(jobModel.getPostProcessers()));
    try {
      permissionGroupManager.updateJob(LoginUser.getUser().getUid(), jd);
      return getUpstreamJob(jd.getId());
    } catch (ZeusException e) {
      log.error(e);
      throw new GwtException(e.getMessage());
    }
  }
View Full Code Here

    return list;
  }
  @Override
  public void switchAuto(String jobId,Boolean auto) throws GwtException {
    Tuple<JobDescriptor, JobStatus> job=permissionGroupManager.getJobDescriptor(jobId);
    JobDescriptor jd=job.getX();
    if(!auto.equals(jd.getAuto())){
      jd.setAuto(auto);
      try {
        permissionGroupManager.updateJob(LoginUser.getUser().getUid(), jd);
      } catch (ZeusException e) {
        log.error(e);
        throw new GwtException(e.getMessage());
View Full Code Here

    }
    Map<String,JobHistory> jobHisMap=jobHistoryManager.findLastHistoryByList(jobIds);
    List<JobModel> result=new ArrayList<JobModel>();
    for(Tuple<JobDescriptor, JobStatus> job:allJobs){
      JobStatus status=job.getY();
      JobDescriptor jd=job.getX();
      JobModel model=new JobModel();
      model.setId(status.getJobId());
      Map<String, String> dep=new HashMap<String, String>();
      for(String jobId:job.getX().getDependencies()){
        if(jobId!=null && !"".equals(jobId)){
          dep.put(jobId, null);
        }
      }
      dep.putAll(status.getReadyDependency());
      model.setReadyDependencies(dep);
      model.setStatus(status.getStatus()==null?null:status.getStatus().getId());
      model.setName(jd.getName());
      model.setAuto(jd.getAuto());
      JobHistory his=jobHisMap.get(jd.getId());
      if(his!=null && his.getStartTime()!=null){
        SimpleDateFormat format=new SimpleDateFormat("MM-dd HH:mm:ss");
        model.setLastStatus(format.format(his.getStartTime())+" "+(his.getStatus()==null?"":his.getStatus().getId()));
      }
      result.add(model);
View Full Code Here

      throw new GwtException(e.getMessage());
    }
  }
  @Override
  public void syncScript(String jobId, String script) throws GwtException {
    JobDescriptor jd=permissionGroupManager.getJobDescriptor(jobId).getX();
    jd.setScript(script);
    try {
      permissionGroupManager.updateJob(LoginUser.getUser().getUid(), jd);
    } catch (ZeusException e) {
      log.error("syncScript",e);
      throw new GwtException("同步失败,可能是因为目标任务没有配置一些必填项。请去调度中心配置完整的必填项. cause:"+e.getMessage());
View Full Code Here

TOP

Related Classes of com.taobao.zeus.model.JobDescriptor

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.