@Inject
public ProgramIdCompleterFactory(ApplicationClient appClient) {
this.programIdCompleters = ImmutableMap.<ElementType, ProgramIdCompleter>builder()
.put(ElementType.FLOW,
new ProgramIdCompleter(appClient, ElementType.FLOW.getProgramType()))
.put(ElementType.MAPREDUCE,
new ProgramIdCompleter(appClient, ElementType.MAPREDUCE.getProgramType()))
.put(ElementType.PROCEDURE,
new ProgramIdCompleter(appClient, ElementType.PROCEDURE.getProgramType()))
.put(ElementType.WORKFLOW,
new ProgramIdCompleter(appClient, ElementType.WORKFLOW.getProgramType()))
.build();
}