Исправление бага с ид пакетов. теперь они общий для всех пользователей, поэтому не будет пересечания в папках. v++

This commit is contained in:
2023-11-21 17:44:59 +03:00
parent 16b13cbc8c
commit 82a6f4b879
23 changed files with 132 additions and 87 deletions

View File

@@ -2,7 +2,7 @@ package Repository;
import Common.Constants;
import Common.Database.DBObject;
import Common.Database.Database;
import Common.Database.rDBObject;
import Common.Database.iDBObject;
import Common.Global;
import Common.Utils.InterruptThread;
import Common.Utils.Utils;
@@ -171,7 +171,9 @@ public abstract class RepositoryServer<D extends Database> {
public boolean needsEmail(String email) {
return true;
}
public void PublishAction(DBObject object) throws Exception {
public void beforePublishAction(DBObject object) throws Exception {
}
public void afterPublishAction(DBObject object) throws Exception {
}
public boolean canDelete(DBObject object) throws Exception {
return true;
@@ -236,14 +238,6 @@ public abstract class RepositoryServer<D extends Database> {
break;
//</editor-fold>
//<editor-fold desc="Главная база данных">
case PublishObject:
dbObject = (DBObject) request.object;
Print("Опубликовать объект " + dbObject.getPK());
db.InsertWithCheck(dbObject);
PublishAction(dbObject);
response = new ServerExchangeUnit_2021(ServerCode.OK);
response.object = (Serializable) dbObject.getPK();
break;
case CheckObjectExistense:
p = (Pair<Class, Object>) request.object;
Print("Проверить существование объекта класса " + p.getKey().toString() + " с ключом " + p.getValue());
@@ -256,7 +250,7 @@ public abstract class RepositoryServer<D extends Database> {
db.UpdateWithCheck(new_object);
response = new ServerExchangeUnit_2021(ServerCode.OK);
break;
case DeleteObject:
case DeleteObject: //устарело. потом убрать. сейчас на это баг репорты повязаны.
dbObject = (DBObject) request.object;
Print("Удалить объект " + dbObject.getPK());
db.DeleteWithCheck(dbObject);
@@ -297,13 +291,13 @@ public abstract class RepositoryServer<D extends Database> {
response = new ServerExchangeUnit_2021(ServerCode.OK);
break;
//------------------------
case PublishAIObject:
case PublishObject:
dbObject = (DBObject) request.object;
Print("Опубликовать объект с автоинкрементным ключом");
db.Insert(dbObject); //проверка не нужна,АИ гарантирует что ключ уникален.
PublishAction(dbObject);
beforePublishAction(dbObject);
PublishObject(dbObject);
afterPublishAction(dbObject);
response = new ServerExchangeUnit_2021(ServerCode.OK);
response.object = (Serializable) dbObject.getPK(); //чтобы пользователь знал, какой ключ.
response.object = (Serializable) dbObject.getPK();
break;
//</editor-fold>
case EXIT:
@@ -351,7 +345,13 @@ public abstract class RepositoryServer<D extends Database> {
}
}
}
public void CopyAction(rDBObject src, rDBObject dst) throws Exception {
public void PublishObject(DBObject dbObject) throws Exception {
if (dbObject instanceof iDBObject) {
Print("Опубликовать объект");
db.Insert(dbObject);
} else {
Print("Опубликовать объект с автоинкрементным ключом");
db.InsertWithCheck(dbObject); //проверка не нужна,АИ гарантирует что ключ уникален.
}
}
//--
}