restoring head
[mir.git] / source / org / codecoop / mir / core / dao / hibernate / HibernateDAOFactory.java
diff --git a/source/org/codecoop/mir/core/dao/hibernate/HibernateDAOFactory.java b/source/org/codecoop/mir/core/dao/hibernate/HibernateDAOFactory.java
new file mode 100755 (executable)
index 0000000..732f20c
--- /dev/null
@@ -0,0 +1,164 @@
+/*
+ * Copyright (C) 2001, 2002, 2003, 2004 The Mir-coders group
+ *
+ * This file is part of Mir.
+ *
+ * Mir is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * Mir is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Mir; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * In addition, as a special exception, The Mir-coders gives permission to link
+ * the code of this program with  any library licensed under the Apache Software License,
+ * The Sun (tm) Java Advanced Imaging library (JAI), The Sun JIMI library
+ * (or with modified versions of the above that use the same license as the above),
+ * and distribute linked combinations including the two.  You must obey the
+ * GNU General Public License in all respects for all of the code used other than
+ * the above mentioned libraries.  If you modify this file, you may extend this
+ * exception to your version of the file, but you are not obligated to do so.
+ * If you do not wish to do so, delete this exception statement from your version.
+ */
+package org.codecoop.mir.core.dao.hibernate;
+
+import org.codecoop.mir.core.dao.IArticleDAO;
+import org.codecoop.mir.core.dao.IArticleTypeDAO;
+import org.codecoop.mir.core.dao.IBreakingDAO;
+import org.codecoop.mir.core.dao.ICategoryDAO;
+import org.codecoop.mir.core.dao.ICategoryTypeDAO;
+import org.codecoop.mir.core.dao.IArticleStatusDAO;
+import org.codecoop.mir.core.dao.IDAOFactory;
+import org.codecoop.mir.core.dao.ILanguageDAO;
+import org.codecoop.mir.core.dao.IMediaDAO;
+import org.codecoop.mir.core.dao.IMediaFolderDAO;
+import org.codecoop.mir.core.dao.IMediaRelationTypeDAO;
+import org.codecoop.mir.core.dao.IMessageDAO;
+import org.codecoop.mir.core.dao.ITransactionManager;
+import org.codecoop.mir.core.dao.IUploadedMediaDAO;
+import org.codecoop.mir.core.dao.IUserDAO;
+
+/**
+ * DAOFactory
+ * @author idefix
+ * @version $Id: HibernateDAOFactory.java,v 1.1 2004/11/06 16:20:48 idfx Exp $
+ */
+public class HibernateDAOFactory implements IDAOFactory {
+  private static IDAOFactory factory;
+  
+  public static synchronized  IDAOFactory instance(){
+    if(null == factory){
+      factory = new HibernateDAOFactory();
+    }
+    return factory;
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createArticleDAO()
+   */
+  public IArticleDAO createArticleDAO() {
+    return new ArticleDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createUserDAO()
+   */
+  public IUserDAO createUserDAO() {
+    return new UserDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createArticleTypeDAO()
+   */
+  public IArticleTypeDAO createArticleTypeDAO() {
+    return new ArticleTypeDAO();
+  }
+  
+  public ICategoryDAO createCategoryDAO(){
+    return new CategoryDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createBreakingDAO()
+   */
+  public IBreakingDAO createBreakingDAO() {
+    return new BreakingDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createCategoryTypeDAO()
+   */
+  public ICategoryTypeDAO createCategoryTypeDAO() {
+    return new CategoryTypeDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createCommentStatusDAO()
+   */
+  public IArticleStatusDAO createCommentStatusDAO() {
+    return new ArticleStatusDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createLanugaeDAO()
+   */
+  public ILanguageDAO createLanugaeDAO() {
+    return new LanguageDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createMediaDAO()
+   */
+  public IMediaDAO createMediaDAO() {
+    return new MediaDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createMediaFolderDAO()
+   */
+  public IMediaFolderDAO createMediaFolderDAO() {
+    return new MediaFolderDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createMessageDAO()
+   */
+  public IMessageDAO createMessageDAO() {
+    return new MessageDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createUploadedMediaDAO()
+   */
+  public IUploadedMediaDAO createUploadedMediaDAO() {
+    return new UploadedMediaDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createArticleStatusDAO()
+   */
+  public IArticleStatusDAO createArticleStatusDAO() {
+    return new ArticleStatusDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createMediaRelationTypeDAO()
+   */
+  public IMediaRelationTypeDAO createMediaRelationTypeDAO() {
+    return new MediaRelationTypeDAO();
+  }
+
+  /* (non-Javadoc)
+   * @see org.codecoop.mir.core.dao.IDAOFactory#createTransactionManager()
+   */
+  public ITransactionManager createTransactionManager() {
+    return new TransactionManager();
+  }
+}