summaryrefslogtreecommitdiffstats
path: root/ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicUtil.java')
-rw-r--r--ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicUtil.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicUtil.java b/ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicUtil.java
index 2744796e..ff1edb74 100644
--- a/ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicUtil.java
+++ b/ecomp-sdk/epsdk-music/src/main/java/org/onap/portalapp/music/util/MusicUtil.java
@@ -46,6 +46,7 @@ import java.nio.ByteBuffer;
import java.time.Duration;
import java.time.Instant;
import java.util.Arrays;
+import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import java.util.zip.GZIPInputStream;
@@ -64,6 +65,7 @@ public class MusicUtil {
private static String atomicPut = MusicProperties.getProperty(MusicProperties.MUSIC_ATOMIC_PUT);
private static String atomicGet = MusicProperties.getProperty(MusicProperties.MUSIC_ATOMIC_GET);
private static String cached = MusicProperties.getProperty(MusicProperties.MUSIC_CACHE);
+ private static String cleanUpFreq = MusicProperties.getProperty(MusicProperties.MUSIC_CLEAN_UP_FREQUENCY);
private static String musicSerializeCompress = MusicProperties.getProperty(MusicProperties.MUSIC_SERIALIZE_COMPRESS);
public static boolean isSessionMetaAttr(String key){
return sessionAttrNameSet.contains(key);
@@ -127,6 +129,23 @@ public class MusicUtil {
musicSession.setMaxInactiveInterval(Duration.parse(row.getString("max_inactive_interval")));
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();
+ return excludedApiSet.contains(api);
+ }
public static boolean isMusicSerializeCompress(){
if(musicSerializeCompress==null){
@@ -159,4 +178,25 @@ public class MusicUtil {
}
return cached.trim().equalsIgnoreCase("true");
}
+
+ public static int convertHoursToMillSec(int hour){
+ return hour*3600000;
+ }
+
+ public static boolean cleanUp(){
+ Date lastCleanUpDate = MusicCleanUp.getInstance().getLastCleanUpTime();
+ if(lastCleanUpDate==null)
+ return false;
+ else{
+ int cleanUpDurationMili = convertHoursToMillSec(Integer.valueOf(cleanUpFreq));
+ Date currentTime = new Date();
+ long diffInMillies = Math.abs(currentTime.getTime() - lastCleanUpDate.getTime());
+ if(diffInMillies > cleanUpDurationMili){
+ MusicCleanUp.getInstance().updateLastCleanUpTimeToCurrent();
+ return true;
+ }
+ else
+ return false;
+ }
+ }
}