← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 1076: Removed explicit casts from the abstract dimension model to the two concrete models in ReportTable.

 

------------------------------------------------------------
revno: 1076
committer: Lars Helge Oeverland larshelge@xxxxxxxxx
branch nick: trunk
timestamp: Sat 2009-11-21 17:57:39 +0100
message:
  Removed explicit casts from the abstract dimension model to the two concrete models in ReportTable.
modified:
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/dimension/DimensionOptionElement.java
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTable.java
  dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/ReportTableDeletionHandler.java
  dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/impl/DefaultReportTableService.java


--
lp:dhis2
https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk

Your team DHIS 2 developers is subscribed to branch lp:dhis2.
To unsubscribe from this branch go to https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription.
=== modified file 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/dimension/DimensionOptionElement.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/dimension/DimensionOptionElement.java	2009-11-16 10:32:46 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/dimension/DimensionOptionElement.java	2009-11-21 16:57:39 +0000
@@ -34,7 +34,7 @@
  */
 public interface DimensionOptionElement
 {
-    int getId(); //TODO temporary, remove
+    int getId();
     
     String getName();
     

=== 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	2009-11-19 17:30:24 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/reporttable/ReportTable.java	2009-11-21 16:57:39 +0000
@@ -40,8 +40,6 @@
 
 import org.hisp.dhis.common.IdentifiableObject;
 import org.hisp.dhis.dataelement.DataElement;
-import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo;
-import org.hisp.dhis.dataelement.DataElementGroupSet;
 import org.hisp.dhis.dataset.DataSet;
 import org.hisp.dhis.dimension.Dimension;
 import org.hisp.dhis.dimension.DimensionOption;
@@ -120,7 +118,7 @@
     
     private DimensionSet categoryCombo;
     
-    private List<? extends Dimension> dataElementGroupSets = new ArrayList<DataElementGroupSet>();
+    private List<? extends Dimension> dataElementGroupSets = new ArrayList<Dimension>();
     
     private Boolean doIndicators;
     
@@ -169,7 +167,7 @@
     /**
      * CategoryCombos that will be crosstabulated on the columns axis. Optional dimension.
      */
-    private List<DataElementCategoryOptionCombo> crossTabCategoryOptionCombos = new ArrayList<DataElementCategoryOptionCombo>();
+    private List<? extends DimensionOptionElement> crossTabCategoryOptionCombos = new ArrayList<DimensionOptionElement>();
     
     /**
      * Periods that will be crosstabulated on the columns axis. Mandatory dimension.
@@ -189,7 +187,7 @@
     /**
      * CategoryOptionCombos that will be present on the rows axis. Optional dimension.
      */
-    private List<DataElementCategoryOptionCombo> reportCategoryOptionCombos = new ArrayList<DataElementCategoryOptionCombo>();
+    private List<? extends DimensionOptionElement> reportCategoryOptionCombos = new ArrayList<DimensionOptionElement>();
     
     /**
      * Periods that will be present on the rows axis. Mandatory dimension.
@@ -246,7 +244,7 @@
     /**
      * The category option combos derived from the dimension set.
      */
-    private List<DataElementCategoryOptionCombo> categoryOptionCombos = new ArrayList<DataElementCategoryOptionCombo>();
+    private List<? extends DimensionOptionElement> categoryOptionCombos = new ArrayList<DimensionOptionElement>();
     
     /**
      * The data elements derived from the dimension set.
@@ -356,7 +354,6 @@
     // Init
     // -------------------------------------------------------------------------
 
-    @SuppressWarnings( "unchecked" )
     public void init()
     {
         if ( nonEmptyLists( dataElements, indicators, dataSets ) > 1 )
@@ -384,10 +381,9 @@
         {
             // -----------------------------------------------------------------
             // CategoryCombo is set, populate CategoryOptionCombos
-            // Unchecked conversion is safe due to dimension set type check
             // -----------------------------------------------------------------
 
-            categoryOptionCombos = (List<DataElementCategoryOptionCombo>) categoryCombo.getDimensionOptionElements();
+            categoryOptionCombos = categoryCombo.getDimensionOptionElements();
         }
         else if ( isDimensional() && dimensionSetType.equals( DimensionSet.TYPE_GROUP_SET ) )
         {
@@ -1040,12 +1036,12 @@
         this.dataElements = dataElements;
     }
 
-    public List<DataElementCategoryOptionCombo> getCategoryOptionCombos()
+    public List<? extends DimensionOptionElement> getCategoryOptionCombos()
     {
         return categoryOptionCombos;
     }
 
-    public void setCategoryOptionCombos( List<DataElementCategoryOptionCombo> categoryOptionCombos )
+    public void setCategoryOptionCombos( List<? extends DimensionOptionElement> categoryOptionCombos )
     {
         this.categoryOptionCombos = categoryOptionCombos;
     }
@@ -1239,7 +1235,7 @@
         return reportIndicators;
     }
 
-    public List<DataElementCategoryOptionCombo> getReportCategoryOptionCombos()
+    public List<? extends DimensionOptionElement> getReportCategoryOptionCombos()
     {
         return reportCategoryOptionCombos;
     }

=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/ReportTableDeletionHandler.java'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/ReportTableDeletionHandler.java	2009-03-03 16:46:36 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/ReportTableDeletionHandler.java	2009-11-21 16:57:39 +0000
@@ -28,12 +28,9 @@
  */
 
 import org.hisp.dhis.dataelement.DataElement;
-import org.hisp.dhis.dataelement.DataElementCategoryOptionCombo;
 import org.hisp.dhis.dataset.DataSet;
 import org.hisp.dhis.indicator.Indicator;
 import org.hisp.dhis.period.Period;
-import org.hisp.dhis.reporttable.ReportTable;
-import org.hisp.dhis.reporttable.ReportTableService;
 import org.hisp.dhis.source.Source;
 import org.hisp.dhis.system.deletion.DeletionHandler;
 
@@ -78,21 +75,7 @@
         
         return true;
     }
-    
-    @Override
-    public boolean allowDeleteDataElementCategoryOptionCombo( DataElementCategoryOptionCombo categoryOptionCombo )
-    {
-        for ( ReportTable reportTable : reportTableService.getAllReportTables() )
-        {
-            if ( categoryOptionCombo.get( reportTable.getCategoryOptionCombos() ) != null )
-            {
-                return false;
-            }
-        }
-        
-        return true;
-    }
-        
+            
     @Override
     public boolean allowDeleteIndicator( Indicator indicator )
     {

=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/impl/DefaultReportTableService.java'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/impl/DefaultReportTableService.java	2009-11-19 17:30:24 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/reporttable/impl/DefaultReportTableService.java	2009-11-21 16:57:39 +0000
@@ -50,6 +50,7 @@
 import org.hisp.dhis.datamart.DataMartStore;
 import org.hisp.dhis.dataset.DataSet;
 import org.hisp.dhis.dimension.DimensionOption;
+import org.hisp.dhis.dimension.DimensionOptionElement;
 import org.hisp.dhis.i18n.I18nFormat;
 import org.hisp.dhis.indicator.Indicator;
 import org.hisp.dhis.jdbc.batchhandler.GenericBatchHandler;
@@ -558,7 +559,7 @@
         
         for ( final IdentifiableObject metaObject : reportTable.getReportIndicators() )
         {
-            for ( final DataElementCategoryOptionCombo categoryOptionCombo : reportTable.getReportCategoryOptionCombos() )
+            for ( final DimensionOptionElement categoryOptionCombo : reportTable.getReportCategoryOptionCombos() )
             {
                 for ( final Period period : reportTable.getReportPeriods() )
                 {
@@ -644,7 +645,8 @@
                         // Values
                         // -----------------------------------------------------
 
-                        Map<String, Double> map = reportTableManager.getAggregatedValueMap( reportTable, metaObject, categoryOptionCombo, period, unit );
+                        Map<String, Double> map = reportTableManager.getAggregatedValueMap( 
+                            reportTable, metaObject, (DataElementCategoryOptionCombo) categoryOptionCombo, period, unit );
                         
                         for ( String identifier : reportTable.getCrossTabIdentifiers() )
                         {