Example usage for org.springframework.util StringUtils hasLength

List of usage examples for org.springframework.util StringUtils hasLength

Introduction

In this page you can find the example usage for org.springframework.util StringUtils hasLength.

Prototype

public static boolean hasLength(@Nullable String str) 

Source Link

Document

Check that the given String is neither null nor of length 0.

Usage

From source file:org.openo.sdnhub.overlayvpndriver.http.OverlayVpnDriverSsoProxy.java

/**
 * Send delete restful request. <br>
 *
 * @param restUrl restful URL path/*from   w  ww .  j  a va2  s. c  o m*/
 * @param body message body
 * @return The object of HTTPReturnMessage
 * @since SDNO 0.5
 */
@SuppressWarnings("deprecation")
public HTTPReturnMessage delete(final String restUrl, final String body) {
    String postUrl = this.getHttpsUrl() + restUrl;
    LOGGER.info("Delete Request url for AC: " + restUrl + "\n Body: " + body);
    HttpDeleteWithBody httpDelete = new HttpDeleteWithBody(postUrl);

    if (StringUtils.hasLength(body)) {
        StringEntity reqEntity = new StringEntity(body, HTTP.UTF_8);
        httpDelete.setEntity(reqEntity);
    }
    return commonRequest(httpDelete);
}

From source file:org.openo.sdnhub.overlayvpndriver.rest.NqaROAResource.java

/**
 * Retrieves a NQA configuration using a specific Controller.<br>
 *
 * @param ctrlUuidParam Controller UUID//from   ww w  . j  av  a 2s  .c  o m
 * @param deviceId      Device Id
 * @param sbiNqaList    List of SbiNqa instances
 * @return ResultRsp Response object
 * @throws ServiceException In case of query operation fails for NQA
 * @since SDNHUB 0.5
 */
@POST
@Path("/device/{deviceid}/batch-query-nqa")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public ResultRsp<SbiNqa> queryNQA(@HeaderParam("X-Driver-Parameter") String ctrlUuidParam,
        @PathParam("deviceid") String deviceId, List<SbiNqa> sbiNqaList) throws ServiceException {
    String ctrlUuid = ctrlUuidParam.substring(ctrlUuidParam.indexOf('=') + 1);
    if (!UuidUtil.validate(ctrlUuid)) {
        LOGGER.error(INVALID_CONTROLLER_UUID);
        throw new ParameterServiceException(INVALID_CONTROLLER_UUID);
    }

    CheckStrUtil.checkUuidStr(deviceId);

    String queryUrl = MessageFormat.format(ControllerUrlConst.NQA_CONFIG_URL, deviceId);
    if (CollectionUtils.isNotEmpty(sbiNqaList) && StringUtils.hasLength(sbiNqaList.get(0).getExternalId())) {
        queryUrl = queryUrl + "?ids=" + sbiNqaList.get(0).getExternalId();
    }
    return nqaConfigService.queryNqaConfig(ctrlUuid, queryUrl);
}

From source file:org.openo.sdnhub.overlayvpndriver.rest.NqaROAResource.java

/**
 * Creates a NQA configuration using a specific Controller.<br>
 *
 * @param ctrlUuidParam Controller UUID// w ww  .  ja v a 2s  .  com
 * @param deviceId      Device Id
 * @param sbiNqaList    List of SbiNqa instances
 * @return ResultRsp Response object
 * @throws ServiceException In case of create operation fails
 * @since SDNHUB 0.5
 */
@POST
@Path("/device/{deviceid}/batch-create-nqa")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public ResultRsp<SbiNqa> createNQA(@HeaderParam("X-Driver-Parameter") String ctrlUuidParam,
        @PathParam("deviceid") String deviceId, List<SbiNqa> sbiNqaList) throws ServiceException {
    String ctrlUuid = ctrlUuidParam.substring(ctrlUuidParam.indexOf('=') + 1);
    if (!UuidUtil.validate(ctrlUuid)) {
        LOGGER.error("createNQA param error");
        throw new ParameterServiceException(INVALID_CONTROLLER_UUID);
    }

    CheckStrUtil.checkUuidStr(deviceId);

    for (final SbiNqa sbiNqa : sbiNqaList) {
        if ((null == sbiNqa) || !StringUtils.hasLength(sbiNqa.getTestType())
                || !StringUtils.hasLength(sbiNqa.getDstIp())) {
            LOGGER.error(INVALID_CONTROLLER_UUID);
            throw new ParameterServiceException("create NQA nqaList param error");
        }
    }

    final List<ControllerNbiNqa> controllerNbiNqaList = NqaConvert.convert2Sbi(sbiNqaList);

    final Map<String, List<ControllerNbiNqa>> crtInfoMap = new HashMap<>();
    crtInfoMap.put(NQA_LIST, controllerNbiNqaList);
    final String createUrl = MessageFormat.format(ControllerUrlConst.NQA_CONFIG_URL, deviceId);

    ResultRsp<SbiNqa> response = nqaConfigService.createNqaConfig(ctrlUuid, createUrl,
            JsonUtil.toJson(crtInfoMap));

    // If response is successful then we should update successlist with
    // request NQA List.
    if (response.isSuccess()) {
        response.setSuccessed(sbiNqaList);
    }
    return response;
}

From source file:org.openo.sdnhub.overlayvpndriver.rest.NqaROAResource.java

/**
 * Modifies a NQA configuration using a specific Controller.<br>
 *
 * @param ctrlUuidParam Controller UUID/*from  w w w  . j a  v a  2s  .  c o  m*/
 * @param deviceId      Device Id
 * @param sbiNqaList    List of SbiNqa instances
 * @return ResultRsp Response object
 * @throws ServiceException In case of update operation fails
 * @since SDNHUB 0.5
 */
@PUT
@Path("/device/{deviceid}/batch-update-nqa")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public ResultRsp<SbiNqa> updateNQA(@HeaderParam("X-Driver-Parameter") String ctrlUuidParam,
        @PathParam("deviceid") String deviceId, List<SbiNqa> sbiNqaList) throws ServiceException {
    String ctrlUuid = ctrlUuidParam.substring(ctrlUuidParam.indexOf('=') + 1);
    if (!UuidUtil.validate(ctrlUuid)) {
        LOGGER.error(INVALID_CONTROLLER_UUID);
        throw new ParameterServiceException(INVALID_CONTROLLER_UUID);
    }

    CheckStrUtil.checkUuidStr(deviceId);

    for (final SbiNqa nqa : sbiNqaList) {
        if ((null == nqa) || !StringUtils.hasLength(nqa.getTestType())
                || !StringUtils.hasLength(nqa.getDstIp())) {
            LOGGER.error("updateNQA nqaList param error");
            throw new ParameterServiceException("update NQA nqaList param error");
        }
    }
    final List<ControllerNbiNqa> controllerNbiNqaList = NqaConvert.convert2Sbi(sbiNqaList);

    final Map<String, List<ControllerNbiNqa>> crtInfoMap = new HashMap<>();
    crtInfoMap.put(NQA_LIST, controllerNbiNqaList);
    final String updateUrl = MessageFormat.format(ControllerUrlConst.NQA_CONFIG_URL, deviceId);

    ResultRsp<SbiNqa> response = nqaConfigService.updateNqaConfig(ctrlUuid, updateUrl,
            JsonUtil.toJson(crtInfoMap));

    // If response is successful then we should update successlist with
    // request NQA List.
    if (response.isSuccess()) {
        response.setSuccessed(sbiNqaList);
    }
    return response;
}

From source file:org.openo.sdnhub.overlayvpndriver.sbi.impl.StaticRouteImpl.java

/**
 * Query static routes<br/>//from w  w  w  . j  a va  2 s.co  m
 *
 * @param ctrlUuid Controller UUID
 * @param deviceId Device UUID
 * @param destIp Destination IP
 * @return ResultRsp object with static route list data.
 * @throws ServiceException ServiceException In case of any query exception
 * @since SDNHUB 0.5
 */
public ResultRsp<List<ControllerNbiStaticRoute>> queryRouteByDevice(String ctrlUuid, String deviceId,
        String destIp, String staticRouteId) throws ServiceException {
    ResultRsp<List<ControllerNbiStaticRoute>> resultRsp = new ResultRsp<>(ErrorCode.OVERLAYVPN_SUCCESS);

    String url = MessageFormat.format(ControllerUrlConst.CONST_CONFIG_STATICROUTE, deviceId);

    boolean appendFlg = false;
    if (StringUtils.hasLength(destIp)) {
        StringBuilder builder = new StringBuilder();
        builder.append(url + DEST_IP_QUERY_PARAM + destIp);
        url = builder.toString();
        appendFlg = true;
    }

    if (StringUtils.hasLength(staticRouteId)) {
        String prefix = appendFlg ? "&staticRouteId=" : "?staticRouteId=";

        StringBuilder strBuidler = new StringBuilder();
        strBuidler.append(url + prefix + staticRouteId);
        url = strBuidler.toString();
    }

    HTTPReturnMessage httpMsg = OverlayVpnDriverProxy.getInstance().sendGetMsg(url, null, ctrlUuid);
    String body = httpMsg.getBody();

    if (httpMsg.isSuccess() && StringUtils.hasLength(body)) {
        OverlayVpnDriverResponse<ControllerNbiStaticRoute> response = JsonUtil.fromJson(body,
                new TypeReference<OverlayVpnDriverResponse<ControllerNbiStaticRoute>>() {
                });

        if (response != null && response.isSucess()) {
            if (null != response.getData()) {
                resultRsp.setData(Arrays.asList(response.getData()));
            }
            return resultRsp;
        }

        LOGGER.error("Query route By device:ac response return error");
        throw new ServiceException(ErrorCode.ADAPTER_ROUTER_RESPONSE_FAIL);
    }

    LOGGER.error(LOG_STATIC_ROUTE_CONFIG_FAILED);
    return new ResultRsp<>(ErrorCode.ADAPTER_ROUTER_RESPONSE_FAIL);
}

From source file:org.openo.sdnhub.overlayvpndriver.sbi.impl.StaticRouteImpl.java

/**
 * Create or update static routes<br/>
 *
 * @param ctrlUuid Controller UUID/* ww  w  .j a  va2  s.c o  m*/
 * @param deviceId Device UUID
 * @param list List of ControllerNbiStaticRoute objet to be created or updated.
 * @param createOrUpdate True if static route to be created else false if static route to be updated
 * @return ResultRsp object with static route list data.
 * @throws ServiceException ServiceException In case of any create or update exception
 * @since SDNHUB 0.5
 */
public ResultRsp<List<ControllerNbiStaticRoute>> configStaticRoute(String ctrlUuid, String deviceId,
        List<ControllerNbiStaticRoute> list, boolean createOrUpdate) throws ServiceException {

    ResultRsp<List<ControllerNbiStaticRoute>> resultRsp = new ResultRsp<>(ErrorCode.OVERLAYVPN_SUCCESS);

    StaticRouteConvert.filterCreatedStaticRouteList(ctrlUuid, deviceId, list);

    List<ControllerNbiStaticRoute> existingRoutes = new ArrayList<>();
    if (createOrUpdate) {
        existingRoutes = filterAcExistStaticRouteList(ctrlUuid, deviceId, list);
    }

    if (CollectionUtils.isEmpty(list)) {
        resultRsp.setData(existingRoutes);
        return resultRsp;
    }

    Map<String, List<ControllerNbiStaticRoute>> reqMap = new HashMap<>();
    reqMap.put("staticRouteConfigs", list);
    String url = MessageFormat.format(ControllerUrlConst.CONST_CONFIG_STATICROUTE, deviceId);

    HTTPReturnMessage httpMsg = OverlayVpnDriverProxy.getInstance().sendPutMsg(url, JsonUtil.toJson(reqMap),
            ctrlUuid);

    String body = httpMsg.getBody();

    if (httpMsg.isSuccess() && StringUtils.hasLength(body)) {
        OverlayVpnDriverResponse<List<ControllerNbiStaticRoute>> acresponse = JsonUtil.fromJson(body,
                new TypeReference<OverlayVpnDriverResponse<List<ControllerNbiStaticRoute>>>() {
                });
        if (!acresponse.isSucess()) {
            return new ResultRsp<>(ErrorCode.ADAPTER_ROUTER_RESPONSE_FAIL, acresponse.getErrmsg(), null, null,
                    null);
        }
        resultRsp.setData(acresponse.getData());
        filldata(resultRsp, existingRoutes);
        return resultRsp;
    }

    LOGGER.error(LOG_STATIC_ROUTE_CONFIG_FAILED);
    return new ResultRsp<>(ErrorCode.ADAPTER_ROUTER_RESPONSE_FAIL);

}

From source file:org.openo.sdnhub.overlayvpndriver.sbi.impl.StaticRouteImpl.java

/**
 * Delete static routes<br/>// ww w .  j a  va 2  s.c  om
 *
 * @param ctrlUuid Controller UUID
 * @param deviceId Device UUID
 * @param idList
 * @return ResultRsp Object for deleted static routes.
 * @throws ServiceException ServiceException In case of any delete exception
 * @since SDNHUB 0.5
 */
public ResultRsp<String> deleteRouteByDevice(String ctrlUuid, String deviceId, List<String> idList)
        throws ServiceException {
    ResultRsp<String> resultRsp = new ResultRsp<>(ErrorCode.OVERLAYVPN_SUCCESS);
    Map<String, List<String>> reqMap = new HashMap<>();
    reqMap.put(DELETE_ROUTE_PARAMETER, idList);
    String url = MessageFormat.format(ControllerUrlConst.CONST_CONFIG_STATICROUTE, deviceId);

    HTTPReturnMessage httpMsg = OverlayVpnDriverProxy.getInstance().sendDeleteMsg(url, JsonUtil.toJson(reqMap),
            ctrlUuid);

    String body = httpMsg.getBody();

    if (httpMsg.isSuccess() && StringUtils.hasLength(body)) {
        ACDelResponse acdelReponse = JsonUtil.fromJson(body, new TypeReference<ACDelResponse>() {
        });
        if (!acdelReponse.isSucess()) {
            resultRsp.setErrorCode(ErrorCode.ADAPTER_ROUTER_RESPONSE_FAIL);
            resultRsp.setMessage(acdelReponse.getAllErrmsg());
        }
        return resultRsp;
    }

    LOGGER.error(LOG_STATIC_ROUTE_CONFIG_FAILED);
    resultRsp.setErrorCode(ErrorCode.OVERLAYVPN_FAILED);
    resultRsp.setMessage("delete Route by device failed.");
    return resultRsp;
}

From source file:org.openo.sdnhub.overlayvpndriver.sbi.impl.StaticRouteImpl.java

private void checkInputStaticType(SbiNeStaticRoute route) throws ServiceException {
    try {//  w w  w . java 2 s . co  m

        if (StringUtils.hasLength(route.getDestIp())) {
            route.setDestIpData(JsonUtil.fromJson(route.getDestIp(), Ip.class));
        }

        if (StringUtils.hasLength(route.getNextHop())) {
            route.setNextHopData(JsonUtil.fromJson(route.getNextHop(), Ip.class));
        }
    } catch (IllegalArgumentException e) {
        LOGGER.error("null destIp", e);
        throw new ParameterServiceException("null destIp.");
    }

    checkIpFormat(route.getDestIpData());

    if (null != route.getNextHopData()) {
        checkIpFormat(route.getNextHopData());
    }

    checkDestIpAndNextHop(route.getDestIpData(), route.getNextHopData());

    if (null == route.getNextHopData() && !StringUtils.hasLength(route.getOutInterface())) {
        throw new ParameterServiceException("Both NextHop and OutInterfaceName are null for static type");
    }

}

From source file:org.openo.sdnhub.overlayvpndriver.sbi.impl.StaticRouteImpl.java

private void checkIpFormat(Ip destIp) throws ServiceException {
    ValidationUtil.validateModel(destIp);

    String ipv4 = destIp.getIpv4();
    String ipv6 = destIp.getIpv6();
    String ipv4Mask = destIp.getIpMask();
    String prefixLength = destIp.getPrefixLength();

    if (StringUtils.hasLength(ipv4) && !StringUtils.hasLength(ipv4Mask)) {
        throw new ParameterServiceException("ipv4 format need mask");
    }/*www .  ja  va2s  . co  m*/

    if (!StringUtils.hasLength(ipv4) && StringUtils.hasLength(ipv4Mask)) {
        throw new ParameterServiceException("ipv4 format need ipv4");
    }

    if (!StringUtils.hasLength(ipv6) && StringUtils.hasLength(prefixLength)) {
        throw new ParameterServiceException("ipv4 format need ipv6");
    }

    if (StringUtils.hasLength(ipv6) && !StringUtils.hasLength(prefixLength)) {
        throw new ParameterServiceException("ipv6 format need prefix");
    }

    StringBuilder ipv4StringBUilder = new StringBuilder();
    if (StringUtils.hasLength(ipv4) || StringUtils.hasLength(ipv4Mask)) {
        ipv4StringBUilder.append(destIp.getIpv4());
        ipv4StringBUilder.append(destIp.getIpMask());
    }

    check(destIp, ipv6, prefixLength, ipv4StringBUilder);
}

From source file:org.openo.sdnhub.overlayvpndriver.sbi.impl.StaticRouteImpl.java

private void check(Ip destIp, String ipv6, String prefixLength, StringBuilder ipv4StringBUilder)
        throws ServiceException {
    StringBuilder ipv6StringBUilder = new StringBuilder();
    if (StringUtils.hasLength(ipv6) || StringUtils.hasLength(prefixLength)) {
        ipv6StringBUilder.append(destIp.getIpv6());
        ipv6StringBUilder.append(destIp.getPrefixLength());
    }//from w w w  .jav a 2 s  .  c  o m
    if (!StringUtils.hasLength(ipv4StringBUilder.toString())
            && !StringUtils.hasLength(ipv6StringBUilder.toString())) {
        throw new ParameterServiceException("no ipv4 or ipv6");
    }
    if (StringUtils.hasLength(ipv4StringBUilder.toString())
            && StringUtils.hasLength(ipv6StringBUilder.toString())) {
        throw new ParameterServiceException("both ipv4 and ipv6 are not null");
    }

    if (StringUtils.hasLength(ipv6StringBUilder.toString())
            && (!StringUtils.hasLength(destIp.getIpv6()) || !StringUtils.hasLength(destIp.getPrefixLength()))) {
        throw new ParameterServiceException("parameter error for ipv6");
    }

    if (StringUtils.hasLength(ipv4StringBUilder.toString())) {
        destIp.setTypeV4(true);
        return;
    }
    destIp.setTypeV4(false);
}