/** * Create cardinality which ends at #end and starts at zero. * * @param end the right number of cardinality interval * @return cardinality * @see org.jboss.dependency.spi.Cardinality#createCardinality(int,int) */ public static Cardinality createLimitedCardinality(int end) { return createCardinality(0, end); }
/** * Create cardinality which starts at #start and has no limit. * * @param start the left number of cardinality interval * @return cardinality * @see org.jboss.dependency.spi.Cardinality#createCardinality(int,int) */ public static Cardinality createUnlimitedCardinality(int start) { return createCardinality(start, INFINITY); }
/** * Parse cardinality from string - #1..#2. * * @param string cardinality string * @return cardinality */ public static Cardinality fromString(String string) { if (string == null) throw new IllegalArgumentException("Null string."); if (string.contains("..")) { String[] args = string.split("\\.\\."); if (args == null || args.length != 2) throw new IllegalArgumentException("Illegal cardinality format: " + string); return createCardinality(getLimitFromString(args[0]), getLimitFromString(args[1])); } else return createUnlimitedCardinality(getLimitFromString(string)); }