package Ġcodes . rich ik . robot config compiler . plugin Ċ Ċ import Ġorg . gradle . api . Plugin Ċ import Ġorg . gradle . api . Project Ċ Ċ const Ġval ĠEXT ENSION _ NAME Ġ= Ġ" robot Config Compiler " Ċ const Ġval ĠTASK _ NAME Ġ= Ġ" compile Robot Config " Ċ Ċ abstract Ġclass ĠRobot Config Plugin Ġ: ĠPlugin < Project > Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġapply ( project : ĠProject ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠAdd Ġthe Ġ' template ' Ġextension Ġobject ĊĠĠĠĠĠĠĠ Ġval Ġextension Ġ= Ġproject . extensions . create ( EXTENSION _ NAME , ĠRobot Config Extension :: class . java , Ġproject ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠAdd Ġa Ġtask Ġthat Ġuses Ġconfiguration Ġfrom Ġthe Ġextension Ġobject ĊĠĠĠĠĠĠĠ Ġproject . tasks . register ( TASK _ NAME , ĠRobot Config Example Task :: class . java ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . tag . set ( extension . tag ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . message . set ( extension . message ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . outputFile . set ( extension . outputFile ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ