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=cc16d7bd30b7c0934c2c2c8a912cfd16a7e10412;hpb=aa95083d42d85ebaba5147e93f6b2b8b757b4752;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 cc16d7bd3..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 @@ -1,11 +1,36 @@ +/* + * Copyright (C) 2007-2012 Mathieu Baudier + * + * 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); }