The use case here is that we very often want to stage a collection of files to customise an entity. Those files need not have the same names or locations locally as they do remotely. This came from the Qpid entity, but it is very obviously useful in many others, and we don't want to be copy/pasting the same code with minor variations across multiple entities. The second use case is the same as the initial one, except we transform the files as templates first.

I guess the method names could do with some further thought, but I think the rationale for putting them in the driver is clear. I'll have a think about a separate template processing class, also extracting out your FreeMarker stuff.