2 * ============LICENSE_START=======================================================
4 * ================================================================================
5 * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 * ================================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END=========================================================
21 package org.openecomp.policy.pap.xacml.rest;
23 import org.hibernate.Session;
24 import org.hibernate.SessionFactory;
25 import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
26 import org.hibernate.cfg.Configuration;
27 import org.openecomp.policy.common.logging.flexlogger.FlexLogger;
28 import org.openecomp.policy.common.logging.flexlogger.Logger;
30 public class HibernateSession{
32 private static final Logger LOGGER = FlexLogger.getLogger(HibernateSession.class);
33 private static SessionFactory xacmlsessionFactory;
37 Configuration configuration= new Configuration();
38 configuration.setProperty("hibernate.connection.url", XACMLPapServlet.papDbUrl);
39 configuration.setProperty("hibernate.connection.username", XACMLPapServlet.papDbUser);
40 configuration.setProperty("hibernate.connection.password", XACMLPapServlet.papDbPassword);
41 configuration.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLDialect");
42 configuration.setProperty("hibernate.connection.driver_class", XACMLPapServlet.papDbDriver);
43 configuration.setProperty("hibernate.show_sql", "false");
44 configuration.setProperty("hibernate.connection.autocommit", "true");
45 configuration.setProperty("hibernate.c3p0.min_size", "5");
46 configuration.setProperty("hibernate.c3p0.max_size", "200");
47 configuration.setProperty("hibernate.c3p0.timeout", "3600");
48 configuration.setProperty("hibernate.c3p0.idle_test_period", "3600");
49 configuration.setProperty("hibernate.cache.use.query_cache", "false");
50 configuration.setProperty("hibernate.cache.use_second_level_cache", "false");
52 StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties());
53 xacmlsessionFactory = configuration.configure("/hibernate.cfg.xml").buildSessionFactory(builder.build());
55 } catch (Exception ex) {
56 LOGGER.error("Exception Occured While Creating Hiberante Session Factory"+ex);
60 public static Session getSessionFactory(){
61 return xacmlsessionFactory.openSession();