Compare commits

...

2 Commits

Author SHA1 Message Date
Massimiliano Assante a857397a24 releasing 2024-05-15 17:57:05 +02:00
Ahmed Salah Tawfik Ibrahim 59e74ddd3a multiple trials to get app profile 2024-05-14 15:57:34 +02:00
4 changed files with 21 additions and 9 deletions

View File

@ -4,6 +4,9 @@
All notable changes to this project will be documented in this file.
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [v1.8.1] - 2023-05-14
- Bug 27457: get application profile multiple times before settling on sitelandingpath
## [v1.8.0] - 2022-05-05

View File

@ -11,7 +11,7 @@
<groupId>org.gcube.applicationsupportlayer</groupId>
<artifactId>aslsocial</artifactId>
<version>1.8.0</version>
<version>1.8.1</version>
<packaging>jar</packaging>
<name>Social Portal ASL Extension</name>
<description>

View File

@ -42,6 +42,8 @@ public class ApplicationNotificationsManager extends SocialPortalBridge implemen
public static final String USER_MESSAGES_FRIENDLY_URL = "/messages";
public static final String USER_NOTIFICATION_FRIENDLY_URL = "/notifications";
private final int MAX_TRIAL = 10;
private String portalName;
private String senderEmail;
private String portalURL;
@ -204,14 +206,18 @@ public class ApplicationNotificationsManager extends SocialPortalBridge implemen
* @return .
*/
private String getApplicationUrl() {
if (applicationProfile != null && applicationProfile.getUrl() != null) {
_log.trace("getApplicationUrl="+applicationProfile.getUrl());
return applicationProfile.getUrl();
}
else {
_log.warn("applicationProfile NULL or url is empty returning " + siteLandingPagePath);
return siteLandingPagePath;
int count = 0;
while (count < MAX_TRIAL){
if (applicationProfile != null && applicationProfile.getUrl() != null) {
_log.trace("getApplicationUrl="+applicationProfile.getUrl());
return applicationProfile.getUrl();
}
if (applicationProfile != null && applicationProfile.getKey() != null)
applicationProfile = getProfileFromInfrastrucure(applicationProfile.getKey());
count++;
}
_log.warn("applicationProfile NULL or url is empty returning " + siteLandingPagePath);
return siteLandingPagePath;
}
/**
* {@inheritDoc}

View File

@ -39,6 +39,8 @@ public class SocialPortalBridge {
protected ApplicationProfile applicationProfile;
//unique instance
private static DatabookStore store;
private String portletClassName;
/**
*
* @param scope the current scope
@ -60,6 +62,7 @@ public class SocialPortalBridge {
public SocialPortalBridge(String scope, SocialNetworkingUser currUser, String portletClassName) {
this(scope, currUser);
this.applicationProfile = getProfileFromInfrastrucure(portletClassName);
this.portletClassName = portletClassName;
_log.debug("ASLSocial called on " + portletClassName);
}
@ -98,7 +101,7 @@ public class SocialPortalBridge {
* @param portletClassName your servlet class name will be used ad unique identifier for your applicationProfile
* @return the applicationProfile profile
*/
private ApplicationProfile getProfileFromInfrastrucure(String portletClassName) {
protected ApplicationProfile getProfileFromInfrastrucure(String portletClassName) {
ScopeBean scope = new ScopeBean(currScope);
_log.debug("Trying to fetch applicationProfile profile from the infrastructure for " + portletClassName + " scope: " + scope);
try {