dnet-applications/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/db/enums/CommunityMembershipTypeConv...

32 lines
854 B
Java

package eu.dnetlib.openaire.community.db.enums;
import javax.persistence.AttributeConverter;
import org.apache.commons.lang3.StringUtils;
public class CommunityMembershipTypeConverter implements AttributeConverter<CommunityMembershipType, String> {
@Override
public String convertToDatabaseColumn(final CommunityMembershipType attribute) {
if (attribute == null) {
return null;
} else if (attribute == CommunityMembershipType.byInvitation) {
return "by-invitation";
} else {
return attribute.toString();
}
}
@Override
public CommunityMembershipType convertToEntityAttribute(final String dbData) {
if (StringUtils.isBlank(dbData)) {
return null;
} else if (dbData.equalsIgnoreCase("by-invitation")) {
return CommunityMembershipType.byInvitation;
} else {
return CommunityMembershipType.valueOf(dbData);
}
}
}