Passed
Push — master ( 6972ed...f39369 )
by Filip
03:32
created

failure(Contract,Contract,ValidationError)   A

Complexity

Conditions 1

Size

Total Lines 5
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 5
dl 0
loc 5
rs 10
c 0
b 0
f 0
1
package com.hltech.vaunt.validator;
2
3
import com.hltech.vaunt.core.domain.model.Contract;
4
import lombok.Data;
5
6
import java.util.ArrayList;
7
import java.util.Arrays;
8
import java.util.List;
9
10
@Data
11
public class ValidationResult {
12
    private final boolean isValid;
13
    private final String description;
14
    private final List<ValidationError> errors;
15
16
    static ValidationResult success(Contract expectation) {
17
        return new ValidationResult(
18
                true,
19
                String.format("Matching contract: %s %s, %s",
20
                        expectation.getDestinationType(),
21
                        expectation.getDestinationName(),
22
                        expectation.getBody().getId()),
23
                new ArrayList<>());
24
    }
25
26
    static ValidationResult failure(Contract expectation, ValidationError... errors) {
27
        return new ValidationResult(false, String.format("Expectation: %s", expectation), Arrays.asList(errors));
28
    }
29
30
    static ValidationResult failure(Contract expectation, Contract capability, ValidationError... errors) {
31
        return new ValidationResult(
32
                false,
33
                String.format("Expectation: %s, Capability: %s", expectation, capability),
34
                Arrays.asList(errors));
35
    }
36
}
37