=== 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 2014-04-25 11:22:12 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementCategoryCombo.java 2014-04-28 15:43:02 +0000 @@ -220,6 +220,11 @@ { this.optionCombos = new HashSet( generateOptionCombosList() ); } + + public boolean hasOptionCombos() + { + return optionCombos != null && !optionCombos.isEmpty(); + } // ------------------------------------------------------------------------- // hashCode, equals and toString === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataapproval/DefaultDataApprovalService.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataapproval/DefaultDataApprovalService.java 2014-04-20 00:18:20 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataapproval/DefaultDataApprovalService.java 2014-04-28 15:43:02 +0000 @@ -129,7 +129,7 @@ public void deleteDataApproval( DataApproval dataApproval ) { if ( ( dataApproval.getCategoryOptionGroup() == null || securityService.canRead( dataApproval.getCategoryOptionGroup() ) ) - && mayUnapprove( dataApproval.getOrganisationUnit(), dataApproval.isAccepted() )) + && mayUnapprove( dataApproval.getOrganisationUnit(), dataApproval.isAccepted() ) ) { dataApprovalStore.deleteDataApproval( dataApproval ); === 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 2014-04-24 12:10:26 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementCategoryService.java 2014-04-28 15:43:02 +0000 @@ -611,7 +611,7 @@ { DataElementCategoryCombo categoryCombo = getDataElementCategoryComboByName( DataElementCategoryCombo.DEFAULT_CATEGORY_COMBO_NAME ); - return categoryCombo.getOptionCombos().iterator().next(); + return categoryCombo != null && categoryCombo.hasOptionCombos() ? categoryCombo.getOptionCombos().iterator().next() : null; } public Collection populateOperands( Collection operands ) === modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataanalysis/DataAnalysisStoreTest.java' --- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataanalysis/DataAnalysisStoreTest.java 2014-03-18 08:10:10 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataanalysis/DataAnalysisStoreTest.java 2014-04-28 15:43:02 +0000 @@ -101,7 +101,9 @@ periodService = (PeriodService) getBean( PeriodService.ID ); - categoryCombo = categoryService.getDataElementCategoryComboByName( DataElementCategoryCombo.DEFAULT_CATEGORY_COMBO_NAME ); + categoryCombo = categoryService.getDefaultDataElementCategoryCombo(); + + categoryOptionCombo = categoryService.getDefaultDataElementCategoryOptionCombo(); dataElementA = createDataElement( 'A', categoryCombo ); dataElementB = createDataElement( 'B', categoryCombo ); @@ -109,8 +111,6 @@ dataElementService.addDataElement( dataElementA ); dataElementService.addDataElement( dataElementB ); - categoryOptionCombo = categoryService.getDefaultDataElementCategoryOptionCombo(); - periodA = createPeriod( new MonthlyPeriodType(), getDate( 2000, 3, 1 ), getDate( 2000, 3, 31 ) ); periodB = createPeriod( new MonthlyPeriodType(), getDate( 2000, 4, 1 ), getDate( 2000, 4, 30 ) ); periodC = createPeriod( new MonthlyPeriodType(), getDate( 2000, 5, 1 ), getDate( 2000, 5, 30 ) ); === modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataanalysis/MinMaxOutlierAnalysisServiceTest.java' --- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataanalysis/MinMaxOutlierAnalysisServiceTest.java 2014-03-18 08:10:10 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataanalysis/MinMaxOutlierAnalysisServiceTest.java 2014-04-28 15:43:02 +0000 @@ -121,7 +121,9 @@ periodService = (PeriodService) getBean( PeriodService.ID ); - categoryCombo = categoryService.getDataElementCategoryComboByName( DataElementCategoryCombo.DEFAULT_CATEGORY_COMBO_NAME ); + categoryCombo = categoryService.getDefaultDataElementCategoryCombo(); + + categoryOptionCombo = categoryService.getDefaultDataElementCategoryOptionCombo(); dataElementA = createDataElement( 'A', categoryCombo ); dataElementB = createDataElement( 'B', categoryCombo ); @@ -139,8 +141,6 @@ dataElementsB.add( dataElementD ); dataElementsC.add( dataElementB ); - categoryOptionCombo = categoryCombo.getOptionCombos().iterator().next(); - periodA = createPeriod( new MonthlyPeriodType(), getDate( 2000, 3, 1 ), getDate( 2000, 3, 31 ) ); periodB = createPeriod( new MonthlyPeriodType(), getDate( 2000, 4, 1 ), getDate( 2000, 4, 30 ) ); periodC = createPeriod( new MonthlyPeriodType(), getDate( 2000, 5, 1 ), getDate( 2000, 5, 30 ) ); === modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataapproval/DataApprovalStoreTest.java' --- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataapproval/DataApprovalStoreTest.java 2014-04-25 10:44:39 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/dataapproval/DataApprovalStoreTest.java 2014-04-28 15:43:02 +0000 @@ -147,10 +147,10 @@ sourceC = createOrganisationUnit( 'C', sourceB ); sourceD = createOrganisationUnit( 'D', sourceC ); - organisationUnitService.addOrganisationUnit( sourceA ); - organisationUnitService.addOrganisationUnit( sourceB ); - organisationUnitService.addOrganisationUnit( sourceC ); - organisationUnitService.addOrganisationUnit( sourceD ); + organisationUnitService.addOrganisationUnit( sourceA, false ); + organisationUnitService.addOrganisationUnit( sourceB, false ); + organisationUnitService.addOrganisationUnit( sourceC, false ); + organisationUnitService.addOrganisationUnit( sourceD, false ); userA = createUser( 'A' ); userB = createUser( 'B' ); === modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/validation/ValidationRuleGroupStoreTest.java' --- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/validation/ValidationRuleGroupStoreTest.java 2014-03-18 08:10:10 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/validation/ValidationRuleGroupStoreTest.java 2014-04-28 15:43:02 +0000 @@ -28,11 +28,11 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +import static org.hisp.dhis.expression.Operator.equal_to; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import static org.hisp.dhis.expression.Operator.equal_to; import java.util.Collection; import java.util.HashSet; @@ -41,7 +41,6 @@ import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.common.GenericIdentifiableObjectStore; import org.hisp.dhis.dataelement.DataElement; -import org.hisp.dhis.dataelement.DataElementCategoryCombo; import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo; import org.hisp.dhis.dataelement.DataElementCategoryService; import org.hisp.dhis.dataelement.DataElementService; @@ -116,9 +115,7 @@ dataElements.add( dataElementC ); dataElements.add( dataElementD ); - DataElementCategoryCombo categoryCombo = categoryService - .getDataElementCategoryComboByName( DataElementCategoryCombo.DEFAULT_CATEGORY_COMBO_NAME ); - DataElementCategoryOptionCombo categoryOptionCombo = categoryCombo.getOptionCombos().iterator().next(); + DataElementCategoryOptionCombo categoryOptionCombo = categoryService.getDefaultDataElementCategoryOptionCombo(); optionCombos = new HashSet(); optionCombos.add( categoryOptionCombo ); === modified file 'dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/validation/ValidationRuleStoreTest.java' --- dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/validation/ValidationRuleStoreTest.java 2014-03-18 08:10:10 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/test/java/org/hisp/dhis/validation/ValidationRuleStoreTest.java 2014-04-28 15:43:02 +0000 @@ -41,7 +41,6 @@ import org.hisp.dhis.DhisSpringTest; import org.hisp.dhis.dataelement.DataElement; -import org.hisp.dhis.dataelement.DataElementCategoryCombo; import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo; import org.hisp.dhis.dataelement.DataElementCategoryService; import org.hisp.dhis.dataelement.DataElementService; @@ -111,9 +110,7 @@ dataElements.add( dataElementC ); dataElements.add( dataElementD ); - DataElementCategoryCombo categoryCombo = categoryService - .getDataElementCategoryComboByName( DataElementCategoryCombo.DEFAULT_CATEGORY_COMBO_NAME ); - DataElementCategoryOptionCombo categoryOptionCombo = categoryCombo.getOptionCombos().iterator().next(); + DataElementCategoryOptionCombo categoryOptionCombo = categoryService.getDefaultDataElementCategoryOptionCombo(); optionCombos = new HashSet(); optionCombos.add( categoryOptionCombo );