add adapter by delegate