This is a simplified version of the code in question, one generic class uses another class with generic type parameters and needs to pass one of the generic types to a metho
You can add @SafeVarargs to method since Java 7, and you don't have to annotate on client code.
class Assembler { @SafeVarargs final void assemble(X container, Y... args) { //has to be final... } }