added componentadapter class