package tech.powerjob.server.remote.transporter.impl;
|
|
import tech.powerjob.remote.framework.base.Address;
|
import tech.powerjob.remote.framework.base.HandlerLocation;
|
import tech.powerjob.remote.framework.base.ServerType;
|
import tech.powerjob.remote.framework.base.URL;
|
|
import static tech.powerjob.common.RemoteConstant.*;
|
|
/**
|
* 统一生成地址
|
*
|
* @author tjq
|
* @since 2023/1/21
|
*/
|
public class ServerURLFactory {
|
|
public static URL dispatchJob2Worker(String address) {
|
return simileBuild(address, ServerType.WORKER, WORKER_PATH, WTT_HANDLER_RUN_JOB);
|
}
|
|
public static URL stopInstance2Worker(String address) {
|
return simileBuild(address, ServerType.WORKER, WORKER_PATH, WTT_HANDLER_STOP_INSTANCE);
|
}
|
|
public static URL queryInstance2Worker(String address) {
|
return simileBuild(address, ServerType.WORKER, WORKER_PATH, WTT_HANDLER_QUERY_INSTANCE_STATUS);
|
}
|
|
public static URL deployContainer2Worker(String address) {
|
return simileBuild(address, ServerType.WORKER, WORKER_PATH, WORKER_HANDLER_DEPLOY_CONTAINER);
|
}
|
|
public static URL destroyContainer2Worker(String address) {
|
return simileBuild(address, ServerType.WORKER, WORKER_PATH, WORKER_HANDLER_DESTROY_CONTAINER);
|
}
|
|
public static URL ping2Friend(String address) {
|
return simileBuild(address, ServerType.SERVER, S4S_PATH, S4S_HANDLER_PING);
|
}
|
|
public static URL process2Friend(String address) {
|
return simileBuild(address, ServerType.SERVER, S4S_PATH, S4S_HANDLER_PROCESS);
|
}
|
|
public static URL simileBuild(String address, ServerType type, String rootPath, String handlerPath) {
|
return new URL()
|
.setServerType(type)
|
.setAddress(Address.fromIpv4(address))
|
.setLocation(new HandlerLocation().setRootPath(rootPath).setMethodPath(handlerPath));
|
}
|
}
|