/** * Returns all program attributes part of a dimension or filter. */ public List<DimensionalItemObject> getAllProgramDataElementsAndAttributes() { return ListUtils.union( getAllProgramAttributes(), getAllProgramDataElements() ); }
/** * Returns all programs part of program attributes and program data elements * part of a dimension or filter. */ public Set<IdentifiableObject> getProgramsInAttributesAndDataElements() { final Set<IdentifiableObject> programs = new HashSet<>(); getAllProgramAttributes().stream() .map( a -> (ProgramTrackedEntityAttributeDimensionItem) a) .filter( a -> a.getProgram() != null ) .forEach( a -> programs.add( a.getProgram() ) ); getAllProgramDataElements().stream() .map( d -> (ProgramDataElementDimensionItem) d) .filter( d -> d.getProgram() != null ) .forEach( d -> programs.add( d.getProgram() ) ); return programs; }