protected void initialize(ShapeDetails shp, StructObjectInspector OI) throws HiveException { String serdeClassName = shp.getSerdeClassName(); Properties serDeProps = new Properties(); Map<String, String> serdePropsMap = new LinkedHashMap<String, String>(); addOIPropertiestoSerDePropsMap(OI, serdePropsMap); for (String serdeName : serdePropsMap.keySet()) { serDeProps.setProperty(serdeName, serdePropsMap.get(serdeName)); } try { SerDe serDe = (SerDe) SerDeUtils.lookupDeserializer(serdeClassName); serDe.initialize(hConf, serDeProps); shp.setSerde(serDe); shp.setOI((StructObjectInspector) serDe.getObjectInspector()); } catch (SerDeException se) { throw new HiveException(se); } }