X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;ds=inline;f=server%2Fruntime%2Forg.argeo.server.core%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fserver%2Fdao%2FLightDaoSupport.java;h=6ea1b754dfaa253c2ebcef76e7711e90f83d138a;hb=3a3d316af102ba410d1d9e6de349d0c8f7ac044f;hp=fa5ce4187ab58678824b1a7903346c35764da62d;hpb=3a2d1d7c935065e5048232d9aa7c20b4b875e316;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 fa5ce4187..6ea1b754d 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 @@ -1,13 +1,36 @@ +/* + * Copyright (C) 2007-2012 Argeo GmbH + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ 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); }