package org.gcube.resource.management.quota.manager.persistence.entities.converters; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import javax.persistence.AttributeConverter; import javax.persistence.Converter; /** * StringListConverter * * @author Alessandro Pieve (alessandro.pieve@isti.cnr.it) * */ @Converter public class StringListConverter implements AttributeConverter, String>{ @Override public String convertToDatabaseColumn(List list) { if (list!=null && list.size()>0){ StringBuilder builder = new StringBuilder(); for (String value: list) builder.append(value).append(",||,"); return builder.substring(builder.length()-4, builder.length()); } else return ""; } @Override public List convertToEntityAttribute(String dbEntry) { if (dbEntry!=null && !dbEntry.isEmpty()){ return Arrays.asList(dbEntry.split(",\\|\\|,")); } else return new ArrayList(0); } }