1
22
23 package com.liferay.portal.service.persistence.impl;
24
25 import com.liferay.portal.SystemException;
26 import com.liferay.portal.kernel.dao.orm.Dialect;
27 import com.liferay.portal.kernel.dao.orm.ORMException;
28 import com.liferay.portal.kernel.dao.orm.Session;
29 import com.liferay.portal.kernel.dao.orm.SessionFactory;
30 import com.liferay.portal.kernel.log.Log;
31 import com.liferay.portal.kernel.log.LogFactoryUtil;
32 import com.liferay.portal.kernel.util.ListUtil;
33 import com.liferay.portal.model.ModelListener;
34 import com.liferay.portal.service.persistence.BasePersistence;
35
36 import java.sql.Connection;
37
38 import java.util.List;
39
40 import javax.sql.DataSource;
41
42
48 public class BasePersistenceImpl implements BasePersistence, SessionFactory {
49
50 public static final String COUNT_COLUMN_NAME = "COUNT_VALUE";
51
52 public void clearCache() {
53 }
54
55 public void closeSession(Session session) {
56 _sessionFactory.closeSession(session);
57 }
58
59 public DataSource getDataSource() {
60 return _dataSource;
61 }
62
63 public Dialect getDialect() {
64 return _dialect;
65 }
66
67 public ModelListener[] getListeners() {
68 return listeners;
69 }
70
71 public Session openSession() throws ORMException {
72 return _sessionFactory.openSession();
73 }
74
75 public Session openNewSession(Connection connection) throws ORMException {
76 return _sessionFactory.openNewSession(connection);
77 }
78
79 public void registerListener(ModelListener listener) {
80 List<ModelListener> listenersList = ListUtil.fromArray(listeners);
81
82 listenersList.add(listener);
83
84 listeners = listenersList.toArray(
85 new ModelListener[listenersList.size()]);
86 }
87
88 public SystemException processException(Exception e) {
89 if (!(e instanceof ORMException)) {
90 _log.error("Caught unexpected exception " + e.getClass().getName());
91 }
92
93 if (_log.isDebugEnabled()) {
94 _log.debug(e, e);
95 }
96
97 return new SystemException(e);
98 }
99
100 public void setDataSource(DataSource dataSource) {
101 _dataSource = dataSource;
102 }
103
104 public void setSessionFactory(SessionFactory sessionFactory) {
105 _sessionFactory = sessionFactory;
106 _dialect = _sessionFactory.getDialect();
107 }
108
109 public void unregisterListener(ModelListener listener) {
110 List<ModelListener> listenersList = ListUtil.fromArray(listeners);
111
112 listenersList.remove(listener);
113
114 listeners = listenersList.toArray(
115 new ModelListener[listenersList.size()]);
116 }
117
118 protected ModelListener[] listeners = new ModelListener[0];
119
120 private static Log _log = LogFactoryUtil.getLog(BasePersistenceImpl.class);
121
122 private DataSource _dataSource;
123 private SessionFactory _sessionFactory;
124 private Dialect _dialect;
125
126 }