1 package net.sumaris.core.dao.technical.schema; 2 3 /*- 4 * #%L 5 * SUMARiS:: Core 6 * %% 7 * Copyright (C) 2018 - 2019 SUMARiS Consortium 8 * %% 9 * This program is free software: you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License as 11 * published by the Free Software Foundation, either version 3 of the 12 * License, or (at your option) any later version. 13 * 14 * This program is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public 20 * License along with this program. If not, see 21 * <http://www.gnu.org/licenses/gpl-3.0.html>. 22 * #L% 23 */ 24 25 import org.apache.commons.lang3.StringUtils; 26 27 /** 28 * Copy from jdbc-synchro library 29 */ 30 public class SumarisMetadataUtils { 31 32 /** 33 * <p> 34 * Trims the passed in value to the maximum name length. 35 * </p> 36 * If no maximum length has been set then this method does nothing. 37 * 38 * @param name 39 * the name length to check and trim if necessary 40 * @param nameMaxLength 41 * if this is not null, then the name returned will be trimmed to 42 * this length (if it happens to be longer). 43 * @param nameMaxLength 44 * if this is not null, then the name returned will be trimmed to 45 * this length (if it happens to be longer). 46 * @return String the string to be used as SQL type 47 */ 48 public static String ensureMaximumNameLength(String name, 49 Integer nameMaxLength) { 50 if (StringUtils.isNotBlank(name) && nameMaxLength != null) { 51 int max = nameMaxLength.intValue(); 52 if (name.length() > max) { 53 name = name.substring(0, max); 54 } 55 } 56 return name; 57 } 58 }