Projekt

Obecné

Profil

Stáhnout (912 Bajtů) Statistiky
| Větev: | Tag: | Revize:
1
package cz.zcu.kiv.backendapi.external;
2

    
3
import org.springframework.stereotype.Component;
4

    
5
import javax.persistence.AttributeConverter;
6
import java.util.Arrays;
7
import java.util.HashSet;
8
import java.util.Set;
9
import java.util.stream.Collectors;
10

    
11
/**
12
 * Class that converts set of strings to string and string to set of strings
13
 */
14
@Component
15
public class SetToStringConverter implements AttributeConverter<Set<String>, String> {
16
    /**
17
     * Delimiter for splitting/joining string
18
     */
19
    private static final String DELIMITER = ",";
20

    
21
    @Override
22
    public String convertToDatabaseColumn(Set<String> attribute) {
23
        return attribute == null ? null : String.join(DELIMITER, attribute);
24
    }
25

    
26
    @Override
27
    public Set<String> convertToEntityAttribute(String dbData) {
28
        return dbData == null ? new HashSet<>() : Arrays.stream(dbData.split(DELIMITER)).collect(Collectors.toSet());
29
    }
30

    
31
}
(7-7/7)