Search in sources :

Example 1 with APIInfoDTO

use of org.wso2.carbon.apimgt.rest.api.publisher.dto.APIInfoDTO in project carbon-apimgt by wso2.

the class MappingUtil method toAPIInfo.

/**
 * Converts {@link API} List to an {@link APIInfoDTO} List.
 *
 * @param apiSummaryList
 * @return
 */
private static List<APIInfoDTO> toAPIInfo(List<API> apiSummaryList) {
    List<APIInfoDTO> apiInfoList = new ArrayList<APIInfoDTO>();
    for (API apiSummary : apiSummaryList) {
        APIInfoDTO apiInfo = new APIInfoDTO();
        apiInfo.setId(apiSummary.getId());
        apiInfo.setContext(apiSummary.getContext());
        apiInfo.setDescription(apiSummary.getDescription());
        apiInfo.setName(apiSummary.getName());
        apiInfo.setProvider(apiSummary.getProvider());
        apiInfo.setLifeCycleStatus(apiSummary.getLifeCycleStatus());
        apiInfo.setVersion(apiSummary.getVersion());
        apiInfo.setWorkflowStatus(apiSummary.getWorkflowStatus());
        apiInfo.setSecurityScheme(mapSecuritySchemeIntToList(apiSummary.getSecurityScheme()));
        apiInfoList.add(apiInfo);
    }
    return apiInfoList;
}
Also used : ArrayList(java.util.ArrayList) API(org.wso2.carbon.apimgt.core.models.API) APIInfoDTO(org.wso2.carbon.apimgt.rest.api.publisher.dto.APIInfoDTO)

Example 2 with APIInfoDTO

use of org.wso2.carbon.apimgt.rest.api.publisher.dto.APIInfoDTO in project carbon-apimgt by wso2.

the class AnalyticsMappingUtil method fromAPIInfoListToDTO.

/**
 * Converts and APIInfoList to APIInfoListDTO.
 *
 * @param apiInfoList list of ApiInfo objects
 * @return corresponding APIInfoListDTO object
 */
public static APIInfoListDTO fromAPIInfoListToDTO(List<APIInfo> apiInfoList, ZoneId zoneId) {
    APIInfoListDTO apiInfoListDTO = new APIInfoListDTO();
    List<APIInfoDTO> apiInfoDTOList = new ArrayList<>();
    apiInfoListDTO.setCount(apiInfoList.size());
    for (APIInfo apiInfo : apiInfoList) {
        apiInfoDTOList.add(fromAPIInfoToDTO(apiInfo, zoneId));
    }
    apiInfoListDTO.setList(apiInfoDTOList);
    return apiInfoListDTO;
}
Also used : ArrayList(java.util.ArrayList) APIInfo(org.wso2.carbon.apimgt.core.models.analytics.APIInfo) APIInfoDTO(org.wso2.carbon.apimgt.rest.api.analytics.dto.APIInfoDTO) APIInfoListDTO(org.wso2.carbon.apimgt.rest.api.analytics.dto.APIInfoListDTO)

Example 3 with APIInfoDTO

use of org.wso2.carbon.apimgt.rest.api.publisher.dto.APIInfoDTO in project carbon-apimgt by wso2.

the class APIInfoMappingUtil method fromAPIInfoListToDTO.

/**
 * Converts a List object of APIIdentifiers into a DTO
 *
 * @param apiIds a list of APIIdentifier objects
 * @return APIInfoListDTO object containing APIInfoDTOs
 */
public static APIInfoListDTO fromAPIInfoListToDTO(List<APIIdentifier> apiIds) throws UnsupportedEncodingException {
    APIInfoListDTO apiInfoListDTO = new APIInfoListDTO();
    List<APIInfoDTO> apiInfoDTOs = apiInfoListDTO.getList();
    if (apiInfoDTOs == null) {
        apiInfoDTOs = new ArrayList<>();
        apiInfoListDTO.setList(apiInfoDTOs);
    }
    for (APIIdentifier apiId : apiIds) {
        apiInfoDTOs.add(fromAPIInfoToDTO(apiId));
    }
    apiInfoListDTO.setCount(apiInfoDTOs.size());
    return apiInfoListDTO;
}
Also used : APIIdentifier(org.wso2.carbon.apimgt.api.model.APIIdentifier) APIInfoDTO(org.wso2.carbon.apimgt.rest.api.admin.v1.dto.APIInfoDTO) APIInfoListDTO(org.wso2.carbon.apimgt.rest.api.admin.v1.dto.APIInfoListDTO)

Example 4 with APIInfoDTO

use of org.wso2.carbon.apimgt.rest.api.publisher.dto.APIInfoDTO in project carbon-apimgt by wso2.

the class APIMappingUtil method fromAPIToInfoDTO.

/**
 * Creates a minimal DTO representation of an API object.
 *
 * @param api API object
 * @return a minimal representation DTO
 */
public static APIInfoDTO fromAPIToInfoDTO(API api) {
    APIInfoDTO apiInfoDTO = new APIInfoDTO();
    apiInfoDTO.setDescription(api.getDescription());
    String context = api.getContextTemplate();
    if (context.endsWith("/" + RestApiConstants.API_VERSION_PARAM)) {
        context = context.replace("/" + RestApiConstants.API_VERSION_PARAM, "");
    }
    apiInfoDTO.setContext(context);
    apiInfoDTO.setId(api.getUUID());
    APIIdentifier apiId = api.getId();
    apiInfoDTO.setName(apiId.getApiName());
    apiInfoDTO.setVersion(apiId.getVersion());
    apiInfoDTO.setType(api.getType());
    String providerName = api.getId().getProviderName();
    apiInfoDTO.setProvider(APIUtil.replaceEmailDomainBack(providerName));
    apiInfoDTO.setLifeCycleStatus(api.getStatus());
    apiInfoDTO.setHasThumbnail(!StringUtils.isBlank(api.getThumbnailUrl()));
    if (api.getAudience() != null) {
        apiInfoDTO.setAudience(org.wso2.carbon.apimgt.rest.api.publisher.v1.dto.APIInfoDTO.AudienceEnum.valueOf(api.getAudience()));
    }
    if (api.getCreatedTime() != null) {
        Date createdTime = new Date(Long.parseLong(api.getCreatedTime()));
        apiInfoDTO.setCreatedTime(String.valueOf(createdTime.getTime()));
    }
    if (api.getLastUpdated() != null) {
        Date lastUpdatedTime = api.getLastUpdated();
        apiInfoDTO.setUpdatedTime(String.valueOf(lastUpdatedTime.getTime()));
    }
    apiInfoDTO.setAdvertiseOnly(api.isAdvertiseOnly());
    if (api.getAdditionalProperties() != null) {
        JSONObject additionalProperties = api.getAdditionalProperties();
        List<APIInfoAdditionalPropertiesDTO> additionalPropertiesList = new ArrayList<>();
        Map<String, APIInfoAdditionalPropertiesMapDTO> additionalPropertiesMap = new HashMap<>();
        for (Object propertyKey : additionalProperties.keySet()) {
            APIInfoAdditionalPropertiesDTO additionalPropertiesDTO = new APIInfoAdditionalPropertiesDTO();
            APIInfoAdditionalPropertiesMapDTO apiInfoAdditionalPropertiesMapDTO = new APIInfoAdditionalPropertiesMapDTO();
            String key = (String) propertyKey;
            int index = key.lastIndexOf(APIConstants.API_RELATED_CUSTOM_PROPERTIES_SURFIX);
            additionalPropertiesDTO.setValue((String) additionalProperties.get(key));
            apiInfoAdditionalPropertiesMapDTO.setValue((String) additionalProperties.get(key));
            if (index > 0) {
                additionalPropertiesDTO.setName(key.substring(0, index));
                apiInfoAdditionalPropertiesMapDTO.setName(key.substring(0, index));
                additionalPropertiesDTO.setDisplay(true);
            } else {
                additionalPropertiesDTO.setName(key);
                apiInfoAdditionalPropertiesMapDTO.setName(key);
                additionalPropertiesDTO.setDisplay(false);
            }
            apiInfoAdditionalPropertiesMapDTO.setDisplay(false);
            additionalPropertiesMap.put(key, apiInfoAdditionalPropertiesMapDTO);
            additionalPropertiesList.add(additionalPropertiesDTO);
        }
        apiInfoDTO.setAdditionalProperties(additionalPropertiesList);
        apiInfoDTO.setAdditionalPropertiesMap(additionalPropertiesMap);
        apiInfoDTO.setGatewayVendor(api.getGatewayVendor());
    }
    return apiInfoDTO;
}
Also used : APIInfoAdditionalPropertiesMapDTO(org.wso2.carbon.apimgt.rest.api.publisher.v1.dto.APIInfoAdditionalPropertiesMapDTO) HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) Date(java.util.Date) JSONObject(org.json.simple.JSONObject) APIIdentifier(org.wso2.carbon.apimgt.api.model.APIIdentifier) JSONObject(org.json.simple.JSONObject) APIRevisionAPIInfoDTO(org.wso2.carbon.apimgt.rest.api.publisher.v1.dto.APIRevisionAPIInfoDTO) APIInfoDTO(org.wso2.carbon.apimgt.rest.api.publisher.v1.dto.APIInfoDTO) APIInfoAdditionalPropertiesDTO(org.wso2.carbon.apimgt.rest.api.publisher.v1.dto.APIInfoAdditionalPropertiesDTO)

Example 5 with APIInfoDTO

use of org.wso2.carbon.apimgt.rest.api.publisher.dto.APIInfoDTO in project carbon-apimgt by wso2.

the class APIMappingUtil method fromAPIListToInfoDTO.

/**
 * Converts a List object of APIs into Info DTO List.
 *
 * @param apiList List of APIs
 * @return APIListDTO object containing APIDTOs
 */
public static APIListDTO fromAPIListToInfoDTO(List<API> apiList) throws APIManagementException {
    APIListDTO apiListDTO = new APIListDTO();
    List<APIInfoDTO> apiInfoDTOs = apiListDTO.getList();
    for (API api : apiList) {
        apiInfoDTOs.add(fromAPIToInfoDTO(api));
    }
    apiListDTO.setCount(apiInfoDTOs.size());
    return apiListDTO;
}
Also used : APIListDTO(org.wso2.carbon.apimgt.rest.api.publisher.v1.dto.APIListDTO) API(org.wso2.carbon.apimgt.api.model.API) APIRevisionAPIInfoDTO(org.wso2.carbon.apimgt.rest.api.publisher.v1.dto.APIRevisionAPIInfoDTO) APIInfoDTO(org.wso2.carbon.apimgt.rest.api.publisher.v1.dto.APIInfoDTO)

Aggregations

ArrayList (java.util.ArrayList)11 APIIdentifier (org.wso2.carbon.apimgt.api.model.APIIdentifier)7 Tier (org.wso2.carbon.apimgt.api.model.Tier)7 APIInfoDTO (org.wso2.carbon.apimgt.rest.api.store.v1.dto.APIInfoDTO)7 APIConsumer (org.wso2.carbon.apimgt.api.APIConsumer)5 API (org.wso2.carbon.apimgt.api.model.API)4 APIInfoDTO (org.wso2.carbon.apimgt.impl.dto.APIInfoDTO)4 JSONObject (org.json.simple.JSONObject)3 API (org.wso2.carbon.apimgt.core.models.API)3 ResourceInfoDTO (org.wso2.carbon.apimgt.impl.dto.ResourceInfoDTO)3 VerbInfoDTO (org.wso2.carbon.apimgt.impl.dto.VerbInfoDTO)3 APIBusinessInformationDTO (org.wso2.carbon.apimgt.rest.api.store.v1.dto.APIBusinessInformationDTO)3 JsonObject (com.google.gson.JsonObject)2 HashMap (java.util.HashMap)2 HashSet (java.util.HashSet)2 LinkedHashSet (java.util.LinkedHashSet)2 APIManagementException (org.wso2.carbon.apimgt.api.APIManagementException)2 APIProduct (org.wso2.carbon.apimgt.api.model.APIProduct)2 APIProductIdentifier (org.wso2.carbon.apimgt.api.model.APIProductIdentifier)2 Application (org.wso2.carbon.apimgt.api.model.Application)2