Merge pull request #728 from ayyoob/devicetype-3.1.0

fixed mb startup issue
revert-dabc3590
Milan Perera 7 years ago committed by GitHub
commit 5754b025f5

@ -104,7 +104,7 @@ public class DeviceAccessBasedMQTTAuthorizer implements IAuthorizer {
try { try {
String topics[] = topic.split("/"); String topics[] = topic.split("/");
String tenantDomainFromTopic = topics[0]; String tenantDomainFromTopic = topics[0];
if ("+".equals(tenantDomainFromTopic)) { if (ALL_TENANT_DOMAIN.equals(tenantDomainFromTopic)) {
if (MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equals(authorizationSubject.getTenantDomain()) if (MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equals(authorizationSubject.getTenantDomain())
&& isUserAuthorized(authorizationSubject, DEFAULT_ADMIN_PERMISSION, UI_EXECUTE)) { && isUserAuthorized(authorizationSubject, DEFAULT_ADMIN_PERMISSION, UI_EXECUTE)) {
return true; return true;
@ -133,8 +133,8 @@ public class DeviceAccessBasedMQTTAuthorizer implements IAuthorizer {
return false; return false;
} catch (FeignException e) { } catch (FeignException e) {
oAuthRequestInterceptor.resetApiApplicationKey(); oAuthRequestInterceptor.resetApiApplicationKey();
if (e.getMessage().contains(GATEWAY_ERROR_CODE) || e.status() == 404) { if (e.getMessage().contains(GATEWAY_ERROR_CODE) || e.status() == 404 || e.status() == 403) {
log.error("Failed to connect to the device authorization service."); log.error("Failed to connect to the device authorization service, Retrying....");
} else { } else {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
} }
@ -181,8 +181,9 @@ public class DeviceAccessBasedMQTTAuthorizer implements IAuthorizer {
} }
} catch (FeignException e) { } catch (FeignException e) {
oAuthRequestInterceptor.resetApiApplicationKey(); oAuthRequestInterceptor.resetApiApplicationKey();
if (e.getMessage().contains(GATEWAY_ERROR_CODE)) { //This is to avoid failure where it tries to call authorization service before the api is published
log.error("Failed to connect to the device authorization service.", e); if (e.getMessage().contains(GATEWAY_ERROR_CODE) || e.status() == 404 || e.status() == 403) {
log.error("Failed to connect to the device authorization service, Retrying....");
} else { } else {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
} }

@ -64,7 +64,7 @@ public class OAuthRequestInterceptor implements RequestInterceptor {
private ApiApplicationRegistrationService apiApplicationRegistrationService; private ApiApplicationRegistrationService apiApplicationRegistrationService;
private TokenIssuerService tokenIssuerService; private TokenIssuerService tokenIssuerService;
private static Log log = LogFactory.getLog(OAuthRequestInterceptor.class); private static Log log = LogFactory.getLog(OAuthRequestInterceptor.class);
private ApiApplicationKey apiApplicationKey; private volatile ApiApplicationKey apiApplicationKey;
/** /**
* Creates an interceptor that authenticates all requests. * Creates an interceptor that authenticates all requests.
@ -124,6 +124,7 @@ public class OAuthRequestInterceptor implements RequestInterceptor {
} }
public void resetApiApplicationKey() { public void resetApiApplicationKey() {
tokenInfo = null;
apiApplicationKey = null; apiApplicationKey = null;
tokenIssuerService = null; tokenIssuerService = null;
} }

Loading…
Cancel
Save