=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java 2010-01-25 15:21:02 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementService.java 2010-01-27 11:51:54 +0000 @@ -267,6 +267,36 @@ */ Collection getDataElementsByGroupSets( Set groupSets ); + /** + * Returns all DataElements which are not member of any DataElementGroups. + * + * @return all DataElements which are not member of any DataElementGroups. + */ + Collection getDataElementsWithoutGroups(); + + /** + * Returns all DataElements which are not assigned to any DataSets. + * + * @return all DataElements which are not assigned to any DataSets. + */ + Collection getDataElementsWithoutDataSets(); + + /** + * Checks whether a DataElement with the given identifier exists. + * + * @param id the DataElement identifier. + * @return true or false. + */ + boolean dataElementExists( int id ); + + /** + * Checks whether a DataElementCategoryOptionCombo with the given identifier exists. + * + * @param id the DataElementCategoryOptionCombo identifier. + * @return true or false. + */ + boolean dataElementCategoryOptionComboExists( int id ); + // ------------------------------------------------------------------------- // Calculated Data Elements // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java 2010-01-25 07:24:27 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dataelement/DataElementStore.java 2010-01-27 11:51:54 +0000 @@ -204,6 +204,36 @@ * @return a collection of all DataElement */ Collection getDataElementsByZeroIsSignificant( boolean zeroIsSignificant ); + + /** + * Returns all DataElements which are not member of any DataElementGroups. + * + * @return all DataElements which are not member of any DataElementGroups. + */ + Collection getDataElementsWithoutGroups(); + + /** + * Returns all DataElements which are not assigned to any DataSets. + * + * @return all DataElements which are not assigned to any DataSets. + */ + Collection getDataElementsWithoutDataSets(); + + /** + * Checks whether a DataElement with the given identifier exists. + * + * @param id the DataElement identifier. + * @return true or false. + */ + boolean dataElementExists( int id ); + + /** + * Checks whether a DataElementCategoryOptionCombo with the given identifier exists. + * + * @param id the DataElementCategoryOptionCombo identifier. + * @return true or false. + */ + boolean dataElementCategoryOptionComboExists( int id ); // ------------------------------------------------------------------------- // Calculated Data Elements === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/indicator/IndicatorService.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/indicator/IndicatorService.java 2009-11-07 13:03:26 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/indicator/IndicatorService.java 2010-01-27 11:51:54 +0000 @@ -64,6 +64,8 @@ Indicator getIndicatorByCode( String code ); Collection getIndicatorsWithGroupSets(); + + Collection getIndicatorsWithoutGroups(); // ------------------------------------------------------------------------- // IndicatorType === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/indicator/IndicatorStore.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/indicator/IndicatorStore.java 2009-11-07 13:03:26 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/indicator/IndicatorStore.java 2010-01-27 11:51:54 +0000 @@ -58,4 +58,6 @@ Indicator getIndicatorByCode( String code ); Collection getIndicatorsWithGroupSets(); + + Collection getIndicatorsWithoutGroups(); } === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/organisationunit/OrganisationUnitService.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/organisationunit/OrganisationUnitService.java 2009-11-24 14:30:46 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/organisationunit/OrganisationUnitService.java 2010-01-27 11:51:54 +0000 @@ -224,6 +224,13 @@ * @param parentId the identifier of the parent OrganisationUnit. */ void updateOrganisationUnitParent( int organisationUnitId, int parentId ); + + /** + * Returns all OrganisationUnits which are not a member of any OrganisationUnitGroups. + * + * @return all OrganisationUnits which are not a member of any OrganisationUnitGroups. + */ + Collection getOrganisationUnitsWithoutGroups(); // ------------------------------------------------------------------------- // OrganisationUnitHierarchy === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/organisationunit/OrganisationUnitStore.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/organisationunit/OrganisationUnitStore.java 2010-01-19 21:48:28 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/organisationunit/OrganisationUnitStore.java 2010-01-27 11:51:54 +0000 @@ -94,6 +94,13 @@ */ void updateOrganisationUnitParent( int organisationUnitId, int parentId ); + /** + * Returns all OrganisationUnits which are not a member of any OrganisationUnitGroups. + * + * @return all OrganisationUnits which are not a member of any OrganisationUnitGroups. + */ + Collection getOrganisationUnitsWithoutGroups(); + // ------------------------------------------------------------------------- // OrganisationUnitHierarchy // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTable.java' --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTable.java 2010-01-20 11:47:21 +0000 +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTable.java 2010-01-27 20:55:17 +0000 @@ -86,7 +86,8 @@ public static final String REGRESSION_COLUMN_PREFIX = "regression_"; - private static final String EMPTY_REPLACEMENT = "_"; + private static final String EMPTY_REPLACEMENT = "_"; + private static final String EMPTY = ""; private static final String TABLE_PREFIX = "_report_"; private static final String REGEX_NUMERIC = "([0-9]*)"; @@ -958,7 +959,7 @@ string = string.toLowerCase(); string = string.replaceAll( " ", EMPTY_REPLACEMENT ); - string = string.replaceAll( "-", EMPTY_REPLACEMENT ); + string = string.replaceAll( "-", EMPTY ); string = string.replaceAll( "<", EMPTY_REPLACEMENT + "lt" + EMPTY_REPLACEMENT ); string = string.replaceAll( ">", EMPTY_REPLACEMENT + "gt" + EMPTY_REPLACEMENT ); === modified file 'dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/dataintegrity/DefaultDataIntegrityService.java' --- dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/dataintegrity/DefaultDataIntegrityService.java 2010-01-20 10:06:43 +0000 +++ dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/dataintegrity/DefaultDataIntegrityService.java 2010-01-27 11:51:54 +0000 @@ -132,28 +132,12 @@ public Collection getDataElementsWithoutDataSet() { - Collection dataElements = dataElementService.getAllDataElements(); - - return FilterUtils.filter( dataElements, new Filter() - { - public boolean retain( DataElement object ) - { - return object.getDataSets() == null || object.getDataSets().size() == 0; - } - } ); + return dataElementService.getDataElementsWithoutDataSets(); } public Collection getDataElementsWithoutGroups() { - Collection dataElements = dataElementService.getAllDataElements(); - - return FilterUtils.filter( dataElements, new Filter() - { - public boolean retain( DataElement object ) - { - return object.getGroups() == null || object.getGroups().size() == 0; - } - } ); + return dataElementService.getDataElementsWithoutGroups(); } public Map> getDataElementsAssignedToDataSetsWithDifferentPeriodTypes() @@ -235,15 +219,7 @@ public Collection getIndicatorsWithoutGroups() { - Collection indicators = indicatorService.getAllIndicators(); - - return FilterUtils.filter( indicators, new Filter() - { - public boolean retain( Indicator object ) - { - return object.getGroups() == null || object.getGroups().size() == 0; - } - } ); + return indicatorService.getIndicatorsWithoutGroups(); } public Map getInvalidIndicatorNumerators() @@ -337,15 +313,7 @@ public Collection getOrganisationUnitsWithoutGroups() { - Collection organisationUnits = organisationUnitService.getAllOrganisationUnits(); - - return FilterUtils.filter( organisationUnits, new Filter() - { - public boolean retain( OrganisationUnit object ) - { - return object.getGroups() == null || object.getGroups().size() == 0; - } - } ); + return organisationUnitService.getOrganisationUnitsWithoutGroups(); } public Collection getOrganisationUnitsViolatingCompulsoryGroupSets() === modified file 'dhis-2/dhis-services/dhis-service-administration/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-services/dhis-service-administration/src/main/resources/META-INF/dhis/beans.xml 2010-01-12 08:12:04 +0000 +++ dhis-2/dhis-services/dhis-service-administration/src/main/resources/META-INF/dhis/beans.xml 2010-01-27 11:51:54 +0000 @@ -119,4 +119,15 @@ ref="org.hisp.dhis.organisationunit.OrganisationUnitService"/> + + + + + + + + + + + === 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 2010-01-25 15:21:02 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/DefaultDataElementService.java 2010-01-27 11:51:54 +0000 @@ -330,7 +330,27 @@ return dataElements; } + + public Collection getDataElementsWithoutGroups() + { + return i18n( i18nService, dataElementStore.getDataElementsWithoutGroups() ); + } + + public Collection getDataElementsWithoutDataSets() + { + return i18n( i18nService, dataElementStore.getDataElementsWithoutDataSets() ); + } + public boolean dataElementExists( int id ) + { + return dataElementStore.dataElementExists( id ); + } + + public boolean dataElementCategoryOptionComboExists( int id ) + { + return dataElementStore.dataElementCategoryOptionComboExists( id ); + } + // ------------------------------------------------------------------------- // CalculatedDataElement // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java 2010-01-25 14:08:24 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/dataelement/hibernate/HibernateDataElementStore.java 2010-01-27 11:51:54 +0000 @@ -31,6 +31,7 @@ import java.util.HashSet; import java.util.Set; +import org.amplecode.quick.StatementManager; import org.hibernate.Criteria; import org.hibernate.Query; import org.hibernate.Session; @@ -62,6 +63,13 @@ this.sessionFactory = sessionFactory; } + private StatementManager statementManager; + + public void setStatementManager( StatementManager statementManager ) + { + this.statementManager = statementManager; + } + // ------------------------------------------------------------------------- // DataElement // ------------------------------------------------------------------------- @@ -261,6 +269,36 @@ return criteria.list(); } + @SuppressWarnings( "unchecked" ) + public Collection getDataElementsWithoutGroups() + { + String hql = "from DataElement d where d.groups.size = 0"; + + return sessionFactory.getCurrentSession().createQuery( hql ).list(); + } + + @SuppressWarnings( "unchecked" ) + public Collection getDataElementsWithoutDataSets() + { + String hql = "from DataElement d where d.dataSets.size = 0"; + + return sessionFactory.getCurrentSession().createQuery( hql ).list(); + } + + public boolean dataElementExists( int id ) + { + final String sql = "select count(*) from dataelement where dataelementid=" + id; + + return statementManager.getHolder().queryForInteger( sql ) > 0; + } + + public boolean dataElementCategoryOptionComboExists( int id ) + { + final String sql = "select count(*) from categoryoptioncombo where categoryoptioncomboid=" + id; + + return statementManager.getHolder().queryForInteger( sql ) > 0; + } + // ------------------------------------------------------------------------- // CalculatedDataElement // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/expression/DefaultExpressionService.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/expression/DefaultExpressionService.java 2009-12-02 15:08:11 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/expression/DefaultExpressionService.java 2010-01-27 11:51:54 +0000 @@ -282,12 +282,12 @@ return CATEGORYOPTIONCOMBO_ID_NOT_NUMERIC; } - if ( dataElementService.getDataElement( dataElementId ) == null ) + if ( !dataElementService.dataElementExists( dataElementId ) ) { return DATAELEMENT_DOES_NOT_EXIST; } - if ( categoryService.getDataElementCategoryOptionCombo( categoryOptionComboId ) == null ) + if ( !dataElementService.dataElementCategoryOptionComboExists( categoryOptionComboId ) ) { return CATEGORYOPTIONCOMBO_DOES_NOT_EXIST; } === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/indicator/DefaultIndicatorService.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/indicator/DefaultIndicatorService.java 2009-11-26 14:02:44 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/indicator/DefaultIndicatorService.java 2010-01-27 11:51:54 +0000 @@ -176,6 +176,11 @@ return i18n( i18nService, indicatorStore.getIndicatorsWithGroupSets() ); } + public Collection getIndicatorsWithoutGroups() + { + return i18n( i18nService, indicatorStore.getIndicatorsWithoutGroups() ); + } + // ------------------------------------------------------------------------- // IndicatorType // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/indicator/hibernate/HibernateIndicatorStore.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/indicator/hibernate/HibernateIndicatorStore.java 2009-11-07 13:03:26 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/indicator/hibernate/HibernateIndicatorStore.java 2010-01-27 11:51:54 +0000 @@ -156,10 +156,16 @@ @SuppressWarnings( "unchecked" ) public Collection getIndicatorsWithGroupSets() { - final String sql = "from Indicator d where d.groupSets.size > 0"; - - Query query = sessionFactory.getCurrentSession().createQuery( sql ); - - return query.list(); + final String hql = "from Indicator d where d.groupSets.size > 0"; + + return sessionFactory.getCurrentSession().createQuery( hql ).list(); } + + @SuppressWarnings( "unchecked" ) + public Collection getIndicatorsWithoutGroups() + { + final String hql = "from Indicator d where d.groups.size = 0"; + + return sessionFactory.getCurrentSession().createQuery( hql ).list(); + } } === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/organisationunit/DefaultOrganisationUnitService.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/organisationunit/DefaultOrganisationUnitService.java 2009-11-26 14:02:44 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/organisationunit/DefaultOrganisationUnitService.java 2010-01-27 11:51:54 +0000 @@ -391,6 +391,11 @@ organisationUnitStore.updateOrganisationUnitParent( organisationUnitId, parentId ); } + public Collection getOrganisationUnitsWithoutGroups() + { + return organisationUnitStore.getOrganisationUnitsWithoutGroups(); + } + // ------------------------------------------------------------------------- // OrganisationUnitHierarchy // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/organisationunit/hibernate/HibernateOrganisationUnitStore.java' --- dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/organisationunit/hibernate/HibernateOrganisationUnitStore.java 2009-11-03 18:32:48 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/java/org/hisp/dhis/organisationunit/hibernate/HibernateOrganisationUnitStore.java 2010-01-27 11:51:54 +0000 @@ -137,6 +137,14 @@ return session.createQuery( "from OrganisationUnit o where o.parent is null" ).list(); } + @SuppressWarnings( "unchecked" ) + public Collection getOrganisationUnitsWithoutGroups() + { + String hql = "from OrganisationUnit o where o.groups.size = 0"; + + return sessionFactory.getCurrentSession().createQuery( hql ).list(); + } + // ------------------------------------------------------------------------- // OrganisationUnitHierarchy // ------------------------------------------------------------------------- === modified file 'dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml' --- dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml 2009-12-24 14:47:25 +0000 +++ dhis-2/dhis-services/dhis-service-core/src/main/resources/META-INF/dhis/beans.xml 2010-01-27 11:51:54 +0000 @@ -17,6 +17,7 @@ + $i18n.getString( "change_log" )
+
$i18n.getString( "release" ) 2.0.3:
+
Launchpad $i18n.getString( "online_release_page" )
$i18n.getString( "release" ) 2.0.2:
Launchpad $i18n.getString( "online_release_page" )
$i18n.getString( "release" ) 2.0.1: