mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Get ApiApplicationInfo and access token into single object
Co-authored-by: Pasindu Rupasinghe <pasindu@entgra.io> Co-committed-by: Pasindu Rupasinghe <pasindu@entgra.io>
This commit is contained in:
parent
438f06ef45
commit
cb2fb990e7
@ -25,6 +25,7 @@ import io.entgra.device.mgt.core.apimgt.application.extension.exception.APIManag
|
|||||||
import io.entgra.device.mgt.core.apimgt.application.extension.internal.APIApplicationManagerExtensionDataHolder;
|
import io.entgra.device.mgt.core.apimgt.application.extension.internal.APIApplicationManagerExtensionDataHolder;
|
||||||
import io.entgra.device.mgt.core.apimgt.application.extension.util.APIManagerUtil;
|
import io.entgra.device.mgt.core.apimgt.application.extension.util.APIManagerUtil;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.KeyManager;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.KeyManager;
|
||||||
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.TokenInfo;
|
||||||
import io.entgra.device.mgt.core.device.mgt.common.exceptions.MetadataKeyAlreadyExistsException;
|
import io.entgra.device.mgt.core.device.mgt.common.exceptions.MetadataKeyAlreadyExistsException;
|
||||||
import io.entgra.device.mgt.core.device.mgt.common.exceptions.MetadataManagementException;
|
import io.entgra.device.mgt.core.device.mgt.common.exceptions.MetadataManagementException;
|
||||||
import io.entgra.device.mgt.core.device.mgt.common.metadata.mgt.Metadata;
|
import io.entgra.device.mgt.core.device.mgt.common.metadata.mgt.Metadata;
|
||||||
@ -119,131 +120,11 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
String keyType,
|
String keyType,
|
||||||
boolean isAllowedAllDomains,
|
boolean isAllowedAllDomains,
|
||||||
String validityTime, String accessToken) throws APIManagerException {
|
String validityTime, String accessToken) throws APIManagerException {
|
||||||
ConsumerRESTAPIServices consumerRESTAPIServices =
|
TokenInfo tokenInfo = new TokenInfo();
|
||||||
APIApplicationManagerExtensionDataHolder.getInstance().getConsumerRESTAPIServices();
|
tokenInfo.setApiApplicationInfo(null);
|
||||||
|
tokenInfo.setAccessToken(accessToken);
|
||||||
|
|
||||||
try {
|
return generateAndRetrieveApplicationKeys(applicationName, tags ,keyType, null, isAllowedAllDomains, validityTime, tokenInfo);
|
||||||
List<APIInfo> uniqueApiList = new ArrayList<>();
|
|
||||||
|
|
||||||
Map<String, String> headerParams = new HashMap<>();
|
|
||||||
if (!"carbon.super".equals(PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantDomain(true))) {
|
|
||||||
headerParams.put("X-WSO2-Tenant", "carbon.super");
|
|
||||||
}
|
|
||||||
|
|
||||||
for (String tag : tags) {
|
|
||||||
Map<String, String> queryParams = new HashMap<>();
|
|
||||||
queryParams.put("tag", tag);
|
|
||||||
|
|
||||||
APIInfo[] apiInfos = consumerRESTAPIServices.getAllApis(null, accessToken, queryParams, headerParams);
|
|
||||||
|
|
||||||
uniqueApiList.addAll(List.of(apiInfos));
|
|
||||||
Set<APIInfo> taggedAPISet = new HashSet<>(uniqueApiList);
|
|
||||||
uniqueApiList.clear();
|
|
||||||
uniqueApiList.addAll(taggedAPISet);
|
|
||||||
}
|
|
||||||
|
|
||||||
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application[] applications =
|
|
||||||
consumerRESTAPIServices.getAllApplications(null, accessToken, applicationName);
|
|
||||||
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application application;
|
|
||||||
boolean isNewApplication = false;
|
|
||||||
if (applications.length == 0) {
|
|
||||||
isNewApplication = true;
|
|
||||||
application = new io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application();
|
|
||||||
application.setName(applicationName);
|
|
||||||
application = consumerRESTAPIServices.createApplication(null, accessToken, application);
|
|
||||||
addSubscriptions(application, uniqueApiList, accessToken);
|
|
||||||
} else {
|
|
||||||
if (applications.length == 1) {
|
|
||||||
Optional<io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application> applicationOpt =
|
|
||||||
Arrays.stream(applications).findFirst();
|
|
||||||
application = applicationOpt.get();
|
|
||||||
Subscription[] subscriptions = consumerRESTAPIServices.getAllSubscriptions(null, accessToken,
|
|
||||||
application.getApplicationId());
|
|
||||||
Arrays.stream(subscriptions).map(Subscription::getApiInfo).forEachOrdered(uniqueApiList::remove);
|
|
||||||
addSubscriptions(application, uniqueApiList, accessToken);
|
|
||||||
} else {
|
|
||||||
String msg = "Found more than one application for application name: " + applicationName;
|
|
||||||
log.error(msg);
|
|
||||||
throw new APIManagerException(msg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
MetadataManagementService metadataManagementService = APIApplicationManagerExtensionDataHolder.getInstance().getMetadataManagementService();
|
|
||||||
if (isNewApplication) {
|
|
||||||
KeyManager[] keyManagers = consumerRESTAPIServices.getAllKeyManagers(null, accessToken);
|
|
||||||
KeyManager keyManager;
|
|
||||||
if (keyManagers.length == 1) {
|
|
||||||
keyManager = keyManagers[0];
|
|
||||||
} else {
|
|
||||||
String msg =
|
|
||||||
"Found invalid number of key managers. No of key managers found from the APIM: " + keyManagers.length;
|
|
||||||
throw new APIManagerException(msg);
|
|
||||||
}
|
|
||||||
ApplicationKey applicationKey = consumerRESTAPIServices.generateApplicationKeys(null, accessToken,
|
|
||||||
application.getApplicationId(), keyManager.getName(), keyType, validityTime);
|
|
||||||
ApiApplicationKey apiApplicationKey = new ApiApplicationKey();
|
|
||||||
apiApplicationKey.setConsumerKey(applicationKey.getConsumerKey());
|
|
||||||
apiApplicationKey.setConsumerSecret(applicationKey.getConsumerSecret());
|
|
||||||
|
|
||||||
Metadata metaData = new Metadata();
|
|
||||||
metaData.setMetaKey(applicationName);
|
|
||||||
String metaValue = application.getApplicationId() + ":" + applicationKey.getKeyMappingId();
|
|
||||||
metaData.setMetaValue(metaValue);
|
|
||||||
try {
|
|
||||||
metadataManagementService.createMetadata(metaData);
|
|
||||||
return apiApplicationKey;
|
|
||||||
} catch (MetadataManagementException e) {
|
|
||||||
String msg = "Error occurred while creating the meta data entry for mata key: " + applicationName;
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new APIManagerException(msg, e);
|
|
||||||
} catch (MetadataKeyAlreadyExistsException e) {
|
|
||||||
String msg = "Found duplicate meta value entry for meta key: " + applicationName;
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new APIManagerException(msg, e);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
try {
|
|
||||||
Metadata metaData = metadataManagementService.retrieveMetadata(applicationName);
|
|
||||||
if (metaData == null) {
|
|
||||||
String msg = "Couldn't find application key data from meta data mgt service. Meta key: "
|
|
||||||
+ applicationName;
|
|
||||||
log.error(msg);
|
|
||||||
throw new APIManagerException(msg);
|
|
||||||
}
|
|
||||||
String[] metaValues = metaData.getMetaValue().split(":");
|
|
||||||
if (metaValues.length != 2) {
|
|
||||||
String msg = "Found invalid Meta value for meta key: " + applicationName + ". Meta Value: "
|
|
||||||
+ metaData.getMetaValue();
|
|
||||||
log.error(msg);
|
|
||||||
throw new APIManagerException(msg);
|
|
||||||
}
|
|
||||||
String applicationId = metaValues[0];
|
|
||||||
String keyMappingId = metaValues[1];
|
|
||||||
ApplicationKey applicationKey = consumerRESTAPIServices.getKeyDetails(null, accessToken, applicationId,
|
|
||||||
keyMappingId);
|
|
||||||
ApiApplicationKey apiApplicationKey = new ApiApplicationKey();
|
|
||||||
apiApplicationKey.setConsumerKey(applicationKey.getConsumerKey());
|
|
||||||
apiApplicationKey.setConsumerSecret(applicationKey.getConsumerSecret());
|
|
||||||
return apiApplicationKey;
|
|
||||||
} catch (MetadataManagementException e) {
|
|
||||||
String msg = "Error occurred while getting meta data for meta key: " + applicationName;
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new APIManagerException(msg, e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (APIServicesException e) {
|
|
||||||
String msg = "Error occurred while processing the response of APIM REST endpoints.";
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new APIManagerException(msg, e);
|
|
||||||
} catch (BadRequestException e) {
|
|
||||||
String msg = "Provided incorrect payload when invoking APIM REST endpoints.";
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new APIManagerException(msg, e);
|
|
||||||
} catch (UnexpectedResponseException e) {
|
|
||||||
String msg = "Error occurred while invoking APIM REST endpoints.";
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new APIManagerException(msg, e);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -254,10 +135,23 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
throws APIManagerException {
|
throws APIManagerException {
|
||||||
|
|
||||||
|
|
||||||
|
ApiApplicationInfo applicationInfo = getApplicationInfo(username, password);
|
||||||
|
|
||||||
|
TokenInfo tokenInfo = new TokenInfo();
|
||||||
|
tokenInfo.setApiApplicationInfo(applicationInfo);
|
||||||
|
tokenInfo.setAccessToken(null);
|
||||||
|
|
||||||
|
return generateAndRetrieveApplicationKeys(applicationName, tags, keyType, username,isAllowedAllDomains, validityTime, tokenInfo);
|
||||||
|
}
|
||||||
|
|
||||||
|
private ApiApplicationKey generateAndRetrieveApplicationKeys(String applicationName, String[] tags,
|
||||||
|
String keyType, String username,
|
||||||
|
boolean isAllowedAllDomains,
|
||||||
|
String validityTime, TokenInfo tokenInfo) throws APIManagerException {
|
||||||
|
|
||||||
ConsumerRESTAPIServices consumerRESTAPIServices =
|
ConsumerRESTAPIServices consumerRESTAPIServices =
|
||||||
APIApplicationManagerExtensionDataHolder.getInstance().getConsumerRESTAPIServices();
|
APIApplicationManagerExtensionDataHolder.getInstance().getConsumerRESTAPIServices();
|
||||||
|
|
||||||
ApiApplicationInfo applicationInfo = getApplicationInfo(username, password);
|
|
||||||
try {
|
try {
|
||||||
List<APIInfo> uniqueApiList = new ArrayList<>();
|
List<APIInfo> uniqueApiList = new ArrayList<>();
|
||||||
|
|
||||||
@ -270,7 +164,7 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
Map<String, String> queryParams = new HashMap<>();
|
Map<String, String> queryParams = new HashMap<>();
|
||||||
queryParams.put("tag", tag);
|
queryParams.put("tag", tag);
|
||||||
|
|
||||||
APIInfo[] apiInfos = consumerRESTAPIServices.getAllApis(applicationInfo, null, queryParams, headerParams);
|
APIInfo[] apiInfos = consumerRESTAPIServices.getAllApis(tokenInfo, queryParams, headerParams);
|
||||||
|
|
||||||
uniqueApiList.addAll(List.of(apiInfos));
|
uniqueApiList.addAll(List.of(apiInfos));
|
||||||
Set<APIInfo> taggedAPISet = new HashSet<>(uniqueApiList);
|
Set<APIInfo> taggedAPISet = new HashSet<>(uniqueApiList);
|
||||||
@ -279,24 +173,23 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
}
|
}
|
||||||
|
|
||||||
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application[] applications =
|
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application[] applications =
|
||||||
consumerRESTAPIServices.getAllApplications(applicationInfo, null, applicationName);
|
consumerRESTAPIServices.getAllApplications(tokenInfo, applicationName);
|
||||||
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application application;
|
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application application;
|
||||||
boolean isNewApplication = false;
|
boolean isNewApplication = false;
|
||||||
if (applications.length == 0) {
|
if (applications.length == 0) {
|
||||||
isNewApplication = true;
|
isNewApplication = true;
|
||||||
application = new io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application();
|
application = new io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application();
|
||||||
application.setName(applicationName);
|
application.setName(applicationName);
|
||||||
application = consumerRESTAPIServices.createApplication(applicationInfo, null, application);
|
application = consumerRESTAPIServices.createApplication(tokenInfo, application);
|
||||||
addSubscriptions(application, uniqueApiList, applicationInfo);
|
addSubscriptions(application, uniqueApiList, tokenInfo);
|
||||||
} else {
|
} else {
|
||||||
if (applications.length == 1) {
|
if (applications.length == 1) {
|
||||||
Optional<io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application> applicationOpt =
|
Optional<io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application> applicationOpt =
|
||||||
Arrays.stream(applications).findFirst();
|
Arrays.stream(applications).findFirst();
|
||||||
application = applicationOpt.get();
|
application = applicationOpt.get();
|
||||||
Subscription[] subscriptions = consumerRESTAPIServices.getAllSubscriptions(applicationInfo, null,
|
Subscription[] subscriptions = consumerRESTAPIServices.getAllSubscriptions(tokenInfo, application.getApplicationId());
|
||||||
application.getApplicationId());
|
|
||||||
Arrays.stream(subscriptions).map(Subscription::getApiInfo).forEachOrdered(uniqueApiList::remove);
|
Arrays.stream(subscriptions).map(Subscription::getApiInfo).forEachOrdered(uniqueApiList::remove);
|
||||||
addSubscriptions(application, uniqueApiList, applicationInfo);
|
addSubscriptions(application, uniqueApiList, tokenInfo);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Found more than one application for application name: " + applicationName;
|
String msg = "Found more than one application for application name: " + applicationName;
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -306,7 +199,7 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
|
|
||||||
MetadataManagementService metadataManagementService = APIApplicationManagerExtensionDataHolder.getInstance().getMetadataManagementService();
|
MetadataManagementService metadataManagementService = APIApplicationManagerExtensionDataHolder.getInstance().getMetadataManagementService();
|
||||||
if (isNewApplication) {
|
if (isNewApplication) {
|
||||||
KeyManager[] keyManagers = consumerRESTAPIServices.getAllKeyManagers(applicationInfo, null);
|
KeyManager[] keyManagers = consumerRESTAPIServices.getAllKeyManagers(tokenInfo);
|
||||||
KeyManager keyManager;
|
KeyManager keyManager;
|
||||||
if (keyManagers.length == 1) {
|
if (keyManagers.length == 1) {
|
||||||
keyManager = keyManagers[0];
|
keyManager = keyManagers[0];
|
||||||
@ -315,8 +208,8 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
"Found invalid number of key managers. No of key managers found from the APIM: " + keyManagers.length;
|
"Found invalid number of key managers. No of key managers found from the APIM: " + keyManagers.length;
|
||||||
throw new APIManagerException(msg);
|
throw new APIManagerException(msg);
|
||||||
}
|
}
|
||||||
ApplicationKey applicationKey = consumerRESTAPIServices.generateApplicationKeys(applicationInfo, null,
|
ApplicationKey applicationKey = consumerRESTAPIServices.generateApplicationKeys(tokenInfo, application.getApplicationId(),
|
||||||
application.getApplicationId(), keyManager.getName(), keyType, validityTime);
|
keyManager.getName(), keyType, validityTime);
|
||||||
ApiApplicationKey apiApplicationKey = new ApiApplicationKey();
|
ApiApplicationKey apiApplicationKey = new ApiApplicationKey();
|
||||||
apiApplicationKey.setConsumerKey(applicationKey.getConsumerKey());
|
apiApplicationKey.setConsumerKey(applicationKey.getConsumerKey());
|
||||||
apiApplicationKey.setConsumerSecret(applicationKey.getConsumerSecret());
|
apiApplicationKey.setConsumerSecret(applicationKey.getConsumerSecret());
|
||||||
@ -355,7 +248,7 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
}
|
}
|
||||||
String applicationId = metaValues[0];
|
String applicationId = metaValues[0];
|
||||||
String keyMappingId = metaValues[1];
|
String keyMappingId = metaValues[1];
|
||||||
ApplicationKey applicationKey = consumerRESTAPIServices.getKeyDetails(applicationInfo, null, applicationId, keyMappingId);
|
ApplicationKey applicationKey = consumerRESTAPIServices.getKeyDetails(tokenInfo, applicationId, keyMappingId);
|
||||||
ApiApplicationKey apiApplicationKey = new ApiApplicationKey();
|
ApiApplicationKey apiApplicationKey = new ApiApplicationKey();
|
||||||
apiApplicationKey.setConsumerKey(applicationKey.getConsumerKey());
|
apiApplicationKey.setConsumerKey(applicationKey.getConsumerKey());
|
||||||
apiApplicationKey.setConsumerSecret(applicationKey.getConsumerSecret());
|
apiApplicationKey.setConsumerSecret(applicationKey.getConsumerSecret());
|
||||||
@ -387,7 +280,7 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
*
|
*
|
||||||
* @param application {@link io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application}
|
* @param application {@link io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application}
|
||||||
* @param apiInfos {@link List<APIInfo>}
|
* @param apiInfos {@link List<APIInfo>}
|
||||||
* @param apiApplicationInfo {@link ApiApplicationInfo}
|
* @param tokenInfo {@link TokenInfo}
|
||||||
*
|
*
|
||||||
* @throws BadRequestException if incorrect data provided to call subscribing REST API.
|
* @throws BadRequestException if incorrect data provided to call subscribing REST API.
|
||||||
* @throws UnexpectedResponseException if error occurred while processing the subscribing REST API.
|
* @throws UnexpectedResponseException if error occurred while processing the subscribing REST API.
|
||||||
@ -395,8 +288,9 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
*/
|
*/
|
||||||
private void addSubscriptions(
|
private void addSubscriptions(
|
||||||
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application application,
|
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application application,
|
||||||
List<APIInfo> apiInfos, ApiApplicationInfo apiApplicationInfo)
|
List<APIInfo> apiInfos, TokenInfo tokenInfo)
|
||||||
throws BadRequestException, UnexpectedResponseException, APIServicesException {
|
throws BadRequestException, UnexpectedResponseException, APIServicesException {
|
||||||
|
|
||||||
ConsumerRESTAPIServices consumerRESTAPIServices =
|
ConsumerRESTAPIServices consumerRESTAPIServices =
|
||||||
APIApplicationManagerExtensionDataHolder.getInstance().getConsumerRESTAPIServices();
|
APIApplicationManagerExtensionDataHolder.getInstance().getConsumerRESTAPIServices();
|
||||||
|
|
||||||
@ -407,24 +301,8 @@ public class APIManagementProviderServiceImpl implements APIManagementProviderSe
|
|||||||
subscription.setApplicationId(application.getApplicationId());
|
subscription.setApplicationId(application.getApplicationId());
|
||||||
subscriptionList.add(subscription);
|
subscriptionList.add(subscription);
|
||||||
});
|
});
|
||||||
consumerRESTAPIServices.createSubscriptions(apiApplicationInfo, null, subscriptionList);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void addSubscriptions(
|
consumerRESTAPIServices.createSubscriptions(tokenInfo, subscriptionList);
|
||||||
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application application,
|
|
||||||
List<APIInfo> apiInfos, String accessToken)
|
|
||||||
throws BadRequestException, UnexpectedResponseException, APIServicesException {
|
|
||||||
ConsumerRESTAPIServices consumerRESTAPIServices =
|
|
||||||
APIApplicationManagerExtensionDataHolder.getInstance().getConsumerRESTAPIServices();
|
|
||||||
|
|
||||||
List<Subscription> subscriptionList = new ArrayList<>();
|
|
||||||
apiInfos.forEach(apiInfo -> {
|
|
||||||
Subscription subscription = new Subscription();
|
|
||||||
subscription.setApiId(apiInfo.getId());
|
|
||||||
subscription.setApplicationId(application.getApplicationId());
|
|
||||||
subscriptionList.add(subscription);
|
|
||||||
});
|
|
||||||
consumerRESTAPIServices.createSubscriptions(null, accessToken, subscriptionList);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -766,7 +644,7 @@ Otherwise, Generate Application Keys and return them
|
|||||||
throw new APIManagerException(errorMsg, e);
|
throw new APIManagerException(errorMsg, e);
|
||||||
}
|
}
|
||||||
|
|
||||||
ApiApplicationInfo applicationInfo = null;
|
ApiApplicationInfo applicationInfo = new ApiApplicationInfo();
|
||||||
applicationInfo.setClientId(apiApplicationKey.getClientId());
|
applicationInfo.setClientId(apiApplicationKey.getClientId());
|
||||||
applicationInfo.setClientSecret(apiApplicationKey.getClientSecret());
|
applicationInfo.setClientSecret(apiApplicationKey.getClientSecret());
|
||||||
applicationInfo.setAccess_token(accessTokenInfo.getAccess_token());
|
applicationInfo.setAccess_token(accessTokenInfo.getAccess_token());
|
||||||
|
|||||||
@ -19,7 +19,7 @@
|
|||||||
package io.entgra.device.mgt.core.apimgt.extension.rest.api;
|
package io.entgra.device.mgt.core.apimgt.extension.rest.api;
|
||||||
|
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.*;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.*;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.ApiApplicationInfo;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.TokenInfo;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.APIServicesException;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.APIServicesException;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.BadRequestException;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.BadRequestException;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.UnexpectedResponseException;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.UnexpectedResponseException;
|
||||||
@ -28,39 +28,36 @@ import java.util.List;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
public interface ConsumerRESTAPIServices {
|
public interface ConsumerRESTAPIServices {
|
||||||
Application[] getAllApplications(ApiApplicationInfo applicationInfo, String accessToken, String appName)
|
Application[] getAllApplications(TokenInfo tokenInfo, String appName)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
Application getDetailsOfAnApplication(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId)
|
Application getDetailsOfAnApplication(TokenInfo tokenInfo, String applicationId)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
Application createApplication(ApiApplicationInfo apiApplicationInfo, String accessToken, Application application)
|
Application createApplication(TokenInfo tokenInfo, Application application)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
Boolean deleteApplication(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId)
|
Boolean deleteApplication(TokenInfo tokenInfo, String applicationId)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
Subscription[] getAllSubscriptions(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId)
|
Subscription[] getAllSubscriptions(TokenInfo tokenInfo, String applicationId)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
APIInfo[] getAllApis(ApiApplicationInfo apiApplicationInfo, String accessToken, Map<String, String> queryParams,
|
APIInfo[] getAllApis(TokenInfo tokenInfo, Map<String, String> queryParams, Map<String, String> headerParams)
|
||||||
Map<String, String> headerParams)
|
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
Subscription createSubscription(ApiApplicationInfo apiApplicationInfo, String accessToken, Subscription subscriptions)
|
Subscription createSubscription(TokenInfo tokenInfo, Subscription subscriptions)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
Subscription[] createSubscriptions(ApiApplicationInfo apiApplicationInfo, String accessToken,
|
Subscription[] createSubscriptions(TokenInfo tokenInfo, List<Subscription> subscriptions)
|
||||||
List<Subscription> subscriptions)
|
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
ApplicationKey generateApplicationKeys(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId,
|
ApplicationKey generateApplicationKeys(TokenInfo tokenInfo, String applicationId, String keyManager, String validityTime, String keyType)
|
||||||
String keyManager, String validityTime, String keyType)
|
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
ApplicationKey getKeyDetails(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId, String keyMapId)
|
ApplicationKey getKeyDetails(TokenInfo tokenInfo, String applicationId, String keyMapId)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
|
|
||||||
KeyManager[] getAllKeyManagers(ApiApplicationInfo apiApplicationInfo, String accessToken)
|
KeyManager[] getAllKeyManagers(TokenInfo tokenInfo)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
throws APIServicesException, BadRequestException, UnexpectedResponseException;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -23,6 +23,7 @@ import io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.*;
|
|||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.constants.Constants;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.constants.Constants;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.AccessTokenInfo;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.AccessTokenInfo;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.ApiApplicationInfo;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.ApiApplicationInfo;
|
||||||
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.TokenInfo;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.APIServicesException;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.APIServicesException;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.BadRequestException;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.BadRequestException;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.UnexpectedResponseException;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.UnexpectedResponseException;
|
||||||
@ -50,10 +51,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ Constants.COLON + port;
|
+ Constants.COLON + port;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Application[] getAllApplications(ApiApplicationInfo apiApplicationInfo, String accessToken, String appName)
|
public Application[] getAllApplications(TokenInfo tokenInfo, String appName)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String getAllApplicationsUrl = endPointPrefix + Constants.APPLICATIONS_API + "?query=" + appName;
|
String getAllApplicationsUrl = endPointPrefix + Constants.APPLICATIONS_API + "?query=" + appName;
|
||||||
|
|
||||||
Request.Builder builder = new Request.Builder();
|
Request.Builder builder = new Request.Builder();
|
||||||
@ -63,7 +65,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.get();
|
builder.get();
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -81,7 +83,9 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return getAllApplications(refreshedApiApplicationInfo, null, appName);
|
tokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
tokenInfo.setAccessToken(null);
|
||||||
|
return getAllApplications(tokenInfo, appName);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -103,10 +107,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Application getDetailsOfAnApplication(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId)
|
public Application getDetailsOfAnApplication(TokenInfo tokenInfo, String applicationId)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String getDetailsOfAPPUrl = endPointPrefix + Constants.APPLICATIONS_API + Constants.SLASH + applicationId;
|
String getDetailsOfAPPUrl = endPointPrefix + Constants.APPLICATIONS_API + Constants.SLASH + applicationId;
|
||||||
|
|
||||||
Request.Builder builder = new Request.Builder();
|
Request.Builder builder = new Request.Builder();
|
||||||
@ -116,7 +121,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.get();
|
builder.get();
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -133,7 +138,10 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return getDetailsOfAnApplication(refreshedApiApplicationInfo, null, applicationId);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return getDetailsOfAnApplication(refreshedTokenInfo, applicationId);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -155,10 +163,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Application createApplication(ApiApplicationInfo apiApplicationInfo, String accessToken, Application application)
|
public Application createApplication(TokenInfo tokenInfo, Application application)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String getAllScopesUrl = endPointPrefix + Constants.APPLICATIONS_API;
|
String getAllScopesUrl = endPointPrefix + Constants.APPLICATIONS_API;
|
||||||
|
|
||||||
String applicationInfo = "{\n" +
|
String applicationInfo = "{\n" +
|
||||||
@ -179,7 +188,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.post(requestBody);
|
builder.post(requestBody);
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -196,7 +205,10 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return createApplication(refreshedApiApplicationInfo, null, application);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return createApplication(refreshedTokenInfo, application);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -218,10 +230,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Boolean deleteApplication(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId)
|
public Boolean deleteApplication(TokenInfo tokenInfo, String applicationId)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String deleteScopesUrl = endPointPrefix + Constants.APPLICATIONS_API + Constants.SLASH + applicationId;
|
String deleteScopesUrl = endPointPrefix + Constants.APPLICATIONS_API + Constants.SLASH + applicationId;
|
||||||
|
|
||||||
Request.Builder builder = new Request.Builder();
|
Request.Builder builder = new Request.Builder();
|
||||||
@ -231,7 +244,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.delete();
|
builder.delete();
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -248,7 +261,10 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return deleteApplication(refreshedApiApplicationInfo, null, applicationId);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return deleteApplication(refreshedTokenInfo, applicationId);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -270,10 +286,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Subscription[] getAllSubscriptions(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId)
|
public Subscription[] getAllSubscriptions(TokenInfo tokenInfo, String applicationId)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String getAllScopesUrl = endPointPrefix + Constants.SUBSCRIPTION_API + "?applicationId=" + applicationId;
|
String getAllScopesUrl = endPointPrefix + Constants.SUBSCRIPTION_API + "?applicationId=" + applicationId;
|
||||||
|
|
||||||
Request.Builder builder = new Request.Builder();
|
Request.Builder builder = new Request.Builder();
|
||||||
@ -283,7 +300,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.get();
|
builder.get();
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -299,9 +316,12 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
AccessTokenInfo refreshedAccessToken = apiApplicationServices.
|
AccessTokenInfo refreshedAccessToken = apiApplicationServices.
|
||||||
generateAccessTokenFromRefreshToken(apiApplicationInfo.getRefresh_token(),
|
generateAccessTokenFromRefreshToken(apiApplicationInfo.getRefresh_token(),
|
||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo rehreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return getAllSubscriptions(rehreshedApiApplicationInfo, null, applicationId);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return getAllSubscriptions(refreshedTokenInfo, applicationId);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -323,11 +343,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public APIInfo[] getAllApis(ApiApplicationInfo apiApplicationInfo, String accessToken, Map<String, String> queryParams,
|
public APIInfo[] getAllApis(TokenInfo tokenInfo, Map<String, String> queryParams, Map<String, String> headerParams)
|
||||||
Map<String, String> headerParams)
|
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
StringBuilder getAPIsURL = new StringBuilder(endPointPrefix + Constants.DEV_PORTAL_API);
|
StringBuilder getAPIsURL = new StringBuilder(endPointPrefix + Constants.DEV_PORTAL_API);
|
||||||
|
|
||||||
for (Map.Entry<String, String> query : queryParams.entrySet()) {
|
for (Map.Entry<String, String> query : queryParams.entrySet()) {
|
||||||
@ -341,7 +361,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
for (Map.Entry<String, String> header : headerParams.entrySet()) {
|
for (Map.Entry<String, String> header : headerParams.entrySet()) {
|
||||||
builder.addHeader(header.getKey(), header.getValue());
|
builder.addHeader(header.getKey(), header.getValue());
|
||||||
@ -360,9 +380,12 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
AccessTokenInfo refreshedAccessToken = apiApplicationServices.
|
AccessTokenInfo refreshedAccessToken = apiApplicationServices.
|
||||||
generateAccessTokenFromRefreshToken(apiApplicationInfo.getRefresh_token(),
|
generateAccessTokenFromRefreshToken(apiApplicationInfo.getRefresh_token(),
|
||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo rehreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return getAllApis(rehreshedApiApplicationInfo, null, queryParams, headerParams);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return getAllApis(refreshedTokenInfo, queryParams, headerParams);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -384,10 +407,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Subscription createSubscription(ApiApplicationInfo apiApplicationInfo, String accessToken, Subscription subscriptions)
|
public Subscription createSubscription(TokenInfo tokenInfo, Subscription subscriptions)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String createSubscriptionUrl = endPointPrefix + Constants.SUBSCRIPTION_API;
|
String createSubscriptionUrl = endPointPrefix + Constants.SUBSCRIPTION_API;
|
||||||
|
|
||||||
String subscriptionObject = "{\n" +
|
String subscriptionObject = "{\n" +
|
||||||
@ -406,7 +430,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.post(requestBody);
|
builder.post(requestBody);
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -423,7 +447,10 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return createSubscription(refreshedApiApplicationInfo, null, subscriptions);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return createSubscription(refreshedTokenInfo, subscriptions);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -445,11 +472,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Subscription[] createSubscriptions(ApiApplicationInfo apiApplicationInfo, String accessToken,
|
public Subscription[] createSubscriptions(TokenInfo tokenInfo, List<Subscription> subscriptions)
|
||||||
List<Subscription> subscriptions)
|
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String createSubscriptionsUrl = endPointPrefix + Constants.SUBSCRIPTION_API + "/multiple";
|
String createSubscriptionsUrl = endPointPrefix + Constants.SUBSCRIPTION_API + "/multiple";
|
||||||
|
|
||||||
String subscriptionsList = gson.toJson(subscriptions);
|
String subscriptionsList = gson.toJson(subscriptions);
|
||||||
@ -462,7 +489,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.post(requestBody);
|
builder.post(requestBody);
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -480,7 +507,10 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return createSubscriptions(refreshedApiApplicationInfo, null, subscriptions);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return createSubscriptions(refreshedTokenInfo, subscriptions);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -502,11 +532,12 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ApplicationKey generateApplicationKeys(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId,
|
public ApplicationKey generateApplicationKeys(TokenInfo tokenInfo, String applicationId, String keyManager,
|
||||||
String keyManager, String validityTime, String keyType)
|
String validityTime, String keyType)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String generateApplicationKeysUrl = endPointPrefix + Constants.APPLICATIONS_API + Constants.SLASH +
|
String generateApplicationKeysUrl = endPointPrefix + Constants.APPLICATIONS_API + Constants.SLASH +
|
||||||
applicationId + "/generate-keys";
|
applicationId + "/generate-keys";
|
||||||
|
|
||||||
@ -535,7 +566,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.post(requestBody);
|
builder.post(requestBody);
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -550,9 +581,12 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
AccessTokenInfo refreshedAccessToken = apiApplicationServices.
|
AccessTokenInfo refreshedAccessToken = apiApplicationServices.
|
||||||
generateAccessTokenFromRefreshToken(apiApplicationInfo.getRefresh_token(),
|
generateAccessTokenFromRefreshToken(apiApplicationInfo.getRefresh_token(),
|
||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationKey = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return generateApplicationKeys(refreshedApiApplicationKey, null, applicationId, keyManager, validityTime, keyType);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return generateApplicationKeys(refreshedTokenInfo, applicationId, keyManager, validityTime, keyType);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -574,10 +608,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ApplicationKey getKeyDetails(ApiApplicationInfo apiApplicationInfo, String accessToken, String applicationId, String keyMapId)
|
public ApplicationKey getKeyDetails(TokenInfo tokenInfo, String applicationId, String keyMapId)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String getKeyDetails = endPointPrefix + Constants.APPLICATIONS_API + Constants.SLASH + applicationId + "/oauth-keys/" + keyMapId;
|
String getKeyDetails = endPointPrefix + Constants.APPLICATIONS_API + Constants.SLASH + applicationId + "/oauth-keys/" + keyMapId;
|
||||||
|
|
||||||
Request.Builder builder = new Request.Builder();
|
Request.Builder builder = new Request.Builder();
|
||||||
@ -587,7 +622,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.get();
|
builder.get();
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -602,9 +637,12 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
AccessTokenInfo refreshedAccessToken = apiApplicationServices.
|
AccessTokenInfo refreshedAccessToken = apiApplicationServices.
|
||||||
generateAccessTokenFromRefreshToken(apiApplicationInfo.getRefresh_token(),
|
generateAccessTokenFromRefreshToken(apiApplicationInfo.getRefresh_token(),
|
||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationKey = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return getKeyDetails(refreshedApiApplicationKey, null, applicationId, keyMapId);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return getKeyDetails(refreshedTokenInfo, applicationId, keyMapId);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid access token. Unauthorized request";
|
String msg = "Invalid access token. Unauthorized request";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
@ -626,10 +664,11 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public KeyManager[] getAllKeyManagers(ApiApplicationInfo apiApplicationInfo, String accessToken)
|
public KeyManager[] getAllKeyManagers(TokenInfo tokenInfo)
|
||||||
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
throws APIServicesException, BadRequestException, UnexpectedResponseException {
|
||||||
|
|
||||||
boolean token = isTokenNull(apiApplicationInfo, accessToken);
|
ApiApplicationInfo apiApplicationInfo = tokenInfo.getApiApplicationInfo();
|
||||||
|
boolean token = isTokenNull(apiApplicationInfo, tokenInfo.getAccessToken());
|
||||||
String getAllKeyManagersUrl = endPointPrefix + Constants.KEY_MANAGERS_API;
|
String getAllKeyManagersUrl = endPointPrefix + Constants.KEY_MANAGERS_API;
|
||||||
|
|
||||||
Request.Builder builder = new Request.Builder();
|
Request.Builder builder = new Request.Builder();
|
||||||
@ -639,7 +678,7 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
+ apiApplicationInfo.getAccess_token());
|
+ apiApplicationInfo.getAccess_token());
|
||||||
} else {
|
} else {
|
||||||
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
builder.addHeader(Constants.AUTHORIZATION_HEADER_NAME, Constants.AUTHORIZATION_HEADER_PREFIX_BEARER
|
||||||
+ accessToken);
|
+ tokenInfo.getAccessToken());
|
||||||
}
|
}
|
||||||
builder.get();
|
builder.get();
|
||||||
Request request = builder.build();
|
Request request = builder.build();
|
||||||
@ -657,7 +696,10 @@ public class ConsumerRESTAPIServicesImpl implements ConsumerRESTAPIServices {
|
|||||||
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
apiApplicationInfo.getClientId(), apiApplicationInfo.getClientSecret());
|
||||||
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
ApiApplicationInfo refreshedApiApplicationInfo = returnApplicationInfo(apiApplicationInfo, refreshedAccessToken);
|
||||||
//TODO: max attempt count
|
//TODO: max attempt count
|
||||||
return getAllKeyManagers(refreshedApiApplicationInfo, null);
|
TokenInfo refreshedTokenInfo = new TokenInfo();
|
||||||
|
refreshedTokenInfo.setApiApplicationInfo(refreshedApiApplicationInfo);
|
||||||
|
refreshedTokenInfo.setAccessToken(null);
|
||||||
|
return getAllKeyManagers(refreshedTokenInfo);
|
||||||
} else {
|
} else {
|
||||||
String msg = "Invalid or null access token";
|
String msg = "Invalid or null access token";
|
||||||
log.error(msg);
|
log.error(msg);
|
||||||
|
|||||||
@ -0,0 +1,44 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2018 - 2023, Entgra (Pvt) Ltd. (http://www.entgra.io) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* Entgra (Pvt) Ltd. licenses this file to you 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 io.entgra.device.mgt.core.apimgt.extension.rest.api.dto;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This holds the API application information and access token for REST APIS cals.
|
||||||
|
*/
|
||||||
|
public class TokenInfo {
|
||||||
|
|
||||||
|
private ApiApplicationInfo apiApplicationInfo;
|
||||||
|
private String accessToken;
|
||||||
|
|
||||||
|
public ApiApplicationInfo getApiApplicationInfo() {
|
||||||
|
return apiApplicationInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setApiApplicationInfo(ApiApplicationInfo apiApplicationInfo) {
|
||||||
|
this.apiApplicationInfo = apiApplicationInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAccessToken() {
|
||||||
|
return accessToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setAccessToken(String accessToken) {
|
||||||
|
this.accessToken = accessToken;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -20,6 +20,7 @@ package io.entgra.device.mgt.core.apimgt.keymgt.extension.service;
|
|||||||
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.ConsumerRESTAPIServices;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.ConsumerRESTAPIServices;
|
||||||
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.dto.TokenInfo;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.APIServicesException;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.APIServicesException;
|
||||||
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.UnexpectedResponseException;
|
import io.entgra.device.mgt.core.apimgt.extension.rest.api.exceptions.UnexpectedResponseException;
|
||||||
import io.entgra.device.mgt.core.apimgt.keymgt.extension.*;
|
import io.entgra.device.mgt.core.apimgt.keymgt.extension.*;
|
||||||
@ -431,11 +432,14 @@ public class KeyMgtServiceImpl implements KeyMgtService {
|
|||||||
*/
|
*/
|
||||||
private Application getApplication(String applicationName, String accessToken) throws KeyMgtException {
|
private Application getApplication(String applicationName, String accessToken) throws KeyMgtException {
|
||||||
|
|
||||||
|
TokenInfo tokenInfo = new TokenInfo();
|
||||||
|
tokenInfo.setApiApplicationInfo(null);
|
||||||
|
tokenInfo.setAccessToken(accessToken);
|
||||||
try {
|
try {
|
||||||
ConsumerRESTAPIServices consumerRESTAPIServices =
|
ConsumerRESTAPIServices consumerRESTAPIServices =
|
||||||
KeyMgtDataHolder.getInstance().getConsumerRESTAPIServices();
|
KeyMgtDataHolder.getInstance().getConsumerRESTAPIServices();
|
||||||
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application[] applications =
|
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application[] applications =
|
||||||
consumerRESTAPIServices.getAllApplications(null, accessToken, applicationName);
|
consumerRESTAPIServices.getAllApplications(tokenInfo, applicationName);
|
||||||
|
|
||||||
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application applicationFromRestCall;
|
io.entgra.device.mgt.core.apimgt.extension.rest.api.bean.APIMConsumer.Application applicationFromRestCall;
|
||||||
if (applications.length == 1) {
|
if (applications.length == 1) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user