pom File changes 37/47737/1
authorLo, WEI-TING(wl849v) <wl849v@att.com>
Tue, 15 May 2018 22:55:56 +0000 (18:55 -0400)
committerLo, WEI-TING(wl849v) <wl849v@att.com>
Tue, 15 May 2018 22:55:56 +0000 (18:55 -0400)
Issue-ID: PORTAL-210

Included the music pom changes.

Change-Id: Ie685af93f3229603fc9796a43149d6f86cb995af
Signed-off-by: Lo, WEI-TING(wl849v) <wl849v@att.com>
ecomp-sdk/epsdk-app-os/src/main/resources/music.properties
ecomp-sdk/epsdk-app-os/src/main/webapp/WEB-INF/web.xml
ecomp-sdk/epsdk-music/pom.xml
ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/conf/MusicSession.java
ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/filter/MusicSessionRepositoryFilter.java [new file with mode: 0644]
ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicProperties.java
ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicUtil.java

index e30f385..03d42c2 100644 (file)
@@ -1,28 +1,17 @@
-music.endpoint = http://vm-ep-dev4.research.att.com/MUSIC/rest/
-music.version = v2
-music.keyspace = keyspaces
 music.session.keyspace = test_session
 music.session.attr.tables = spring_session_attributes
 music.session.meta.tables = spring_session
-music.x.minor.version = 3
-music.x.patch.version = 0 
-music.ns = com.att.ecomp.portal.demeter
-music.user.id = m00468@portal.ecomp.att.com
-music.password = friedG33nS-
-music.consistency.info = type
-music.consistency.info.value = eventual
 music.cache = false
 music.serialize.compress = true
 music.session.max.inactive.interval.seconds = 1800
+music.exclude.api = /portalApi/healthCheck,/portalApi/healthCheckSuspend,/portalApi/healthCheckResume,/auxapi/.*
 #By default it's eventual
 music.atomic.get = false
 music.atomic.put = false
-#clean up duration & threshold (hour)
-#how often the session clean up would happen
+#how often the session clean up would happen (hour)
 music.cleanup.frequency = 6
-#how old of session need to clean up
+#how old of session need to be cleaned up (hour)
 music.cleanup.threshold = 10
-
 cassandra.host=135.197.226.103
 zookeeper.host=135.197.226.103, 135.197.226.108, 135.197.226.119
 cassandra.user=cassandra
index b5963e6..8392e8d 100644 (file)
@@ -23,7 +23,7 @@
        </filter-mapping>
        <filter>
                <filter-name>springSessionRepositoryFilter</filter-name>
-               <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
+               <filter-class>org.onap.portalapp.music.filter.MusicSessionRepositoryFilter</filter-class>
        </filter>
        <filter-mapping>
                <filter-name>springSessionRepositoryFilter</filter-name>
index d977750..98396e2 100644 (file)
                        </exclusions>
                </dependency>
 
+               <dependency>
+               <groupId>javax.servlet</groupId>
+               <artifactId>javax.servlet-api</artifactId>
+               <version>3.0.1</version>
+               <scope>provided</scope>
+               </dependency>
+               
                <!-- Music -->
                <dependency>
                        <groupId>org.onap.music</groupId>
                        <artifactId>MUSIC</artifactId>
-                       <version>2.5.3</version>
+                       <version>2.5.4</version>
                </dependency>
                
                <!-- Mapper -->
index 245e8d1..1f68bda 100644 (file)
@@ -158,7 +158,7 @@ public final class MusicSession implements Session, Serializable  {
        public void setLastAccessedTime(Instant lastAccessedTime) {
                logger.debug(EELFLoggerDelegate.debugLogger, "setLastAccessedTime: start");
                try{
-                       MusicService.setAttribute(MusicProperties.LAST_ACCESS_TIME, this.lastAccessedTime, this.id);
+                       MusicService.setAttribute(MusicProperties.LAST_ACCESS_TIME, lastAccessedTime, this.id);
                }catch(Exception e){
                        logger.error(EELFLoggerDelegate.errorLogger, "setLastAccessedTime failed with id " + this.id, e);
                }
diff --git a/ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/filter/MusicSessionRepositoryFilter.java b/ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/filter/MusicSessionRepositoryFilter.java
new file mode 100644 (file)
index 0000000..826f4c6
--- /dev/null
@@ -0,0 +1,70 @@
+/*
+ * ============LICENSE_START==========================================
+ * ONAP Portal SDK
+ * ===================================================================
+ * Copyright Â© 2017 AT&T Intellectual Property. All rights reserved.
+ * ===================================================================
+ *
+ * Unless otherwise specified, all software contained herein is licensed
+ * under the Apache License, Version 2.0 (the "License");
+ * you may not use this software 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.
+ *
+ * Unless otherwise specified, all documentation contained herein is licensed
+ * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
+ * you may not use this documentation except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *             https://creativecommons.org/licenses/by/4.0/
+ *
+ * Unless required by applicable law or agreed to in writing, documentation
+ * 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.
+ *
+ * ============LICENSE_END============================================
+ *
+ *.
+ */
+
+package org.onap.portalapp.music.filter;
+
+import java.io.IOException;
+
+import javax.servlet.FilterChain;
+import javax.servlet.ServletException;
+import javax.servlet.ServletRequest;
+import javax.servlet.ServletResponse;
+import javax.servlet.http.HttpServletRequest;
+
+import org.onap.music.eelf.logging.EELFLoggerDelegate;
+import org.onap.portalapp.music.util.MusicUtil;
+import org.springframework.web.filter.DelegatingFilterProxy;
+
+public class MusicSessionRepositoryFilter extends DelegatingFilterProxy{
+       private static final EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(MusicUtil.class);
+
+       @Override
+       public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
+                       throws ServletException, IOException {
+               try{
+                       if (request instanceof HttpServletRequest) {
+                               String path = ((HttpServletRequest)request).getRequestURI().substring(((HttpServletRequest) request).getContextPath().length());                 
+                               if(MusicUtil.isExcludedApi(path))
+                                       request.setAttribute("org.springframework.session.web.http.SessionRepositoryFilter.FILTERED", Boolean.TRUE);
+                       }       
+               }catch(Exception e){
+                       logger.error(EELFLoggerDelegate.errorLogger, "Failed to check the exclude apis ", e);
+               }
+               super.doFilter(request, response, filterChain);
+       }
+}
\ No newline at end of file
index 34b0a5b..802634b 100644 (file)
@@ -93,6 +93,8 @@ public class MusicProperties {
                
        public static final String MUSIC_ATOMIC_POST = "music.atomic.post";
        
+       public static final String MUSIC_EXCLUDE_API = "music.exclude.api";
+       
        public static final String MUSIC_CLEAN_UP_FREQUENCY = "music.cleanup.frequency";
        
        public static final String MUSIC_CLEAN_UP_THRESHOLD = "music.cleanup.threshold";
index 8819af2..dfd4f7f 100644 (file)
@@ -130,6 +130,27 @@ public class MusicUtil {
                return musicSession;
        }
 
+       public static Set<String> getMusicExcludedAPI(){
+               Set<String> excludedApiSet = new HashSet<>();
+               String musicExcludedApi = MusicProperties.getProperty(MusicProperties.MUSIC_EXCLUDE_API);
+               String[] musicExcludedApiArray = musicExcludedApi.split(",");
+               if(musicExcludedApiArray.length>0){
+                       for(String str : musicExcludedApiArray){
+                               excludedApiSet.add(str.trim());
+                       }
+               }
+               return excludedApiSet;
+       }
+       
+       public static boolean isExcludedApi(String api){
+               Set<String> excludedApiSet = getMusicExcludedAPI();
+               for(String str: excludedApiSet){
+                       if(api.matches(str))
+                               return true;
+               }
+               return false;
+       }
+       
        public static boolean isMusicSerializeCompress(){
                if(musicSerializeCompress==null){
                        logger.error(EELFLoggerDelegate.errorLogger, "Failed to read property file " + MusicProperties.MUSIC_SERIALIZE_COMPRESS +" fall back to eventual put");