//----------------------------------------------------------------------------//
// //
// V i p U t i l //
// //
//----------------------------------------------------------------------------//
// <editor-fold defaultstate="collapsed" desc="hdr"> //
// Copyright © Hervé Bitteur and others 2000-2013. All rights reserved. //
// This software is released under the GNU General Public License. //
// Goto http://kenai.com/projects/audiveris to report bugs or suggestions. //
//----------------------------------------------------------------------------//
// </editor-fold>
package omr.util;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.List;
/**
* Class {@code VipUtil} gathers convenient methods related to Vip
* handling.
*
* @author Hervé Bitteur
*/
public class VipUtil
{
//~ Static fields/initializers ---------------------------------------------
/** Usual logger utility */
private static final Logger logger = LoggerFactory.getLogger(VipUtil.class);
//~ Methods ----------------------------------------------------------------
//-----------//
// decodeIds //
//-----------//
/**
* Parse a string of integer ids, separated by comma.
*
* @param str the string to parse
* @return tha sequence of ids decoded
*/
public static List<Integer> decodeIds (String str)
{
List<Integer> ids = new ArrayList<>();
// Retrieve the list of ids
String[] tokens = str.split("\\s*,\\s*");
for (String token : tokens) {
try {
String trimmedToken = token.trim();
if (!trimmedToken.isEmpty()) {
ids.add(Integer.decode(trimmedToken));
}
} catch (Exception ex) {
logger.warn("Illegal glyph id", ex);
}
}
return ids;
}
}