throws DriverException {
String dbfPath = path.substring(0, path.length() - 3) + "dbf";
new DBFDriver().createSource(dbfPath, dsm);
String shxPath = path.substring(0, path.length() - 3) + "shx";
SHPFileWrite filewrite;
try {
filewrite = new SHPFileWrite((FileChannel) getWriteChannel(path),
(FileChannel) getWriteChannel(shxPath));
int type = dsm.getGeometryType();
switch (type) {
case FShape.POINT:
type = 1;
break;
case FShape.LINE:
type = 3;
break;
case FShape.POLYGON:
type = 5;
break;
case FShape.MULTIPOINT:
type = 8;
break;
}
filewrite.write(new IGeometry[0], type);
} catch (IOException e) {
throw new DriverException(e);
} catch (ShapefileException e) {
throw new DriverException(e);
}