no message
This commit is contained in:
79
src/_VisualDVM/Repository/TestingClient.java
Normal file
79
src/_VisualDVM/Repository/TestingClient.java
Normal file
@@ -0,0 +1,79 @@
|
||||
package _VisualDVM.Repository;
|
||||
import Common.Passes.PassException;
|
||||
import Common.Utils.Utils_;
|
||||
import _VisualDVM.Global;
|
||||
import _VisualDVM.Passes.Server.RepositoryPass;
|
||||
import _VisualDVM.Repository.Server.ServerCode;
|
||||
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021;
|
||||
import _VisualDVM.TestingSystem.Common.TestingServer;
|
||||
|
||||
import java.io.FileWriter;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
public abstract class TestingClient {
|
||||
//--
|
||||
protected int getSleepMillis() {
|
||||
return 2000;
|
||||
}
|
||||
//---
|
||||
protected boolean isPrintOn() {
|
||||
return true;
|
||||
}
|
||||
protected void Print(String message) {
|
||||
try {
|
||||
if (isPrintOn()) {
|
||||
FileWriter testLog = new FileWriter(getClass().getSimpleName() + "_Log.txt", true);
|
||||
String dmessage = Utils_.Brackets(new Date()) + " " + message;
|
||||
testLog.write(dmessage + "\n");
|
||||
testLog.close();
|
||||
}
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
}
|
||||
//--
|
||||
protected Object ServerCommand(ServerCode code_in, String arg, Serializable object_in) throws Exception {
|
||||
RepositoryPass<TestingServer,Object> pass = new RepositoryPass<TestingServer, Object>(Global.testingServer) {
|
||||
@Override
|
||||
public String getDescription() {
|
||||
return "";
|
||||
}
|
||||
@Override
|
||||
protected void ServerAction() throws Exception {
|
||||
Command(new ServerExchangeUnit_2021(code_in, arg, object_in));
|
||||
target = server_response.object;
|
||||
}
|
||||
@Override
|
||||
protected boolean validate() {
|
||||
return Log.isEmpty();
|
||||
}
|
||||
@Override
|
||||
protected int getTimeout() {
|
||||
return 120000;
|
||||
}
|
||||
};
|
||||
if (!pass.Do()) {
|
||||
ServerConnectionError(code_in, pass.Log.toString());
|
||||
}
|
||||
return pass.target;
|
||||
}
|
||||
protected Object ServerCommand(ServerCode code_in, Serializable object_in) throws Exception {
|
||||
return ServerCommand(code_in, "", object_in);
|
||||
}
|
||||
protected Object ServerCommand(ServerCode code_in) throws Exception {
|
||||
return ServerCommand(code_in, "", null);
|
||||
}
|
||||
protected void ServerConnectionError(ServerCode code_in, String logText) throws Exception {
|
||||
throw new PassException(Utils_.Brackets(new Date().toString()) + " Ошибка взаимодействия с сервером " + code_in);
|
||||
}
|
||||
public abstract void perform() throws Exception;
|
||||
public void Perform() {
|
||||
try {
|
||||
perform();
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
} finally {
|
||||
Utils_.sleep(getSleepMillis());
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user