=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryCombo.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryCombo.java 2011-09-26 15:17:15 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryCombo.java 2011-09-26 15:36:02 +0000 @@ -33,6 +33,7 @@ import java.util.Set; import org.hisp.dhis.common.AbstractIdentifiableObject; +import org.hisp.dhis.common.CombinationGenerator; /** * @author Abyot Aselefew @@ -133,6 +134,22 @@ return arrays; } + public void generateOptionCombos() + { + CombinationGenerator generator = + new CombinationGenerator( this.getCategoryOptionsAsArray() ); + + while ( generator.hasNext() ) + { + DataElementCategoryOptionCombo optionCombo = new DataElementCategoryOptionCombo(); + optionCombo.setCategoryOptions( generator.getNext() ); + optionCombo.setCategoryCombo( this ); + this.optionCombos.add( optionCombo ); + } + } + + //TODO update category option -> category option combo association + // ------------------------------------------------------------------------- // hashCode, equals and toString // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementCategoryService.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementCategoryService.java 2011-09-26 15:17:15 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementCategoryService.java 2011-09-26 15:36:02 +0000 @@ -469,24 +469,14 @@ public void generateOptionCombos( DataElementCategoryCombo categoryCombo ) { - CombinationGenerator generator = - new CombinationGenerator( categoryCombo.getCategoryOptionsAsArray() ); - - Set optionCombos = new HashSet(); - - while ( generator.hasNext() ) + categoryCombo.generateOptionCombos(); + + for ( DataElementCategoryOptionCombo optionCombo : categoryCombo.getOptionCombos() ) { - DataElementCategoryOptionCombo optionCombo = new DataElementCategoryOptionCombo(); - optionCombo.setCategoryOptions( generator.getNext() ); - optionCombo.setCategoryCombo( categoryCombo ); - optionCombos.add( optionCombo ); addDataElementCategoryOptionCombo( optionCombo ); } - categoryCombo.setOptionCombos( optionCombos ); updateDataElementCategoryCombo( categoryCombo ); - - //TODO update category option -> category option combo association } public List sortOptionCombos( DataElementCategoryCombo categoryCombo ) === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java 2011-09-10 08:40:27 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java 2011-09-26 15:24:25 +0000 @@ -259,18 +259,18 @@ { Map> mappedDataElements = new HashMap>(); - for ( DataElement de : dataElements ) + for ( DataElement dataElement : dataElements ) { - if ( mappedDataElements.containsKey( de.getCategoryCombo() ) ) + if ( mappedDataElements.containsKey( dataElement.getCategoryCombo() ) ) { - mappedDataElements.get( de.getCategoryCombo() ).add( de ); + mappedDataElements.get( dataElement.getCategoryCombo() ).add( dataElement ); } else { List des = new ArrayList(); - des.add( de ); + des.add( dataElement ); - mappedDataElements.put( de.getCategoryCombo(), des ); + mappedDataElements.put( dataElement.getCategoryCombo(), des ); } } @@ -281,9 +281,9 @@ { Set setCategoryCombos = new HashSet(); - for ( DataElement de : dataElements ) + for ( DataElement dataElement : dataElements ) { - setCategoryCombos.add( de.getCategoryCombo() ); + setCategoryCombos.add( dataElement.getCategoryCombo() ); } List listCategoryCombos = new ArrayList( setCategoryCombos ); === modified file 'dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/LoadFormAction.java' --- dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/LoadFormAction.java 2011-08-16 07:51:39 +0000 +++ dhis-2/dhis-web/dhis-web-dataentry/src/main/java/org/hisp/dhis/de/action/LoadFormAction.java 2011-09-26 15:24:25 +0000 @@ -238,7 +238,7 @@ for ( DataElementCategoryCombo categoryCombo : orderedCategoryCombos ) { - Collection optionCombos = categoryService.sortOptionCombos( categoryCombo ); + List optionCombos = categoryService.sortOptionCombos( categoryCombo ); orderdCategoryOptionCombos.put( categoryCombo.getId(), optionCombos );