/** * Constructs a new FactSetGroup from the given context, FactSetInfo and value. * * @param context The LoadContext used to resolve references * @param fsi The FactSetInfo indicating the underlying characteristics of the Fact that this * FactSetGroup will check * @param value The String representation of the value that this FactSetGroup will be looking for */ public FactSetGroup(LoadContext context, FactSetInfo<T, F> fsi, String value) { if (fsi.getUsableLocation().equals(CDOMObject.class)) { throw new IllegalArgumentException("FactSetGroup cannot be global"); } def = fsi; AbstractReferenceContext refContext = context.getReferenceContext(); allObjects = refContext.getCDOMAllReference(def.getUsableLocation()); toMatch = def.getFormatManager().convertIndirect(value); if (toMatch == null) { throw new IllegalArgumentException( "Failed to convert " + value + " as a " + def.getFormatManager().getManagedClass().getSimpleName()); } }