diff options
author | TATTAVARADA <statta@research.att.com> | 2017-04-27 07:53:18 -0400 |
---|---|---|
committer | st782s <statta@research.att.com> | 2017-04-27 08:31:27 -0400 |
commit | 6beb446925c967aca92f5513adf36c5db77c00d6 (patch) | |
tree | 9392057ed0739de2445c5b2a2a8bee6dcdacbcf7 /ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf | |
parent | 246b225194e3e8dc1926294de591a94fd9787fa7 (diff) |
[PORTAL-7] Rebase
This rebasing includes common libraries and common overlays projects
abstraction of components
Change-Id: Ia1efa4deacdc5701e6205104ac021a6c80ed60ba
Signed-off-by: st782s <statta@research.att.com>
Diffstat (limited to 'ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf')
5 files changed, 0 insertions, 591 deletions
diff --git a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/AppConfig.java b/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/AppConfig.java deleted file mode 100644 index 3a4753e3..00000000 --- a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/AppConfig.java +++ /dev/null @@ -1,301 +0,0 @@ -/*- - * ================================================================================ - * eCOMP Portal SDK - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ================================================================================ - */ -package org.openecomp.portalsdk.core.conf; - -import java.util.ArrayList; -import java.util.List; - -import javax.sql.DataSource; - -import org.openecomp.portalsdk.core.interceptor.ResourceInterceptor; -import org.openecomp.portalsdk.core.interceptor.SessionTimeoutInterceptor; -import org.openecomp.portalsdk.core.logging.format.AlarmSeverityEnum; -import org.openecomp.portalsdk.core.logging.format.AppMessagesEnum; -import org.openecomp.portalsdk.core.logging.logic.EELFLoggerDelegate; -import org.openecomp.portalsdk.core.menu.MenuBuilder; -import org.openecomp.portalsdk.core.service.DataAccessService; -import org.openecomp.portalsdk.core.service.DataAccessServiceImpl; -import org.openecomp.portalsdk.core.util.CipherUtil; -import org.openecomp.portalsdk.core.util.SystemProperties; -import org.openecomp.portalsdk.core.web.support.AppUtils; -import org.openecomp.portalsdk.core.web.support.UserUtils; -import org.springframework.beans.BeansException; -import org.springframework.context.ApplicationContext; -import org.springframework.context.ApplicationContextAware; -import org.springframework.context.annotation.Bean; -import org.springframework.web.servlet.ViewResolver; -import org.springframework.web.servlet.config.annotation.InterceptorRegistry; -import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; -import org.springframework.web.servlet.view.InternalResourceViewResolver; -import org.springframework.web.servlet.view.JstlView; -import org.springframework.web.servlet.view.UrlBasedViewResolver; -import org.springframework.web.servlet.view.tiles3.TilesConfigurer; -import org.springframework.web.servlet.view.tiles3.TilesView; - -import com.mchange.v2.c3p0.ComboPooledDataSource; - -/** - * Configures Spring features in the ECOMP Portal SDK including request - * interceptors and view resolvers. Application should subclass and override - * methods as needed. - */ -public class AppConfig extends WebMvcConfigurerAdapter implements Configurable, ApplicationContextAware { - - EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(AppConfig.class); - - private final List<String> tileDefinitions = new ArrayList<String>(); - protected ApplicationContext appApplicationContext = null; - - public AppConfig() { - //loads all default fields and marks logging - //has been started for each log file type. - initGlobalLocalContext(); - } - - /** - * Creates and returns a new instance of a secondary (order=2) - * {@link ViewResolver} that finds files by adding prefix "/WEB-INF/jsp/" - * and suffix ".jsp" to the base view name. - * - * @return New instance of {@link ViewResolver}. - */ - @Bean - public ViewResolver viewResolver() { - InternalResourceViewResolver viewResolver = new InternalResourceViewResolver(); - viewResolver.setViewClass(JstlView.class); - viewResolver.setPrefix("/WEB-INF/jsp/"); - viewResolver.setSuffix(".jsp"); - viewResolver.setOrder(2); - return viewResolver; - } - - /** - * Loads all the default logging fields into the - * global MDC context and marks each log file type - * that logging has been started. - */ - private void initGlobalLocalContext() { - logger.init(); - } - - /* - * Any requests from the url pattern /static/**, Spring will look for the - * resources from the /static/ Same as <mvc:resources mapping="/static/**" - * location="/static/"/> in xml - */ - @Override - public void addResourceHandlers(ResourceHandlerRegistry registry) { - // registry.addResourceHandler("/static/**").addResourceLocations("/static/"); - registry.addResourceHandler("/**").addResourceLocations("/"); - } - - /** - * Creates and returns a new instance of a {@link DataAccessService} class. - * - * @return New instance of {@link DataAccessService}. - */ - @Bean - public DataAccessService dataAccessService() { - return new DataAccessServiceImpl(); - } - - /** - * Creates and returns a new instance of a {@link SystemProperties} class. - * - * @return New instance of {@link SystemProperties}. - */ - @Bean - public SystemProperties systemProperties() { - return new SystemProperties(); - } - - /** - * Creates and returns a new instance of a {@link MenuBuilder} class. - * - * @return New instance of {@link MenuBuilder}. - */ - @Bean - public MenuBuilder menuBuilder() { - return new MenuBuilder(); - } - - /** - * Creates and returns a new instance of a {@link UserUtils} class. - * - * @return New instance of {@link UserUtils}. - */ - @Bean - public UserUtils userUtil() { - return new UserUtils(); - } - - /** - * Creates and returns a new instance of an {@link AppUtils} class. - * - * @return New instance of {@link AppUtils}. - */ - @Bean - public AppUtils appUtils() { - return new AppUtils(); - } - - /** - * Creates and returns a new instance of a {@link TilesConfigurer} class. - * - * @return New instance of {@link TilesConfigurer}. - */ - @Bean - public TilesConfigurer tilesConfigurer() { - TilesConfigurer tilesConfigurer = new TilesConfigurer(); - tilesConfigurer.setDefinitions(tileDefinitions()); - tilesConfigurer.setCheckRefresh(true); - return tilesConfigurer; - } - - /** - * - * Application Data Source - * - * @return DataSource Object - */ - - @Bean - public DataSource dataSource() throws Exception { - systemProperties(); - ComboPooledDataSource dataSource = new ComboPooledDataSource(); - try { - dataSource.setDriverClass(SystemProperties.getProperty(SystemProperties.DB_DRIVER)); - dataSource.setJdbcUrl(SystemProperties.getProperty(SystemProperties.DB_CONNECTIONURL)); - dataSource.setUser(SystemProperties.getProperty(SystemProperties.DB_USERNAME)); - // dataSource.setPassword(SystemProperties.getProperty(SystemProperties.DB_PASSWOR)); - String password = SystemProperties.getProperty(SystemProperties.DB_PASSWOR); - if (SystemProperties.containsProperty(SystemProperties.DB_ENCRYPT_FLAG)) { - String encryptFlag = SystemProperties.getProperty(SystemProperties.DB_ENCRYPT_FLAG); - if (encryptFlag != null && encryptFlag.equalsIgnoreCase("true")) { - password = CipherUtil.decrypt(password); - } - } - dataSource.setPassword(password); - dataSource - .setMinPoolSize(Integer.parseInt(SystemProperties.getProperty(SystemProperties.DB_MIN_POOL_SIZE))); - dataSource - .setMaxPoolSize(Integer.parseInt(SystemProperties.getProperty(SystemProperties.DB_MAX_POOL_SIZE))); - dataSource.setIdleConnectionTestPeriod( - Integer.parseInt(SystemProperties.getProperty(SystemProperties.IDLE_CONNECTION_TEST_PERIOD))); - dataSource.setTestConnectionOnCheckout(true); - dataSource.setPreferredTestQuery("SELECT 1"); - } catch (Exception e) { - logger.error(EELFLoggerDelegate.errorLogger, "Error initializing database, verify database settings in properties file: " - + UserUtils.getStackTrace(e),AlarmSeverityEnum.CRITICAL); - logger.error(EELFLoggerDelegate.debugLogger, "Error initializing database, verify database settings in properties file: " - + UserUtils.getStackTrace(e),AlarmSeverityEnum.CRITICAL); - // Raise an alarm that opening a connection to the database is - // failed. - logger.logEcompError(AppMessagesEnum.BeDaoSystemError); - throw e; - } - return dataSource; - } - - /* - * TODO: Check whether it is appropriate to extend the list of tile - * definitions at every invocation. - */ - protected String[] tileDefinitions() { - tileDefinitions.add("/WEB-INF/fusion/defs/definitions.xml"); - tileDefinitions.addAll(addTileDefinitions()); - - return tileDefinitions.toArray(new String[0]); - } - - /** - * Creates and returns a new empty list. This method should be overridden by - * child classes. - * - * @return An empty list. - */ - public List<String> addTileDefinitions() { - return new ArrayList<String>(); - } - - /** - * Creates and returns a new instance of a primary (order=1) - * {@link UrlBasedViewResolver} that finds files using the contents of - * definitions.xml files. - * - * @return New instance of {@link UrlBasedViewResolver} - */ - @Bean - public UrlBasedViewResolver tileViewResolver() { - UrlBasedViewResolver viewResolver = new UrlBasedViewResolver(); - viewResolver.setViewClass(TilesView.class); - viewResolver.setOrder(1); - return viewResolver; - } - - /** - * Adds new instances of the following interceptors to the specified - * interceptor registry: {@link SessionTimeoutInterceptor}, - * {@link ResourceInterceptor} - */ - @Override - public void addInterceptors(InterceptorRegistry registry) { - registry.addInterceptor(new SessionTimeoutInterceptor()) - .excludePathPatterns(getExcludeUrlPathsForSessionTimeout()); - registry.addInterceptor(resourceInterceptor()); - } - - /** - * Creates and returns a new instance of a {@link ResourceInterceptor}. - * - * @return New instance of {@link ResourceInterceptor} - */ - @Bean - public ResourceInterceptor resourceInterceptor() { - return new ResourceInterceptor(); - } - - private String[] excludeUrlPathsForSessionTimeout = {}; - - /** - * Gets the array of Strings that are paths excluded for session timeout. - * - * @return Array of String - */ - public String[] getExcludeUrlPathsForSessionTimeout() { - return excludeUrlPathsForSessionTimeout; - } - - /** - * Sets the array of Strings that are paths excluded for session timeout. - */ - public void setExcludeUrlPathsForSessionTimeout(final String... excludeUrlPathsForSessionTimeout) { - this.excludeUrlPathsForSessionTimeout = excludeUrlPathsForSessionTimeout; - } - - - @Override - public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { - appApplicationContext = applicationContext; - - } - -} diff --git a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/AppInitializer.java b/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/AppInitializer.java deleted file mode 100644 index df0d56d6..00000000 --- a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/AppInitializer.java +++ /dev/null @@ -1,69 +0,0 @@ -/*- - * ================================================================================ - * eCOMP Portal SDK - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ================================================================================ - */ -package org.openecomp.portalsdk.core.conf; - -import org.openecomp.portalsdk.core.logging.format.AlarmSeverityEnum; -import org.openecomp.portalsdk.core.logging.logic.EELFLoggerDelegate; -import org.springframework.core.env.ConfigurableEnvironment; -import org.springframework.web.context.WebApplicationContext; -import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer; - -public abstract class AppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer { - - EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(AppInitializer.class); - private final String activeProfile = "src"; - - @Override - protected WebApplicationContext createServletApplicationContext() { - WebApplicationContext context = super.createServletApplicationContext(); - - try { - - ((ConfigurableEnvironment) context.getEnvironment()).setActiveProfiles(activeProfile); - } catch (Exception e) { - - logger.error(EELFLoggerDelegate.errorLogger, "Unable to set the active profile" + e.getMessage(),AlarmSeverityEnum.MAJOR); - throw e; - - } - - return context; - } - - @Override - protected Class<?>[] getRootConfigClasses() { - return null; - } - - @Override - protected Class<?>[] getServletConfigClasses() { - - return new Class[] { AppConfig.class }; - } - - /* - * URL request will direct to the Spring dispatcher for processing - */ - @Override - protected String[] getServletMappings() { - return new String[] { "/" }; - } - -} diff --git a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/Configurable.java b/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/Configurable.java deleted file mode 100644 index 9585e45d..00000000 --- a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/Configurable.java +++ /dev/null @@ -1,38 +0,0 @@ -/*- - * ================================================================================ - * eCOMP Portal SDK - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ================================================================================ - */ -package org.openecomp.portalsdk.core.conf; - -import java.util.List; - -import org.openecomp.portalsdk.core.service.DataAccessService; -import org.springframework.web.servlet.ViewResolver; -import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; - -public interface Configurable { - - public ViewResolver viewResolver(); - - public void addResourceHandlers(ResourceHandlerRegistry registry) ; - - public DataAccessService dataAccessService(); - - public List<String> addTileDefinitions(); - -} diff --git a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/HibernateConfiguration.java b/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/HibernateConfiguration.java deleted file mode 100644 index b70ced48..00000000 --- a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/HibernateConfiguration.java +++ /dev/null @@ -1,155 +0,0 @@ -/*- - * ================================================================================ - * eCOMP Portal SDK - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ================================================================================ - */ -package org.openecomp.portalsdk.core.conf; -import java.sql.Connection; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; - -import javax.sql.DataSource; - -import org.hibernate.SessionFactory; -import org.openecomp.portalsdk.core.logging.format.AlarmSeverityEnum; -import org.openecomp.portalsdk.core.logging.logic.EELFLoggerDelegate; -import org.openecomp.portalsdk.core.util.SystemProperties; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; -import org.springframework.orm.hibernate4.HibernateTransactionManager; -import org.springframework.orm.hibernate4.LocalSessionFactoryBean; -import org.springframework.transaction.annotation.EnableTransactionManagement; - -import com.mchange.v2.c3p0.ComboPooledDataSource; - -@Configuration -@EnableTransactionManagement -public class HibernateConfiguration { - - @Autowired - private SystemProperties systemProperties; - - @Autowired - private HibernateMappingLocatable mappingLocate; - - EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(HibernateConfiguration.class); - - DataSource dataSource; - - - @Bean - public LocalSessionFactoryBean sessionFactory() { - LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean(); - sessionFactory.setDataSource(getDataSource()); - sessionFactory.setPackagesToScan(new String[] { "org.openecomp"}); - sessionFactory.setHibernateProperties(hibernateProperties()); - sessionFactory.setMappingLocations(mappingLocate.getMappingLocations()); - return sessionFactory; - } - - - - - @SuppressWarnings("rawtypes") - @Bean - public Map dataSourceMap() throws Exception { - Connection conn = null; - Statement stmt = null; - Map<String, ComboPooledDataSource> dataSourceMap = new HashMap<String, ComboPooledDataSource>(); - - try { - conn = getDataSource().getConnection(); - stmt = conn.createStatement(); - String sql; - sql = "SELECT schema_id,datasource_type,connection_url,user_name,password,driver_class,min_pool_size,max_pool_size,idle_connection_test_period FROM schema_info"; - ResultSet rs = stmt.executeQuery(sql); - - while (rs.next()) { - ComboPooledDataSource dataSource = new ComboPooledDataSource(); - dataSource.setDriverClass(rs.getString("driver_class")); - dataSource.setJdbcUrl(rs.getString("connection_url")); - dataSource.setUser(rs.getString("user_name")); - dataSource.setPassword(rs.getString("password")); - dataSource.setMinPoolSize(rs.getInt("min_pool_size")); - dataSource.setMaxPoolSize(rs.getInt("max_pool_size")); - dataSource.setIdleConnectionTestPeriod(rs.getInt("idle_connection_test_period")); - dataSourceMap.put(rs.getString("schema_id"), dataSource); - } - rs.close(); - stmt.close(); - conn.close(); - } catch (Exception e) { - logger.error(EELFLoggerDelegate.errorLogger, "Error initializing database, verify database settings in properties file: " + e.getMessage(),AlarmSeverityEnum.CRITICAL); - e.printStackTrace(); - dataSourceMap = null; - throw e; - } finally { - try { - if (stmt != null) - stmt.close(); - } catch (SQLException se2) {} - try { - if (conn != null) - conn.close(); - } catch (SQLException se) { se.printStackTrace();} - } - - return dataSourceMap; - } - - private Properties hibernateProperties() { - Properties properties = new Properties(); - properties.put("hibernate.dialect", SystemProperties.getProperty(SystemProperties.HB_DIALECT)); - properties.put("hibernate.show_sql", SystemProperties.getProperty(SystemProperties.HB_SHOW_SQL)); - return properties; - } - - @Bean - @Autowired - public HibernateTransactionManager transactionManager(SessionFactory s) { - HibernateTransactionManager txManager = new HibernateTransactionManager(); - txManager.setSessionFactory(s); - return txManager; - } - - public SystemProperties getSystemProperties() { - return systemProperties; - } - - public void setSystemProperties(SystemProperties systemProperties) { - this.systemProperties = systemProperties; - } - - - - - public DataSource getDataSource() { - return dataSource; - } - - - @Autowired - public void setDataSource(DataSource dataSource) { - this.dataSource = dataSource; - } - -} diff --git a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/HibernateMappingLocatable.java b/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/HibernateMappingLocatable.java deleted file mode 100644 index a3bbe18d..00000000 --- a/ecomp-sdk/quantum/src/main/java/org/openecomp/portalsdk/core/conf/HibernateMappingLocatable.java +++ /dev/null @@ -1,28 +0,0 @@ -/*- - * ================================================================================ - * eCOMP Portal SDK - * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * ================================================================================ - */ -package org.openecomp.portalsdk.core.conf; - -import org.springframework.core.io.Resource; - -public interface HibernateMappingLocatable { - - public Resource[] getMappingLocations(); - -} |