public static FBConnectionRequestInfo getCri(Properties info, FBConnectionRequestInfo baseCri) { FBConnectionRequestInfo cri;
public static FBConnectionRequestInfo getCri(Properties info, FBConnectionRequestInfo baseCri) { final FBConnectionRequestInfo cri = new FBConnectionRequestInfo(baseCri);
    public static FBConnectionRequestInfo getCri(Properties info,        FBConnectionRequestInfo baseCri)    {        FBConnectionRequestInfo cri;        if (baseCri != null)            cri = new FBConnectionRequestInfo(baseCri);        else            cri = new FBConnectionRequestInfo(getDefaultCri(GDSFactory.getDefaultGDS()));        // process all set keys        Iterator keys = info.keySet().iterator();        while(keys.hasNext()) {            String key = (String)keys.next();            String value = info.getProperty(key);            Integer type = (Integer)dpbTypes.get(key);            // if the type is unknown, continue            if (type == null) continue;                        // set the value of the DPB            try {                // try to deal with a value as a byte                byte byteValue = Byte.parseByte(value);                cri.setProperty(type.intValue(), new byte[] {byteValue});            } catch(NumberFormatException nfex) {                // ok, that's not a byte, then set it as string                if ("".equals(value))                    cri.setProperty(type.intValue());                else                    cri.setProperty(type.intValue(), value);            }        }        return cri;    }