/** * @param categoryCombo the category combo. * @param categoryOptions the category options. * @return CategoryOptionCombo */ public static CategoryOptionCombo createCategoryOptionCombo( CategoryCombo categoryCombo, CategoryOption... categoryOptions ) { CategoryOptionCombo categoryOptionCombo = new CategoryOptionCombo(); categoryOptionCombo.setAutoFields(); categoryOptionCombo.setCategoryCombo( categoryCombo ); for ( CategoryOption categoryOption : categoryOptions ) { categoryOptionCombo.getCategoryOptions().add( categoryOption ); categoryOption.getCategoryOptionCombos().add( categoryOptionCombo ); } return categoryOptionCombo; }
public List<CategoryOptionCombo> generateOptionCombosList() { List<CategoryOptionCombo> list = new ArrayList<>(); CombinationGenerator<CategoryOption> generator = new CombinationGenerator<>( getCategoryOptionsAsArray() ); while ( generator.hasNext() ) { CategoryOptionCombo optionCombo = new CategoryOptionCombo(); optionCombo.setCategoryOptions( new HashSet<>( generator.getNext() ) ); optionCombo.setCategoryCombo( this ); list.add( optionCombo ); } return list; }
/** * @param categoryComboUniqueIdentifier A unique character to identify the * category option combo. * @param dataElementCategoryCombo The associated category combination. * @param categoryOptions the category options. * @return CategoryOptionCombo */ public static CategoryOptionCombo createCategoryOptionCombo( char categoryComboUniqueIdentifier, CategoryCombo dataElementCategoryCombo, CategoryOption... categoryOptions ) { CategoryOptionCombo categoryOptionCombo = new CategoryOptionCombo(); categoryOptionCombo.setAutoFields(); categoryOptionCombo.setCategoryCombo( dataElementCategoryCombo ); for ( CategoryOption categoryOption : categoryOptions ) { categoryOptionCombo.getCategoryOptions().add( categoryOption ); categoryOption.getCategoryOptionCombos().add( categoryOptionCombo ); } return categoryOptionCombo; }
/** * @param categoryComboUniqueIdentifier A unique character to identify the * category combo. * @param categoryOptionUniqueIdentifiers Unique characters to identify the * category options. * @return CategoryOptionCombo */ public static CategoryOptionCombo createCategoryOptionCombo( char categoryComboUniqueIdentifier, char... categoryOptionUniqueIdentifiers ) { CategoryOptionCombo categoryOptionCombo = new CategoryOptionCombo(); categoryOptionCombo.setAutoFields(); categoryOptionCombo.setCategoryCombo( new CategoryCombo( "CategoryCombo" + categoryComboUniqueIdentifier, DataDimensionType.DISAGGREGATION ) ); for ( char identifier : categoryOptionUniqueIdentifiers ) { categoryOptionCombo.getCategoryOptions() .add( new CategoryOption( "CategoryOption" + identifier ) ); } return categoryOptionCombo; }
categoryOptionCombo.setCode( "default" ); categoryOptionCombo.setCategoryCombo( categoryCombo ); categoryOptionCombo.addCategoryOption( categoryOption );