add pre and post hooks to adapters