X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=server%2Fruntime%2Forg.argeo.server.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fserver%2Fdao%2FLightDaoSupport.java;h=2d71c9319cd4e9315389ef29f4f68656e770cac5;hb=80784d727fd841f17cc99e99da4692d6ed00cc1b;hp=25bc2b35f73a3b66a0f42115da335e7a7aa9622d;hpb=1d5afdce3e91054f07ddd3c98309c363b4cf1d46;p=lgpl%2Fargeo-commons.git diff --git a/server/runtime/org.argeo.server.core/src/main/java/org/argeo/server/dao/LightDaoSupport.java b/server/runtime/org.argeo.server.core/src/main/java/org/argeo/server/dao/LightDaoSupport.java index 25bc2b35f..2d71c9319 100644 --- a/server/runtime/org.argeo.server.core/src/main/java/org/argeo/server/dao/LightDaoSupport.java +++ b/server/runtime/org.argeo.server.core/src/main/java/org/argeo/server/dao/LightDaoSupport.java @@ -17,14 +17,20 @@ package org.argeo.server.dao; import java.util.List; +/** Minimal generic DAO for easy to implements objects <-> storage mapping. */ public interface LightDaoSupport { + /** Retrieve an object of a given type by its unique key. */ public T getByKey(Class clss, Object key); + /** Retrieve an object of a given type by the value of one of its fields. */ public T getByField(Class clss, String field, Object value); + /** List all objects, optionally filtering them (implementation dependent) */ public List list(Class clss, Object filter); + /** Lis all supported object types. */ public List> getSupportedClasses(); + /** Save or update an object */ public void saveOrUpdate(Object key, Object value, Class clss); }