AbstractAdapter