KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > portal > test > setup > dl > HibernateDataLoaderTestCase


1 /*****************************************
2  * *
3  * JBoss Portal: The OpenSource Portal *
4  * *
5  * Distributable under LGPL license. *
6  * See terms of license at gnu.org. *
7  * *
8  *****************************************/

9 package org.jboss.portal.test.setup.dl;
10
11
12 import org.jboss.portal.setup.impl.dl.dbloader.hibernate.HibernateDataLoader;
13 import org.jboss.portal.setup.impl.dl.dbloader.hibernate.HibernateDataLoaderConfigImpl;
14 import org.jboss.portal.setup.impl.pm.HibernatePersistenceManager;
15 import org.jboss.portal.setup.impl.pm.HibernatePesistenceSession;
16 import org.jboss.portal.setup.PortalSetupException;
17
18
19 import org.jboss.portal.common.util.XML;
20 import org.jboss.portal.test.setup.PortalSetupBaseTestCase;
21 import org.jboss.portal.core.impl.user.UserModuleImpl;
22 import org.jboss.portal.core.model.User;
23 import org.w3c.dom.Document JavaDoc;
24 import org.w3c.dom.Element JavaDoc;
25 import org.w3c.dom.NodeList JavaDoc;
26 import org.hibernate.Session;
27
28 import java.io.File JavaDoc;
29 import java.io.FileInputStream JavaDoc;
30 import java.io.InputStream JavaDoc;
31 import java.util.List JavaDoc;
32 import java.util.Set JavaDoc;
33
34
35 import junit.framework.Assert;
36
37
38 /**
39  * @author <a HREF="mailto:palber@novell.com">Polina Alber</a>
40  * Date: Apr 16, 2005; Time: 3:14:09 PM
41  * @since JBoss portal 2.0
42  * Class org.jboss.portal.test.setup.dl.HibernateDataLoaderTestCase
43  */

44 public class HibernateDataLoaderTestCase extends PortalSetupBaseTestCase
45 {
46
47    protected HibernateDataLoader m_dataLoader = null;
48    protected HibernateDataLoaderConfigImpl m_config = null;
49    private UserModuleImpl m_userModule = null;
50    private HibernatePersistenceManager m_pm = null;
51    private HibernatePesistenceSession m_ps = null;
52
53
54    public HibernateDataLoaderTestCase(String JavaDoc name)
55    {
56       super(name);
57
58    }
59
60    public void setUp() throws Exception JavaDoc
61    {
62       try
63       {
64          super.setUp();
65          setDataLoaderConfig();
66          m_dataLoader = new HibernateDataLoader();
67          m_dataLoader.setDataLoaderConfiguration(m_config);
68       }
69       catch (PortalSetupException pse)
70       {
71          pse.printStackTrace();
72          assertTrue(false);
73       }
74
75       // Setup user module
76
m_userModule = new UserModuleImpl()
77       {
78          protected Session getSession()
79          {
80             return m_ps.getSession();
81          }
82       };
83
84    }
85
86    public void testLoadData() throws Exception JavaDoc
87    {
88       //String uri = "C:\\depot\\devview\\jboss\\jboss-portal-2.0\\setup\\src\\resources\\portal-setup-sar\\setup\\core-dl.xml";
89
String JavaDoc uri = "org/jboss/portal/setup/impl/dl/dbloader/portal-dl.xml";
90       if (m_dataLoader.checkDataInitialized())
91       {
92          //do nothing
93
System.out.println("Database data have been initialized!");
94       }
95       else
96       {
97          InputStream JavaDoc is = null;
98          File JavaDoc file = new File JavaDoc(uri);
99          if (file.exists())
100          {
101             is = new FileInputStream JavaDoc(file);
102          }
103          else
104          {
105             is = Thread.currentThread().getContextClassLoader().getResourceAsStream(uri);
106          }
107
108
109          Document JavaDoc dmt = XML.getDocumentBuilderFactory().newDocumentBuilder().parse(is);
110          Element JavaDoc docElmt = dmt.getDocumentElement();
111          List JavaDoc actions = XML.getChildren(docElmt, "action");
112          for (int i = 0; i < actions.size(); i++)
113          {
114             Element JavaDoc action = (Element JavaDoc)actions.get(i);
115             m_dataLoader.loadData(action);
116          }
117       }
118       Set JavaDoc users = m_userModule.findUsers(0, 200);
119       //User user1 = m_userModule.findUserByID(new Integer(1));
120
User user = m_userModule.findUserByUserName("admin");
121       boolean enabled = user.getEnabled();
122       Assert.assertTrue(enabled);
123
124
125    }
126
127    public void tearDown() throws Exception JavaDoc
128    {
129       m_dataLoader.destroy();
130       m_dataLoader = null;
131       m_ps.close();
132       m_pm.destroy();
133       super.tearDown();
134
135    }
136
137    protected void setDataLoaderConfig() throws PortalSetupException
138    {
139
140       m_config = new HibernateDataLoaderConfigImpl();
141       m_config.setDataQueryString("SELECT JBP_UNAME FROM JBP_USERS WHERE JBP_UID = 1");
142       m_config.setHibernateConfig(m_hbConfig);
143       m_pm = new HibernatePersistenceManager();
144       m_pm.initialize(m_hbConfig, null);
145       m_ps = (HibernatePesistenceSession)m_pm.getSession();
146    }
147
148 /* protected List getClassList() throws PortalSetupException {
149     List classes = new ArrayList();
150     try {
151     classes.add(Class.forName("org.jboss.portal.core.impl.user.UserImpl"));
152     classes.add(Class.forName("org.jboss.portal.core.impl.user.UserPref"));
153     classes.add(Class.forName("org.jboss.portal.core.impl.user.UserPrefSet"));
154     classes.add(Class.forName("org.jboss.portal.core.impl.role.RoleImpl"));
155     classes.add(Class.forName("import org.jboss.portal.core.impl.preferences.MappedPreference"));
156     classes.add(Class.forName("import org.jboss.portal.core.impl.preferences.MappedPreferenceSet"));
157     } catch (ClassNotFoundException cnfe) {
158         throw new PortalSetupException ("Fail to load class!", cnfe);
159     }
160     return classes;
161 } */

162 }
163
Popular Tags