2025-02-03 15:19:53 +03:00
|
|
|
package _VisualDVM.Passes.Server;
|
|
|
|
|
import Common.Passes.Pass;
|
2025-02-08 19:19:26 +03:00
|
|
|
import _VisualDVM.Constants;
|
2025-02-03 23:04:40 +03:00
|
|
|
import _VisualDVM.Global;
|
2025-02-03 15:19:53 +03:00
|
|
|
import _VisualDVM.Repository.RepositoryServer;
|
2025-02-14 02:17:56 +03:00
|
|
|
import _VisualDVM.Repository.Server.SafeServerExchangeUnit;
|
2025-02-03 23:04:40 +03:00
|
|
|
import _VisualDVM.Repository.Server.ServerCode;
|
|
|
|
|
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021;
|
|
|
|
|
|
|
|
|
|
import java.io.Serializable;
|
2025-02-03 15:19:53 +03:00
|
|
|
public abstract class ClientPass <S extends RepositoryServer,T> extends Pass<T> {
|
2025-02-03 23:04:40 +03:00
|
|
|
protected RepositoryPass request;
|
2025-02-14 03:16:43 +03:00
|
|
|
protected boolean isSafe(){
|
|
|
|
|
return true;
|
|
|
|
|
}
|
2025-02-03 20:31:34 +03:00
|
|
|
@Override
|
|
|
|
|
protected boolean needsAnimation() {
|
2025-02-04 17:07:03 +03:00
|
|
|
return false;
|
2025-02-03 20:31:34 +03:00
|
|
|
}
|
2025-02-05 01:40:28 +03:00
|
|
|
protected boolean requestNeedsAnimation(){
|
|
|
|
|
return true;
|
|
|
|
|
}
|
2025-02-03 20:31:34 +03:00
|
|
|
@Override
|
|
|
|
|
public String getButtonText() {
|
|
|
|
|
return "";
|
|
|
|
|
}
|
2025-02-03 15:19:53 +03:00
|
|
|
protected abstract S getServer();
|
2025-02-03 23:04:40 +03:00
|
|
|
protected boolean SendRequest(ServerCode code_in, String arg_in, Serializable object_in, int delay){
|
|
|
|
|
request = null;
|
|
|
|
|
request = new RepositoryPass(getServer()) {
|
2025-02-05 01:40:28 +03:00
|
|
|
@Override
|
|
|
|
|
protected boolean needsAnimation() {
|
|
|
|
|
return requestNeedsAnimation();
|
|
|
|
|
}
|
2025-02-03 23:04:40 +03:00
|
|
|
@Override
|
|
|
|
|
public String getDescription() {
|
|
|
|
|
return code_in.getDescription();
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected int getTimeout() {
|
|
|
|
|
return delay;
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void ServerAction() throws Exception {
|
2025-02-14 03:16:43 +03:00
|
|
|
if (isSafe())
|
|
|
|
|
Command(new SafeServerExchangeUnit(code_in, arg_in,object_in));
|
|
|
|
|
else
|
|
|
|
|
unsafe_command(new ServerExchangeUnit_2021(code_in,arg_in,object_in)); //только для отдельных команд.
|
2025-02-03 23:04:40 +03:00
|
|
|
target = server_response.object;
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected boolean validate() {
|
|
|
|
|
return Log.isEmpty();
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
return request.Do();
|
|
|
|
|
}
|
|
|
|
|
protected boolean SendRequest(ServerCode code_in,String arg_in, Serializable object_in){
|
2025-02-08 19:19:26 +03:00
|
|
|
return SendRequest(code_in,arg_in, object_in, Constants.SocketTimeout);
|
2025-02-03 23:04:40 +03:00
|
|
|
}
|
2025-02-04 16:55:55 +03:00
|
|
|
protected boolean SendRequest(ServerCode code_in, String arg_in){
|
|
|
|
|
return SendRequest(code_in,arg_in,null);
|
|
|
|
|
}
|
2025-02-04 16:06:49 +03:00
|
|
|
protected boolean SendRequest(ServerCode code_in){
|
|
|
|
|
return SendRequest(code_in, "", null);
|
|
|
|
|
}
|
2025-02-03 15:19:53 +03:00
|
|
|
}
|