Search in sources :

Example 1 with Value

use of com.blackducksoftware.integration.fortify.model.UpdateFortifyApplicationAttributesRequest.Value in project hub-fortify-ssc-integration-service by blackducksoftware.

the class MappingParser method addSingleOrMultipleDataTypeAttributes.

/**
 * Return single or multiple option data type attribute values
 *
 * @param fortifyAttributeDefinition
 * @return
 * @throws IntegrationException
 */
private List<Value> addSingleOrMultipleDataTypeAttributes(FortifyAttributeDefinition fortifyAttributeDefinition) throws IntegrationException {
    List<Value> values = new ArrayList<>();
    Value value;
    if ("SINGLE".equalsIgnoreCase(fortifyAttributeDefinition.getType())) {
        value = new Value(validateSingleAndMultipleDataTypeAttributeValue(fortifyAttributeDefinition, attributeConstants.getProperty(fortifyAttributeDefinition.getName())));
        values.add(value);
    } else {
        String[] valueArr = attributeConstants.getProperty(fortifyAttributeDefinition.getName()).split(",");
        for (String strValue : valueArr) {
            value = new Value(validateSingleAndMultipleDataTypeAttributeValue(fortifyAttributeDefinition, strValue.trim()));
            values.add(value);
        }
    }
    return values;
}
Also used : Value(com.blackducksoftware.integration.fortify.model.UpdateFortifyApplicationAttributesRequest.Value) ArrayList(java.util.ArrayList)

Example 2 with Value

use of com.blackducksoftware.integration.fortify.model.UpdateFortifyApplicationAttributesRequest.Value in project hub-fortify-ssc-integration-service by blackducksoftware.

the class MappingParser method addCustomAttributes.

/**
 * Add the custom required attributes to fortify update attribute definition request
 *
 * @param fortifyAttributeDefinition
 * @return
 * @throws IntegrationException
 */
private UpdateFortifyApplicationAttributesRequest addCustomAttributes(FortifyAttributeDefinition fortifyAttributeDefinition) throws IntegrationException {
    List<Value> values = null;
    Object value = null;
    String dataType = fortifyAttributeDefinition.getType();
    try {
        switch(dataType) {
            case "SINGLE":
            case "MULTIPLE":
                values = new ArrayList<>();
                values.addAll(addSingleOrMultipleDataTypeAttributes(fortifyAttributeDefinition));
                break;
            case "TEXT":
            case "LONG_TEXT":
            case "SENSITIVE_TEXT":
                value = attributeConstants.getProperty(fortifyAttributeDefinition.getName().trim());
                break;
            case "INTEGER":
                value = Integer.parseInt(attributeConstants.getProperty(fortifyAttributeDefinition.getName().trim()));
                break;
            case "BOOLEAN":
                value = Boolean.parseBoolean(attributeConstants.getProperty(fortifyAttributeDefinition.getName().trim()));
                break;
            case "DATE":
                DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
                LocalDate.parse(attributeConstants.getProperty(fortifyAttributeDefinition.getName().trim()), formatter);
                value = attributeConstants.getProperty(fortifyAttributeDefinition.getName().trim());
                break;
            default:
                value = attributeConstants.getProperty(fortifyAttributeDefinition.getName().trim());
        }
    } catch (NumberFormatException e) {
        throw new IntegrationException(fortifyAttributeDefinition.getName() + "'s attribute value \"" + attributeConstants.getProperty(fortifyAttributeDefinition.getName().trim()) + "\" is not a valid " + dataType + "!");
    } catch (DateTimeParseException e) {
        throw new IntegrationException(fortifyAttributeDefinition.getName() + "'s attribute value \"" + attributeConstants.getProperty(fortifyAttributeDefinition.getName().trim()) + "\" is not a valid date! Please make sure the date format is yyyy-MM-dd");
    }
    logger.debug("Attribute name::" + fortifyAttributeDefinition.getName() + ", values::" + values + ", value::" + value);
    return new UpdateFortifyApplicationAttributesRequest(fortifyAttributeDefinition.getId(), values, value);
}
Also used : DateTimeParseException(java.time.format.DateTimeParseException) IntegrationException(com.blackducksoftware.integration.exception.IntegrationException) UpdateFortifyApplicationAttributesRequest(com.blackducksoftware.integration.fortify.model.UpdateFortifyApplicationAttributesRequest) Value(com.blackducksoftware.integration.fortify.model.UpdateFortifyApplicationAttributesRequest.Value) DateTimeFormatter(java.time.format.DateTimeFormatter)

Aggregations

Value (com.blackducksoftware.integration.fortify.model.UpdateFortifyApplicationAttributesRequest.Value)2 IntegrationException (com.blackducksoftware.integration.exception.IntegrationException)1 UpdateFortifyApplicationAttributesRequest (com.blackducksoftware.integration.fortify.model.UpdateFortifyApplicationAttributesRequest)1 DateTimeFormatter (java.time.format.DateTimeFormatter)1 DateTimeParseException (java.time.format.DateTimeParseException)1 ArrayList (java.util.ArrayList)1