промежуточный.безопасность на стороне сервера. Утром доделаю на стороне клиента
This commit is contained in:
3
.idea/workspace.xml
generated
3
.idea/workspace.xml
generated
@@ -8,8 +8,11 @@
|
|||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Constants.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Constants.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Component/Visualiser.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryServer.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/RepositoryServer.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ComponentsServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ComponentsServer.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ComponentsServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ComponentsServer.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerRequestUnit.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/SafeServerExchangeUnit.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingServer.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingServer.java" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import Common.Utils.Vector_;
|
|||||||
|
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
public class Constants {
|
public class Constants {
|
||||||
|
public static final int version = 1165;
|
||||||
public static final int planner_version = 6;
|
public static final int planner_version = 6;
|
||||||
public static final int testingMaxKernels = 64; //вообще говоря, это параметр машины.
|
public static final int testingMaxKernels = 64; //вообще говоря, это параметр машины.
|
||||||
//--
|
//--
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import Common.Utils.Utils_;
|
|||||||
import _VisualDVM.Constants;
|
import _VisualDVM.Constants;
|
||||||
import _VisualDVM.Global;
|
import _VisualDVM.Global;
|
||||||
import _VisualDVM.Passes.PassCode;
|
import _VisualDVM.Passes.PassCode;
|
||||||
import _VisualDVM.Repository.Server.ServerRequestUnit;
|
import _VisualDVM.Repository.Server.SaveServerExchangeUnit;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@@ -63,7 +63,7 @@ public class Visualiser extends Component {
|
|||||||
//http://www.seostella.com/ru/article/2012/02/05/formatirovanie-daty-v-java.html
|
//http://www.seostella.com/ru/article/2012/02/05/formatirovanie-daty-v-java.html
|
||||||
@Override
|
@Override
|
||||||
public void GetVersionInfo() {
|
public void GetVersionInfo() {
|
||||||
version = ServerRequestUnit.version;
|
version = SaveServerExchangeUnit.version;
|
||||||
String pattern = "MMM dd yyyy HH:mm:ss";
|
String pattern = "MMM dd yyyy HH:mm:ss";
|
||||||
DateFormat df = new SimpleDateFormat(pattern, Locale.ENGLISH);
|
DateFormat df = new SimpleDateFormat(pattern, Locale.ENGLISH);
|
||||||
date_text = df.format(getClassBuildTime());
|
date_text = df.format(getClassBuildTime());
|
||||||
|
|||||||
@@ -2,11 +2,13 @@ package _VisualDVM.Repository;
|
|||||||
import Common.Database.Database;
|
import Common.Database.Database;
|
||||||
import Common.Database.Objects.DBObject;
|
import Common.Database.Objects.DBObject;
|
||||||
import Common.Database.Objects.riDBObject;
|
import Common.Database.Objects.riDBObject;
|
||||||
|
import Common.Database.RepositoryRefuseException;
|
||||||
import Common.Utils.InterruptThread;
|
import Common.Utils.InterruptThread;
|
||||||
import Common.Utils.Utils_;
|
import Common.Utils.Utils_;
|
||||||
import _VisualDVM.Constants;
|
import _VisualDVM.Constants;
|
||||||
import _VisualDVM.Passes.Server.RepositoryPass;
|
import _VisualDVM.Passes.Server.RepositoryPass;
|
||||||
import _VisualDVM.Repository.Server.DiagnosticSignalHandler;
|
import _VisualDVM.Repository.Server.DiagnosticSignalHandler;
|
||||||
|
import _VisualDVM.Repository.Server.SafeServerExchangeUnit;
|
||||||
import _VisualDVM.Repository.Server.ServerCode;
|
import _VisualDVM.Repository.Server.ServerCode;
|
||||||
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021;
|
import _VisualDVM.Repository.Server.ServerExchangeUnit_2021;
|
||||||
import _VisualDVM.Utils;
|
import _VisualDVM.Utils;
|
||||||
@@ -81,7 +83,8 @@ public abstract class RepositoryServer<D extends Database> {
|
|||||||
}
|
}
|
||||||
//-DVMTestingChecker
|
//-DVMTestingChecker
|
||||||
public abstract int getPort();
|
public abstract int getPort();
|
||||||
protected abstract void SafeSession() throws Exception;
|
protected void Session() throws Exception {};
|
||||||
|
protected void UnsafeSession() throws Exception {}
|
||||||
protected void startAdditionalThreads() {
|
protected void startAdditionalThreads() {
|
||||||
}
|
}
|
||||||
public void ActivateDB() {
|
public void ActivateDB() {
|
||||||
@@ -181,50 +184,67 @@ public abstract class RepositoryServer<D extends Database> {
|
|||||||
Print("Ожидание команды от клиента...");
|
Print("Ожидание команды от клиента...");
|
||||||
Object transport = in.readObject();
|
Object transport = in.readObject();
|
||||||
Print("Команда прочитана.");
|
Print("Команда прочитана.");
|
||||||
|
//-->
|
||||||
if (transport instanceof ServerExchangeUnit_2021) {
|
if (transport instanceof ServerExchangeUnit_2021) {
|
||||||
request = (ServerExchangeUnit_2021) transport;
|
request = (ServerExchangeUnit_2021) transport;
|
||||||
response = null;
|
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||||
Print("клиент_2021: <- " + (request.codeName));
|
Print("клиент: <- " + (request.codeName));
|
||||||
|
//--
|
||||||
try {
|
try {
|
||||||
code = request.getCode();
|
code = request.getCode();
|
||||||
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
//--
|
||||||
switch (code) {
|
if (transport instanceof SafeServerExchangeUnit){
|
||||||
case Ping:
|
SafeServerExchangeUnit safe_request= (SafeServerExchangeUnit) transport;
|
||||||
Ping();
|
if (safe_request.version!=Constants.version){
|
||||||
break;
|
//версия не совпала. не даем работать.
|
||||||
case ReceiveFile:
|
throw new RepositoryRefuseException("Версия клиента не совпадает с версией сервера!");
|
||||||
ReceiveFile();
|
}
|
||||||
break;
|
//БЕЗОПАСНАЯ СЕССИЯ
|
||||||
case Email:
|
switch (code) {
|
||||||
Email();
|
case EditObject:
|
||||||
break;
|
EditObject();
|
||||||
case EditObject:
|
break;
|
||||||
EditObject();
|
case GetObjectCopyByPK:
|
||||||
break;
|
GetObjectCopyByPK();
|
||||||
case GetObjectCopyByPK:
|
break;
|
||||||
GetObjectCopyByPK();
|
case GetObjectsCopiesByPK:
|
||||||
break;
|
GetObjectsCopiesByPK();
|
||||||
case GetObjectsCopiesByPK:
|
break;
|
||||||
GetObjectsCopiesByPK();
|
case PublishObject:
|
||||||
break;
|
PublishObject();
|
||||||
case PublishObject:
|
break;
|
||||||
PublishObject();
|
case PublishObjects:
|
||||||
break;
|
PublishObjects();
|
||||||
case PublishObjects:
|
break;
|
||||||
PublishObjects();
|
case DeleteObjectByPK:
|
||||||
break;
|
DeleteObjectByPK();
|
||||||
case DeleteObjectByPK:
|
break;
|
||||||
DeleteObjectByPK();
|
case DeleteObjectsByPK:
|
||||||
break;
|
DeleteObjectsByPK();
|
||||||
case DeleteObjectsByPK:
|
break;
|
||||||
DeleteObjectsByPK();
|
case CloneObjectByPK:
|
||||||
break;
|
CloneObject();
|
||||||
case CloneObjectByPK:
|
break;
|
||||||
CloneObject();
|
default:
|
||||||
break;
|
Session();
|
||||||
default:
|
break;
|
||||||
SafeSession();
|
}
|
||||||
break;
|
}else {
|
||||||
|
//ОПАСНАЯ СЕССИЯ
|
||||||
|
switch (code){
|
||||||
|
case Ping:
|
||||||
|
Ping();
|
||||||
|
break;
|
||||||
|
case ReceiveFile:
|
||||||
|
ReceiveFile();
|
||||||
|
break;
|
||||||
|
case Email:
|
||||||
|
Email();
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
UnsafeSession();
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
response = new ServerExchangeUnit_2021(ServerCode.FAIL, "Исключение сервера", ex);
|
response = new ServerExchangeUnit_2021(ServerCode.FAIL, "Исключение сервера", ex);
|
||||||
|
|||||||
@@ -330,9 +330,8 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
|
|||||||
}
|
}
|
||||||
//--
|
//--
|
||||||
@Override
|
@Override
|
||||||
protected void SafeSession() throws Exception {
|
protected void UnsafeSession() throws Exception {
|
||||||
switch (code) {
|
switch (code) {
|
||||||
// ПРОХОДЫ НЕЗАВИСИМЫЕ ОТ ВЕРСИИ
|
|
||||||
case CheckSubscriberRole:
|
case CheckSubscriberRole:
|
||||||
CheckSubscriberRole();
|
CheckSubscriberRole();
|
||||||
break;
|
break;
|
||||||
@@ -340,6 +339,7 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
|
|||||||
GetComponentsBackUps();
|
GetComponentsBackUps();
|
||||||
break;
|
break;
|
||||||
case UpdateComponent:
|
case UpdateComponent:
|
||||||
|
//возможно со стороны админа ввод подтверждения по почте запрашивать.
|
||||||
PublishComponent();
|
PublishComponent();
|
||||||
break;
|
break;
|
||||||
case ReceiveComponent:
|
case ReceiveComponent:
|
||||||
@@ -354,7 +354,13 @@ public class ComponentsServer extends RepositoryServer<BugReportsDatabase> {
|
|||||||
case GetComponentChangesLog:
|
case GetComponentChangesLog:
|
||||||
GetComponentChangesLog();
|
GetComponentChangesLog();
|
||||||
break;
|
break;
|
||||||
//------------------------------------------------------------------------>>>>
|
default:
|
||||||
|
throw new RepositoryRefuseException("Неподдерживаемый код: " + code);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void Session() throws Exception {
|
||||||
|
switch (code) {
|
||||||
case ReceiveAllArchives:
|
case ReceiveAllArchives:
|
||||||
ReceiveAllArchives();
|
ReceiveAllArchives();
|
||||||
break;
|
break;
|
||||||
|
|||||||
19
src/_VisualDVM/Repository/Server/SafeServerExchangeUnit.java
Normal file
19
src/_VisualDVM/Repository/Server/SafeServerExchangeUnit.java
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
package _VisualDVM.Repository.Server;
|
||||||
|
import _VisualDVM.Constants;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
public class SafeServerExchangeUnit extends ServerExchangeUnit_2021 {
|
||||||
|
public int version;
|
||||||
|
public SafeServerExchangeUnit(ServerCode code_in, String arg_in, Serializable object_in) {
|
||||||
|
super(code_in, arg_in, object_in);
|
||||||
|
version = Constants.version;
|
||||||
|
}
|
||||||
|
public SafeServerExchangeUnit(ServerCode code_in, String arg_in) {
|
||||||
|
super(code_in, arg_in);
|
||||||
|
version = Constants.version;
|
||||||
|
}
|
||||||
|
public SafeServerExchangeUnit(ServerCode code_in) {
|
||||||
|
super(code_in);
|
||||||
|
version = Constants.version;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
package _VisualDVM.Repository.Server;
|
|
||||||
import java.io.Serializable;
|
|
||||||
public class ServerRequestUnit {
|
|
||||||
public static final int version = 1165;
|
|
||||||
//--------------------------------------------
|
|
||||||
public String codeName;
|
|
||||||
public String arg;
|
|
||||||
public Serializable object;
|
|
||||||
//--------------------------------------------
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -762,7 +762,7 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
}
|
}
|
||||||
//--
|
//--
|
||||||
@Override
|
@Override
|
||||||
protected void SafeSession() throws Exception {
|
protected void Session() throws Exception {
|
||||||
switch (code) {
|
switch (code) {
|
||||||
case PerformAutoSapforTesting:
|
case PerformAutoSapforTesting:
|
||||||
PerformAutoSapforTesting();
|
PerformAutoSapforTesting();
|
||||||
|
|||||||
Reference in New Issue
Block a user