implement support for init type modifiersBy default types do not support additional modifiers (and will fail withan error message). However to support init modifiers the typeProjectInitDescriptor implementation class simply needs to override thewithModifiers method and add handling logic in the generate method.Currently only the java-library type supports init modifiers (spock).
REVIEW-3373: Add back BuildTypeID specific ProjectInitDescriptors- ProjectDescriptorRegistryFactory should not now about InitDescriptor details. Moved the details into the BuildType related ProjectInitDescriptor- moved lot of production code related to ProjectInitDescriptors from groovy to java- didn't merge the ProjectInitDescriptor and TemplateOperation but ProjectInitDescriptor now extends TemplateOperation. feels more natural to me than merging them into one interface- added back languageProjectInitDescriptor for dealing with basic language related ProjectInitDescriptors
Some changes on build init types based on REVIEW-3243 - start composing different init descriptors - seperate init ids from descriptors - move file generation into seperate util class for better testing
Some more renamings in former build-setup subproject - rename build-setup plugin to build-init - rename ProjectSetupDescriptor interface to ProjectInitDescriptor - renamed buildSetup gradle subproject to buildInit