package com.hqyg.disjob.register.job; import java.util.List; import java.util.Map; import org.apache.curator.framework.CuratorFramework; import com.hqyg.disjob.common.exception.ZKNodeException; import com.hqyg.disjob.register.domain.EjobServerInfo; import com.hqyg.disjob.register.domain.Job; import com.hqyg.disjob.rpc.client.HURL; /** * ejob为后台提供接口服务类 * @author Disjob * */ public interface EjobServerService { /** * 将所有job均分给slave机,暂时没有考虑机器动态添加 * * @param client * @return * @throws ZKNodeException */ boolean distributeJob(CuratorFramework client) throws ZKNodeException; List<String> getAllJobNameByGroup(CuratorFramework client, String paht) throws ZKNodeException; List<EjobServerInfo> getServerInfos() throws ZKNodeException; Map<String, List<String>> getServerJob(EjobServerInfo server); /** * 根据job和对应IP得到RPC对应的HURL对象 * @param group * @param jobName * @param Ip * @return */ HURL getHurlByJobAndIp(String group,String jobName,String Ip); /** * 根据组名和job名得到/ejob/job/groupname/jobname/config对应的job对象 * @param group * @param jobName * @return */ Job getJobByGroupNameAndJobName(String group,String jobName); List<String> getSessionsList(); }