use of org.wso2.carbon.identity.mgt.endpoint.util.client.ApiException in project carbon-mediation by wso2.
the class RestApiAdminService method updateApiFromString.
/**
* Updates a given API configuration passed in as a string.
*
* @param apiName Name of the API to be updated
* @param apiData API configuration to be updated, as a string
* @return Status of the execution of updating the given API configuration
* @throws APIException Is thrown if an anomaly is encountered while updating the given API
*/
public boolean updateApiFromString(String apiName, String apiData) throws APIException {
final Lock lock = getLock();
try {
lock.lock();
assertNameNotEmpty(log, apiName);
OMElement apiElement = AXIOMUtil.stringToOM(apiData);
// Set API name to old value since we do not allow editing the API name.
OMAttribute nameAttribute = apiElement.getAttribute(new QName("name"));
if (nameAttribute == null || "".equals(nameAttribute.getAttributeValue().trim())) {
apiElement.addAttribute("name", apiName, null);
}
API api = APIFactory.createAPI(apiElement);
SynapseConfiguration synapseConfiguration = RestApiAdminUtils.getSynapseConfiguration();
API oldAPI = synapseConfiguration.getAPI(apiName);
if (oldAPI != null) {
oldAPI.destroy();
api.setFileName(oldAPI.getFileName());
}
synapseConfiguration.removeAPI(apiName);
synapseConfiguration.addAPI(api.getName(), api);
api.init(RestApiAdminUtils.getSynapseEnvironment());
if ((oldAPI != null ? oldAPI.getArtifactContainerName() : null) != null) {
api.setArtifactContainerName(oldAPI.getArtifactContainerName());
api.setIsEdited(true);
getApiByName(apiName).setIsEdited(true);
} else {
if (!Boolean.parseBoolean(System.getProperty("NonRegistryMode"))) {
MediationPersistenceManager pm = RestApiAdminUtils.getMediationPersistenceManager();
String fileName = api.getFileName();
pm.deleteItem(apiName, fileName, ServiceBusConstants.ITEM_TYPE_REST_API);
pm.saveItem(apiName, ServiceBusConstants.ITEM_TYPE_REST_API);
}
}
return true;
} catch (XMLStreamException e) {
handleException(log, "Could not parse String to OMElement", e);
return false;
} finally {
lock.unlock();
}
}
use of org.wso2.carbon.identity.mgt.endpoint.util.client.ApiException in project carbon-identity-framework by wso2.
the class SelfRegisterApi method validateCodePostCall.
/**
* This API is used to validate code of self reigstered users
*
* @param code Code retried after user self registration and optional property parameters (required)
* @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
*/
public void validateCodePostCall(CodeValidationRequest code) throws ApiException {
Object localVarPostBody = code;
// verify the required parameter 'code' is set
if (code == null) {
throw new ApiException(400, "Missing the required parameter 'code' when calling validateCodePost(Async)");
}
String tenantDomain = MultitenantConstants.SUPER_TENANT_DOMAIN_NAME;
List<Property> properties = code.getProperties();
for (Property property : properties) {
if (StringUtils.isNotEmpty(property.getKey()) && MultitenantConstants.TENANT_DOMAIN.equals(property.getKey())) {
tenantDomain = property.getValue();
}
}
basePath = IdentityManagementEndpointUtil.getBasePath(tenantDomain, IdentityManagementEndpointConstants.UserInfoRecovery.USER_API_RELATIVE_PATH);
apiClient.setBasePath(basePath);
// create path and map variables
String localVarPath = "/validate-code".replaceAll("\\{format\\}", "json");
List<Pair> localVarQueryParams = new ArrayList<Pair>();
Map<String, String> localVarHeaderParams = new HashMap<String, String>();
Map<String, Object> localVarFormParams = new HashMap<String, Object>();
final String[] localVarAccepts = { "application/json" };
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
if (localVarAccept != null)
localVarHeaderParams.put("Accept", localVarAccept);
final String[] localVarContentTypes = { "application/json" };
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
localVarHeaderParams.put("Content-Type", localVarContentType);
String[] localVarAuthNames = new String[] {};
GenericType<String> localVarReturnType = new GenericType<String>() {
};
apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
use of org.wso2.carbon.identity.mgt.endpoint.util.client.ApiException in project carbon-identity-framework by wso2.
the class SelfRegisterApi method validateCodeUserPostCall.
/**
* This API is used to validate code of self reigstered users
*
* @param code Code retried after user self registration and optional property parameters (required)
* @throws ApiException If fail to call the API, e.g. server error or cannot deserialize the response body
*/
public User validateCodeUserPostCall(CodeValidationRequest code) throws ApiException {
Object localVarPostBody = code;
// verify the required parameter 'code' is set
if (code == null) {
throw new ApiException(400, "Missing the required parameter 'code' when calling validateCodePost(Async)");
}
String tenantDomain = MultitenantConstants.SUPER_TENANT_DOMAIN_NAME;
List<Property> properties = code.getProperties();
for (Property property : properties) {
if (StringUtils.isNotEmpty(property.getKey()) && MultitenantConstants.TENANT_DOMAIN.equals(property.getKey())) {
tenantDomain = property.getValue();
}
}
if (!MultitenantConstants.SUPER_TENANT_DOMAIN_NAME.equalsIgnoreCase(tenantDomain)) {
basePath = IdentityManagementEndpointUtil.getBasePath(tenantDomain, IdentityManagementEndpointConstants.UserInfoRecovery.USER_API_RELATIVE_PATH);
}
apiClient.setBasePath(basePath);
// create path and map variables
String localVarPath = "/validate-code".replaceAll("\\{format\\}", "json");
List<Pair> localVarQueryParams = new ArrayList<Pair>();
Map<String, String> localVarHeaderParams = new HashMap<String, String>();
Map<String, Object> localVarFormParams = new HashMap<String, Object>();
final String[] localVarAccepts = { "application/json" };
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);
if (localVarAccept != null)
localVarHeaderParams.put("Accept", localVarAccept);
final String[] localVarContentTypes = { "application/json" };
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);
localVarHeaderParams.put("Content-Type", localVarContentType);
String[] localVarAuthNames = new String[] {};
GenericType<User> localVarReturnType = new GenericType<User>() {
};
return apiClient.invokeAPI(localVarPath, "POST", localVarQueryParams, localVarPostBody, localVarHeaderParams, localVarFormParams, localVarAccept, localVarContentType, localVarAuthNames, localVarReturnType);
}
Aggregations