EN · DE · RU · FR · ES

#687: IDao.java

projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java Java class, projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java 37 lines · 9 code · 22 comments · 6 blank
Purpose: Source file: framework/persistence/api/IDao.java. IDao.java is part of the ProjectForge open-source project management application.

Source (first 100 lines)

/////////////////////////////////////////////////////////////////////////////
//
// Project ProjectForge Community Edition
//         www.projectforge.org
//
// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
//
// ProjectForge is dual-licensed.
//
// This community edition is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License as published
// by the Free Software Foundation; version 3 of the License.
//
// This community edition is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
// Public License for more details.
//
// You should have received a copy of the GNU General Public License along
// with this program; if not, see http://www.gnu.org/licenses/.
//
/////////////////////////////////////////////////////////////////////////////

package org.projectforge.framework.persistence.api;

import org.projectforge.framework.persistence.jpa.PfPersistenceContext;
import org.projectforge.framework.persistence.user.entities.PFUserDO;

import java.util.List;

public interface IDao<O> {
    public List<O> select(final BaseSearchFilter filter);

    public boolean isHistorizable();

    public boolean hasInsertAccess(final PFUserDO user);
}

Git History

868d6abb7 2025 -> 2026
63081666f Source file headers: 2024-> 2025.
1b50060c3 BaseDao: renamed: get -> find, save -> insert, getList -> select, load -> select
3aeda5ef5 Big change: all save|update|...InTrans renamed (InTrans removed). PfPesistenceContext as param not needed anymore (ThreadLocal is used instead). (all tests of all packages: OK).
b095e6f7d !!!!! Big change of Transaction handling: Re-uses PfPersistenceContext as much as possible (not yet finished). Tests doesn't yet run.

868d6abb7

2025 -> 2026
868d6abb75cd191a892911ac8e45058932cf9074
diff --git a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
index b9c8d894e..5b286b2f8 100644
--- a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
+++ b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2026 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

63081666f

Source file headers: 2024-> 2025.
63081666f620fb87315f01b817e560e0b2f6a33a
diff --git a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
index aa40370ec..b9c8d894e 100644
--- a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
+++ b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
@@ -3,7 +3,7 @@
 // Project ProjectForge Community Edition
 //         www.projectforge.org
 //
-// Copyright (C) 2001-2024 Micromata GmbH, Germany (www.micromata.com)
+// Copyright (C) 2001-2025 Micromata GmbH, Germany (www.micromata.com)
 //
 // ProjectForge is dual-licensed.
 //

1b50060c3

BaseDao: renamed: get -> find, save -> insert, getList -> select, load -> select
1b50060c3a4b099ec07fd85d28f514b101da4d29
diff --git a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
index 2b2718ac9..aa40370ec 100644
--- a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
+++ b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
@@ -29,7 +29,7 @@ import org.projectforge.framework.persistence.user.entities.PFUserDO;
 import java.util.List;
 
 public interface IDao<O> {
-    public List<O> getList(final BaseSearchFilter filter);
+    public List<O> select(final BaseSearchFilter filter);
 
     public boolean isHistorizable();
 

3aeda5ef5

Big change: all save|update|...InTrans renamed (InTrans removed). PfPesistenceContext as param not needed anymore (ThreadLocal is used instead). (all tests of all packages: OK).
3aeda5ef5aaaa8a4d627d7f2e771ef0516001a52
diff --git a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
index 444613089..2b2718ac9 100644
--- a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
+++ b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
@@ -31,8 +31,6 @@ import java.util.List;
 public interface IDao<O> {
     public List<O> getList(final BaseSearchFilter filter);
 
-    public List<O> getList(final BaseSearchFilter filter, final PfPersistenceContext context);
-
     public boolean isHistorizable();
 
     public boolean hasInsertAccess(final PFUserDO user);

b095e6f7d

!!!!! Big change of Transaction handling: Re-uses PfPersistenceContext as much as possible (not yet finished). Tests doesn't yet run.
b095e6f7d1ac890540891bdc2b2143ceb5e74acb
diff --git a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
index c19f7ff20..444613089 100644
--- a/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
+++ b/projectforge-business/src/main/java/org/projectforge/framework/persistence/api/IDao.java
@@ -23,6 +23,7 @@
 
 package org.projectforge.framework.persistence.api;
 
+import org.projectforge.framework.persistence.jpa.PfPersistenceContext;
 import org.projectforge.framework.persistence.user.entities.PFUserDO;
 
 import java.util.List;
@@ -30,6 +31,8 @@ import java.util.List;
 public interface IDao<O> {
     public List<O> getList(final BaseSearchFilter filter);
 
+    public List<O> getList(final BaseSearchFilter filter, final PfPersistenceContext context);
+
     public boolean isHistorizable();
 
     public boolean hasInsertAccess(final PFUserDO user);