if (!adapterSpec.isParented()) {
saveRootAdapter(adapter, connection);
} else if (adapterSpec.isParentedOrFreeCollection()) {
saveParentedCollectionAdapter(adapter, connection);
} else {
throw new NotYetImplementedException("cannot yet persist aggregated objects: "
+ adapter.toString());
}
} finally {
connectionPool.release(connection);
}