package Ġcn . so ul . android . plugin . component Ċ Ċ import Ġcom . android . build . gradle . internal . tasks . factory . Task Creation Action Ċ import Ġcom . android . build . gradle . internal . tasks . factory . Task Factory Ċ import Ġorg . gradle . api . Task Ċ import Ġorg . gradle . api . tasks . Task Provider Ċ Ċ /** Ċ Ġ* Ġ@ author Ġpan xing hai Ċ Ġ* Ċ Ġ* Ġdate Ġ: Ġ 2 0 1 9 - 0 7 - 1 2 Ġ 1 7 : 3 8 Ċ Ġ*/ Ċ class ĠPlugin Task Factory ( private Ġval Ġfactory : ĠTask Factory ) Ġ: ĠTask Factory Ġby Ġfactory Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġ< T Ġ: ĠTask > Ġregister ( creation Action : ĠTask Creation Action < T >): ĠTask Provider < T > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtask Provider Ġ= Ġfactory . register ( creation Action ) ĊĠĠĠĠĠĠĠ Ġtask Provider . get (). group Ġ= Ġ" component " ĊĠĠĠĠĠĠĠ Ġreturn Ġtask Provider ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġregister ( name : ĠString ): ĠTask Provider < Task > Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtask Provider Ġ= Ġfactory . register ( name ) ĊĠĠĠĠĠĠĠ Ġtask Provider . get (). group Ġ= Ġ" component " ĊĠĠĠĠĠĠĠ Ġreturn Ġtask Provider ĊĠĠĠ Ġ} Ċ }