/** * Creates task action event requests for tracked entity instance creation, program enrollment, * and program stage events. * * @return the new Channel Request */ public ChannelRequest build() { ProgramActionBuilder programActionBuilder = new ProgramActionBuilder(); CreateInstanceActionBuilder createInstanceActionBuilder = new CreateInstanceActionBuilder(); StageActionBuilder stageActionBuilder = new StageActionBuilder(); SendDataValueSetActionBuilder sendDataValueSetActionBuilder = new SendDataValueSetActionBuilder(); List<ActionEventRequest> actions = new ArrayList<>(); List<Program> programs = programService.findByRegistration(true); actions.addAll(programActionBuilder.build(programs, serverVersion)); List<Stage> stages = stageService.findAll(); actions.addAll(stageActionBuilder.build(stages)); List<TrackedEntityAttribute> attributes = trackedEntityAttributeService.findAll(); List<TrackedEntity> trackedEntities = trackedEntityService.findAll(); actions.addAll(createInstanceActionBuilder.build(attributes, trackedEntities)); actions.addAll( sendDataValueSetActionBuilder.addSendDataValueSetActions(dataSetService.findAll())); actions.add(addSendDataValue()); return new ChannelRequest( DisplayNames.DHIS2_DISPLAY_NAME, bundleContext.getBundle().getSymbolicName(), bundleContext.getBundle().getVersion().toString(), null, new ArrayList<>(), actions); }