if (pkType.equals(Float.class) || pkType.equals(float.class))
return new FloatId(cls, (Float) oid);
if (pkType.equals(Integer.class) || pkType.equals(int.class))
return new IntId(cls, (Integer) oid);
if (pkType.equals(Long.class) || pkType.equals(long.class))
return new LongId(cls, (Long) oid);
if (pkType.equals(Short.class) || pkType.equals(short.class))
return new ShortId(cls, (Short) oid);
if (pkType.equals(String.class))
return new StringId(cls, (String) oid);
if (pkType.equals(BigDecimal.class))