View Javadoc
1   /*******************************************************************************
2    *   Gisgraphy Project 
3    * 
4    *   This library is free software; you can redistribute it and/or
5    *   modify it under the terms of the GNU Lesser General Public
6    *   License as published by the Free Software Foundation; either
7    *   version 2.1 of the License, or (at your option) any later version.
8    * 
9    *   This library is distributed in the hope that it will be useful,
10   *   but WITHOUT ANY WARRANTY; without even the implied warranty of
11   *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12   *   Lesser General Public License for more details.
13   * 
14   *   You should have received a copy of the GNU Lesser General Public
15   *   License along with this library; if not, write to the Free Software
16   *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA
17   * 
18   *  Copyright 2008  Gisgraphy project 
19   *  David Masclet <davidmasclet@gisgraphy.com>
20   *  
21   *  
22   *******************************************************************************/
23  package com.gisgraphy.service.impl;
24  
25  import java.io.Serializable;
26  import java.util.List;
27  
28  import org.apache.commons.logging.Log;
29  import org.apache.commons.logging.LogFactory;
30  
31  import com.gisgraphy.dao.UniversalDao;
32  import com.gisgraphy.service.UniversalManager;
33  
34  /**
35   * Base class for Business Services - use this class for utility methods and
36   * generic CRUD methods.
37   * 
38   * @author <a href="mailto:matt@raibledesigns.com">Matt Raible</a>
39   */
40  public class UniversalManagerImpl implements UniversalManager {
41      /**
42       * Log instance for all child classes. Uses LogFactory.getLog(getClass())
43       * from Commons Logging
44       */
45      protected final Log log = LogFactory.getLog(getClass());
46  
47      /**
48       * UniversalDao instance, ready to charge forward and persist to the
49       * database
50       */
51      protected UniversalDao dao;
52  
53      public void setDao(UniversalDao dao) {
54  	this.dao = dao;
55      }
56  
57      /**
58       * {@inheritDoc}
59       */
60      public Object get(Class<?> clazz, Serializable id) {
61  	return dao.get(clazz, id);
62      }
63  
64      /**
65       * {@inheritDoc}
66       */
67      public List<?> getAll(Class<?> clazz) {
68  	return dao.getAll(clazz);
69      }
70  
71      /**
72       * {@inheritDoc}
73       */
74      public void remove(Class<?> clazz, Serializable id) {
75  	dao.remove(clazz, id);
76      }
77  
78      /**
79       * {@inheritDoc}
80       */
81      public Object save(Object o) {
82  	return dao.save(o);
83      }
84  }