← Back to team overview

dhis2-devs team mailing list archive

[Branch ~dhis2-devs-core/dhis2/trunk] Rev 10257: Simplified the notifications api

 

------------------------------------------------------------
revno: 10257
committer: Lars Helge Øverland <larshelge@xxxxxxxxx>
branch nick: dhis2
timestamp: Fri 2013-03-15 17:33:34 +0100
message:
  Simplified the notifications api
modified:
  dhis-2/dhis-api/src/main/java/org/hisp/dhis/scheduling/TaskId.java
  dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/datavalueset/DefaultDataValueSetService.java
  dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/metadata/DefaultExportService.java
  dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/metadata/DefaultImportService.java
  dhis-2/dhis-dxf2/src/test/java/org/hisp/dhis/dxf2/datavalueset/DataValueSetServiceTest.java
  dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/resourcetable/scheduling/ResourceTableTask.java
  dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/scheduling/AnalyticsTableTask.java
  dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/DefaultAnalyticsTableService.java
  dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/engine/DefaultDataMartEngine.java
  dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/completeness/engine/DefaultDataSetCompletenessEngine.java
  dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/notification/InMemoryNotifier.java
  dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/notification/Notifier.java
  dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/notification/NotifierTest.java
  dhis-2/dhis-web/dhis-web-commons/src/main/java/org/hisp/dhis/commons/action/GetNotificationsAction.java
  dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/GetImportSummaryAction.java
  dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/datavalue/ImportDataValueAction.java
  dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/dxf2/GetImportSummaryAction.java
  dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/dxf2/MetaDataImportAction.java
  dhis-2/dhis-web/dhis-web-importexport/src/main/resources/org/hisp/dhis/importexport/i18n_module.properties
  dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/datamart/action/StartExportAction.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/scheduling/TaskId.java'
--- dhis-2/dhis-api/src/main/java/org/hisp/dhis/scheduling/TaskId.java	2013-03-15 11:10:10 +0000
+++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/scheduling/TaskId.java	2013-03-15 16:33:34 +0000
@@ -40,7 +40,7 @@
     
     private User user;
     
-    public TaskId()
+    protected TaskId()
     {
     }
     
@@ -62,6 +62,11 @@
         return id;
     }
     
+    public TaskCategory getCategory()
+    {
+        return category;
+    }
+    
     @Override
     public int hashCode()
     {

=== modified file 'dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/datavalueset/DefaultDataValueSetService.java'
--- dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/datavalueset/DefaultDataValueSetService.java	2013-03-14 04:06:49 +0000
+++ dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/datavalueset/DefaultDataValueSetService.java	2013-03-15 16:33:34 +0000
@@ -27,7 +27,25 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-import au.com.bytecode.opencsv.CSVReader;
+import static org.hisp.dhis.importexport.ImportStrategy.NEW;
+import static org.hisp.dhis.importexport.ImportStrategy.NEW_AND_UPDATES;
+import static org.hisp.dhis.importexport.ImportStrategy.UPDATES;
+import static org.hisp.dhis.system.notification.NotificationLevel.ERROR;
+import static org.hisp.dhis.system.notification.NotificationLevel.INFO;
+import static org.hisp.dhis.system.util.ConversionUtils.wrap;
+import static org.hisp.dhis.system.util.DateUtils.getDefaultDate;
+
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.io.Reader;
+import java.io.Writer;
+import java.util.Collection;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
 import org.amplecode.quick.BatchHandler;
 import org.amplecode.quick.BatchHandlerFactory;
 import org.amplecode.staxwax.factory.XMLFactory;
@@ -63,23 +81,7 @@
 import org.hisp.dhis.user.CurrentUserService;
 import org.springframework.beans.factory.annotation.Autowired;
 
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.io.Reader;
-import java.io.Writer;
-import java.util.Collection;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import static org.hisp.dhis.importexport.ImportStrategy.*;
-import static org.hisp.dhis.scheduling.TaskCategory.DATAVALUE_IMPORT;
-import static org.hisp.dhis.system.notification.NotificationLevel.ERROR;
-import static org.hisp.dhis.system.notification.NotificationLevel.INFO;
-import static org.hisp.dhis.system.util.ConversionUtils.wrap;
-import static org.hisp.dhis.system.util.DateUtils.getDefaultDate;
+import au.com.bytecode.opencsv.CSVReader;
 
 /**
  * @author Lars Helge Overland
@@ -202,7 +204,7 @@
         catch ( RuntimeException ex )
         {
             log.error( DebugUtils.getStackTrace( ex ) );
-            notifier.notify( id, DATAVALUE_IMPORT, ERROR, "Unfortunately the process failed, check the logs", true );
+            notifier.notify( id, ERROR, "Unfortunately the process failed, check the logs", true );
             return new ImportSummary( ImportStatus.ERROR, "The import process failed: " + ex.getMessage() );
         }
     }
@@ -217,7 +219,7 @@
         catch ( Exception ex )
         {
             log.error( DebugUtils.getStackTrace( ex ) );
-            notifier.notify( id, DATAVALUE_IMPORT, ERROR, "Unfortunately the process failed, check the logs", true );
+            notifier.notify( id, ERROR, "Unfortunately the process failed, check the logs", true );
             return new ImportSummary( ImportStatus.ERROR, "The import process failed: " + ex.getMessage() );
         }
     }
@@ -232,14 +234,14 @@
         catch ( RuntimeException ex )
         {
             log.error( DebugUtils.getStackTrace( ex ) );
-            notifier.clear( id, DATAVALUE_IMPORT ).notify( id, DATAVALUE_IMPORT, ERROR, "Unfortunately the process failed, check the logs", true );
+            notifier.clear( id ).notify( id, ERROR, "Unfortunately the process failed, check the logs", true );
             return new ImportSummary( ImportStatus.ERROR, "The import process failed: " + ex.getMessage() );
         }
     }
 
     private ImportSummary saveDataValueSet( ImportOptions importOptions, TaskId id, DataValueSet dataValueSet )
     {
-        notifier.clear( id, DATAVALUE_IMPORT ).notify( id, DATAVALUE_IMPORT, "Process started" );
+        notifier.clear( id ).notify( id, "Process started" );
 
         ImportSummary summary = new ImportSummary();
 
@@ -290,7 +292,7 @@
 
         if ( dataSet != null && completeDate != null )
         {
-            notifier.notify( id, DATAVALUE_IMPORT, "Completing data set" );
+            notifier.notify( id, "Completing data set" );
             handleComplete( dataSet, completeDate, outerOrgUnit, outerPeriod, summary );
         }
         else
@@ -306,7 +308,7 @@
         int updateCount = 0;
         int totalCount = 0;
 
-        notifier.notify( id, DATAVALUE_IMPORT, "Importing data values" );
+        notifier.notify( id, "Importing data values" );
         log.info( "importing data values" );
 
         while ( dataValueSet.hasNextDataValue() )
@@ -413,7 +415,7 @@
         summary.setStatus( ImportStatus.SUCCESS );
         summary.setDescription( "Import process completed successfully" );
 
-        notifier.notify( id, DATAVALUE_IMPORT, INFO, "Import done", true ).addTaskSummary( id, DATAVALUE_IMPORT, summary );
+        notifier.notify( id, INFO, "Import done", true ).addTaskSummary( id, summary );
 
         return summary;
     }

=== modified file 'dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/metadata/DefaultExportService.java'
--- dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/metadata/DefaultExportService.java	2013-02-25 12:33:35 +0000
+++ dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/metadata/DefaultExportService.java	2013-03-15 16:33:34 +0000
@@ -27,11 +27,15 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Date;
+import java.util.Map;
+
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.hisp.dhis.common.IdentifiableObject;
 import org.hisp.dhis.common.IdentifiableObjectManager;
-import org.hisp.dhis.scheduling.TaskCategory;
 import org.hisp.dhis.scheduling.TaskId;
 import org.hisp.dhis.system.notification.NotificationLevel;
 import org.hisp.dhis.system.notification.Notifier;
@@ -41,11 +45,6 @@
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
 
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Date;
-import java.util.Map;
-
 /**
  * @author Morten Olav Hansen <mortenoh@xxxxxxxxx>
  */
@@ -90,7 +89,7 @@
 
         if ( taskId != null )
         {
-            notifier.notify( taskId, TaskCategory.METADATA_EXPORT, "Exporting meta-data" );
+            notifier.notify( taskId, "Exporting meta-data" );
         }
 
         for ( Map.Entry<Class<? extends IdentifiableObject>, String> entry : ExchangeClasses.getExportMap().entrySet() )
@@ -124,7 +123,7 @@
 
             if ( taskId != null )
             {
-                notifier.notify( taskId, TaskCategory.METADATA_EXPORT, message );
+                notifier.notify( taskId, message );
             }
 
             ReflectionUtils.invokeSetterMethod( entry.getValue(), metaData, new ArrayList<IdentifiableObject>( idObjects ) );
@@ -134,7 +133,7 @@
 
         if ( taskId != null )
         {
-            notifier.notify( taskId, TaskCategory.METADATA_IMPORT, NotificationLevel.INFO, "Export done", true );
+            notifier.notify( taskId, NotificationLevel.INFO, "Export done", true );
         }
 
         return metaData;

=== modified file 'dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/metadata/DefaultImportService.java'
--- dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/metadata/DefaultImportService.java	2013-03-15 13:13:18 +0000
+++ dhis-2/dhis-dxf2/src/main/java/org/hisp/dhis/dxf2/metadata/DefaultImportService.java	2013-03-15 16:33:34 +0000
@@ -27,8 +27,6 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-import static org.hisp.dhis.scheduling.TaskCategory.METADATA_IMPORT;
-
 import java.util.ArrayList;
 import java.util.Collection;
 import java.util.HashSet;
@@ -106,7 +104,7 @@
     @Override
     public ImportSummary importMetaData( MetaData metaData, ImportOptions importOptions, TaskId taskId )
     {
-        notifier.clear( taskId, METADATA_IMPORT ).notify( taskId, METADATA_IMPORT, "Importing meta-data" );
+        notifier.clear( taskId ).notify( taskId, "Importing meta-data" );
         
         ImportSummary importSummary = new ImportSummary();
         
@@ -133,7 +131,7 @@
 
                         if ( taskId != null )
                         {
-                            notifier.notify( taskId, METADATA_IMPORT, message );
+                            notifier.notify( taskId, message );
                         }
                         else
                         {
@@ -173,8 +171,8 @@
 
         if ( taskId != null )
         {
-            notifier.notify( taskId, METADATA_IMPORT, NotificationLevel.INFO, "Import done", true ).
-                addTaskSummary( taskId, METADATA_IMPORT, importSummary );
+            notifier.notify( taskId, NotificationLevel.INFO, "Import done", true ).
+                addTaskSummary( taskId, importSummary );
         }
         else
         {

=== modified file 'dhis-2/dhis-dxf2/src/test/java/org/hisp/dhis/dxf2/datavalueset/DataValueSetServiceTest.java'
--- dhis-2/dhis-dxf2/src/test/java/org/hisp/dhis/dxf2/datavalueset/DataValueSetServiceTest.java	2012-06-01 14:17:17 +0000
+++ dhis-2/dhis-dxf2/src/test/java/org/hisp/dhis/dxf2/datavalueset/DataValueSetServiceTest.java	2013-03-15 16:33:34 +0000
@@ -27,9 +27,9 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-import static junit.framework.Assert.assertEquals;
-import static junit.framework.Assert.assertNotNull;
-import static junit.framework.Assert.assertTrue;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
 import static org.hisp.dhis.common.IdentifiableObject.IdentifiableProperty.CODE;
 import static org.hisp.dhis.common.IdentifiableObject.IdentifiableProperty.UID;
 import static org.hisp.dhis.importexport.ImportStrategy.NEW_AND_UPDATES;

=== modified file 'dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/resourcetable/scheduling/ResourceTableTask.java'
--- dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/resourcetable/scheduling/ResourceTableTask.java	2012-04-03 22:08:32 +0000
+++ dhis-2/dhis-services/dhis-service-administration/src/main/java/org/hisp/dhis/resourcetable/scheduling/ResourceTableTask.java	2013-03-15 16:33:34 +0000
@@ -28,7 +28,6 @@
  */
 
 import org.hisp.dhis.resourcetable.ResourceTableService;
-import org.hisp.dhis.scheduling.TaskCategory;
 import org.hisp.dhis.scheduling.TaskId;
 import org.hisp.dhis.system.notification.NotificationLevel;
 import org.hisp.dhis.system.notification.Notifier;
@@ -60,10 +59,10 @@
     @Override
     public void run()
     {
-        notifier.notify( taskId, TaskCategory.RESOURCETABLE_UPDATE, "Generating resource tables" );
+        notifier.notify( taskId, "Generating resource tables" );
         
         resourceTableService.generateAll();
         
-        notifier.notify( taskId, TaskCategory.RESOURCETABLE_UPDATE, NotificationLevel.INFO, "Resource tables generated", true );
+        notifier.notify( taskId, NotificationLevel.INFO, "Resource tables generated", true );
     }
 }

=== modified file 'dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/scheduling/AnalyticsTableTask.java'
--- dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/scheduling/AnalyticsTableTask.java	2013-03-05 22:03:40 +0000
+++ dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/scheduling/AnalyticsTableTask.java	2013-03-15 16:33:34 +0000
@@ -27,7 +27,6 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-import static org.hisp.dhis.scheduling.TaskCategory.DATAMART;
 import static org.hisp.dhis.system.notification.NotificationLevel.INFO;
 
 import javax.annotation.Resource;
@@ -80,22 +79,22 @@
     @Override
     public void run()
     {
-        notifier.clear( taskId, DATAMART ).notify( taskId, DATAMART, "Updating resource tables" );
+        notifier.clear( taskId ).notify( taskId, "Updating resource tables" );
         
         resourceTableService.generateAll();
 
-        notifier.notify( taskId, DATAMART, "Updating analytics tables" );
+        notifier.notify( taskId, "Updating analytics tables" );
         
         analyticsTableService.update( last3Years, taskId );
         
-        notifier.notify( taskId, DATAMART, "Updating completeness tables" );
+        notifier.notify( taskId, "Updating completeness tables" );
         
         completenessTableService.update( last3Years, taskId );
 
-        notifier.notify( taskId, DATAMART, "Updating compeleteness target table" );
+        notifier.notify( taskId, "Updating compeleteness target table" );
         
         completenessTargetTableService.update( last3Years, taskId );
         
-        notifier.notify( taskId, DATAMART, INFO, "Analytics tables updated", true );
+        notifier.notify( taskId, INFO, "Analytics tables updated", true );
     }
 }

=== modified file 'dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/DefaultAnalyticsTableService.java'
--- dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/DefaultAnalyticsTableService.java	2013-03-15 11:10:10 +0000
+++ dhis-2/dhis-services/dhis-service-analytics/src/main/java/org/hisp/dhis/analytics/table/DefaultAnalyticsTableService.java	2013-03-15 16:33:34 +0000
@@ -27,8 +27,6 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-import static org.hisp.dhis.scheduling.TaskCategory.DATAMART;
-
 import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.Collection;
@@ -87,7 +85,7 @@
         
         if ( !valid )
         {
-            notifier.notify( taskId, DATAMART, "Table not valid, aborted update" );
+            notifier.notify( taskId, "Table not valid, aborted update" );
             return;
         }
         
@@ -99,42 +97,42 @@
         
         clock.logTime( "Partition tables: " + tables + ", earliest: " + earliest + ", latest: " + latest + ", last 3 years: " + last3YearsOnly );
         
-        notifier.notify( taskId, DATAMART, "Creating analytics tables" );
+        notifier.notify( taskId, "Creating analytics tables" );
         
         createTables( tables );
         
         clock.logTime( "Created analytics tables" );
-        notifier.notify( taskId, DATAMART, "Populating analytics tables" );
+        notifier.notify( taskId, "Populating analytics tables" );
         
         populateTables( tables );
         
         clock.logTime( "Populated analytics tables" );
-        notifier.notify( taskId, DATAMART, "Pruned analytics tables" );
+        notifier.notify( taskId, "Pruned analytics tables" );
         
         pruneTables( tables );
         
         clock.logTime( "Pruned analytics tables" );
-        notifier.notify( taskId, DATAMART, "Applying aggregation levels" );
+        notifier.notify( taskId, "Applying aggregation levels" );
         
         applyAggregationLevels( tables );
         
         clock.logTime( "Applied aggregation levels" );
-        notifier.notify( taskId, DATAMART, "Creating indexes" );
+        notifier.notify( taskId, "Creating indexes" );
         
         createIndexes( tables );
         
         clock.logTime( "Created indexes" );
-        notifier.notify( taskId, DATAMART, "Vacuuming tables" );
+        notifier.notify( taskId, "Vacuuming tables" );
         
         vacuumTables( tables );
         
         clock.logTime( "Vacuumed tables" );
-        notifier.notify( taskId, DATAMART, "Swapping analytics tables" );
+        notifier.notify( taskId, "Swapping analytics tables" );
         
         swapTables( tables );
         
         clock.logTime( "Table update done" );
-        notifier.notify( taskId, DATAMART, "Table update done" );
+        notifier.notify( taskId, "Table update done" );
     }
 
     // -------------------------------------------------------------------------

=== modified file 'dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/engine/DefaultDataMartEngine.java'
--- dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/engine/DefaultDataMartEngine.java	2013-03-03 21:30:24 +0000
+++ dhis-2/dhis-services/dhis-service-datamart-default/src/main/java/org/hisp/dhis/datamart/engine/DefaultDataMartEngine.java	2013-03-15 16:33:34 +0000
@@ -27,7 +27,6 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-import static org.hisp.dhis.scheduling.TaskCategory.DATAMART;
 import static org.hisp.dhis.setting.SystemSettingManager.DEFAULT_ORGUNITGROUPSET_AGG_LEVEL;
 import static org.hisp.dhis.setting.SystemSettingManager.KEY_ORGUNITGROUPSET_AGG_LEVEL;
 import static org.hisp.dhis.system.notification.NotificationLevel.INFO;
@@ -210,7 +209,7 @@
         final int cpuCores = SystemUtils.getCpuCores();
         
         Clock clock = new Clock().startClock().logTime( "Data mart export process started, number of CPU cores: " + cpuCores + ", " + SystemUtils.getMemoryString() );
-        notifier.clear( id, DATAMART ).notify( id, DATAMART, "Data mart export process started" );
+        notifier.clear( id ).notify( id, "Data mart export process started" );
  
         // ---------------------------------------------------------------------
         // Recreate temporary tables
@@ -247,7 +246,7 @@
         final Map<String, Integer> categoryOptionComboUidIdMap = categoryService.getDataElementCategoryOptionComboUidIdMap();
         
         clock.logTime( "Retrieved meta-data objects, using periods: " + periods );
-        notifier.notify( id, DATAMART, "Filtering meta-data" );
+        notifier.notify( id, "Filtering meta-data" );
 
         // ---------------------------------------------------------------------
         // Filter objects
@@ -260,7 +259,7 @@
         expressionService.filterInvalidIndicators( indicators );
 
         clock.logTime( "Filtered objects" );
-        notifier.notify( id, DATAMART, "Loading indicators" );
+        notifier.notify( id, "Loading indicators" );
 
         // ---------------------------------------------------------------------
         // Explode indicator expressions
@@ -273,7 +272,7 @@
         }
 
         clock.logTime( "Exploded indicator expressions" );
-        notifier.notify( id, DATAMART, "Loading data elements" );
+        notifier.notify( id, "Loading data elements" );
 
         // ---------------------------------------------------------------------
         // Get operands
@@ -287,7 +286,7 @@
         allOperands.addAll( indicatorOperands );
 
         clock.logTime( "Retrieved operands: " + allOperands.size() );
-        notifier.notify( id, DATAMART, "Loading periods" );
+        notifier.notify( id, "Loading periods" );
 
         // ---------------------------------------------------------------------
         // Filter out future periods
@@ -296,7 +295,7 @@
         FilterUtils.filter( periods, new PastAndCurrentPeriodFilter() );
         
         clock.logTime( "Number of periods: " + periods.size() );
-        notifier.notify( id, DATAMART, "Filtering data elements without data" );
+        notifier.notify( id, "Filtering data elements without data" );
         
         // ---------------------------------------------------------------------
         // Remove operands without data
@@ -307,7 +306,7 @@
         indicatorOperands.retainAll( allOperands );
         
         clock.logTime( "Number of operands with data: " + allOperands.size() + ", " + SystemUtils.getMemoryString() );
-        notifier.notify( id, DATAMART, "Populating crosstabulation table" );
+        notifier.notify( id, "Populating crosstabulation table" );
 
         // ---------------------------------------------------------------------
         // Create crosstabtable
@@ -340,7 +339,7 @@
         crossTabService.createAggregatedDataCache( indicatorOperands, key );
         
         clock.logTime( "Created aggregated data cache, number of indicator operands: " + indicatorOperands.size() + ", operands with data: " + allOperands.size() );
-        notifier.notify( id, DATAMART, "Exporting data for data element data" );
+        notifier.notify( id, "Exporting data for data element data" );
         
         // ---------------------------------------------------------------------
         // 2. Export data element values
@@ -365,7 +364,7 @@
         }
         
         clock.logTime( "Exported values for data element operands (" + allOperands.size() + "), pages: " + organisationUnitPages.size() + ", " + SystemUtils.getMemoryString() );
-        notifier.notify( id, DATAMART, "Dropping data element index" );
+        notifier.notify( id, "Dropping data element index" );
 
         // ---------------------------------------------------------------------
         // 3. Drop data element index
@@ -374,7 +373,7 @@
         dataMartManager.dropDataValueIndex();
         
         clock.logTime( "Dropped data element index" );
-        notifier.notify( id, DATAMART, "Deleting existing data element data" );
+        notifier.notify( id, "Deleting existing data element data" );
         
         // ---------------------------------------------------------------------
         // 4. Delete existing aggregated data values
@@ -383,7 +382,7 @@
         dataMartManager.deleteAggregatedDataValues( periodIds );
         
         clock.logTime( "Deleted existing data element data" );
-        notifier.notify( id, DATAMART, "Copying data element data from temporary table" );
+        notifier.notify( id, "Copying data element data from temporary table" );
 
         // ---------------------------------------------------------------------
         // 5. Copy aggregated data values from temporary table
@@ -392,7 +391,7 @@
         dataMartManager.copyAggregatedDataValuesFromTemp();
         
         clock.logTime( "Copied data element data from temporary table" );
-        notifier.notify( id, DATAMART, "Creating data element index" );
+        notifier.notify( id, "Creating data element index" );
 
         // ---------------------------------------------------------------------
         // 6. Create data element index
@@ -401,7 +400,7 @@
         dataMartManager.createDataValueIndex();
 
         clock.logTime( "Created data element index" );
-        notifier.notify( id, DATAMART, "Exporting data for indicator data" );
+        notifier.notify( id, "Exporting data for indicator data" );
         
         // ---------------------------------------------------------------------
         // 7. Export indicator values
@@ -421,7 +420,7 @@
         }
         
         clock.logTime( "Exported values for indicators (" + indicators.size() + "), pages: " + organisationUnitPages.size() + ", " + SystemUtils.getMemoryString() );
-        notifier.notify( id, DATAMART, "Dropping indicator index" );
+        notifier.notify( id, "Dropping indicator index" );
         
         // ---------------------------------------------------------------------
         // 8. Drop aggregated data cache and indicator index
@@ -431,7 +430,7 @@
         dataMartManager.dropIndicatorValueIndex();
 
         clock.logTime( "Dropped indicator index, " + SystemUtils.getMemoryString() );
-        notifier.notify( id, DATAMART, "Deleting existing indicator data" );
+        notifier.notify( id, "Deleting existing indicator data" );
 
         // ---------------------------------------------------------------------
         // 9. Delete existing aggregated indicator values
@@ -440,7 +439,7 @@
         dataMartManager.deleteAggregatedIndicatorValues( periodIds );
         
         clock.logTime( "Deleted existing indicator data" );
-        notifier.notify( id, DATAMART, "Copying indicator data from temporary table" );
+        notifier.notify( id, "Copying indicator data from temporary table" );
 
         // ---------------------------------------------------------------------
         // 10. Copy aggregated data values from temporary table
@@ -449,7 +448,7 @@
         dataMartManager.copyAggregatedIndicatorValuesFromTemp();
         
         clock.logTime( "Copied indicator data from temporary table" );
-        notifier.notify( id, DATAMART, "Creating indicator index" );
+        notifier.notify( id, "Creating indicator index" );
         
         // ---------------------------------------------------------------------
         // 11. Create indicator index
@@ -473,7 +472,7 @@
             crossTabService.createAggregatedOrgUnitDataCache( indicatorOperands, key );
             
             clock.logTime( "Created aggregated org unit data cache" );
-            notifier.notify( id, DATAMART, "Exporting org unit data element data" );
+            notifier.notify( id, "Exporting org unit data element data" );
             
             // ---------------------------------------------------------------------
             // 2. Export data element values
@@ -502,7 +501,7 @@
             }
             
             clock.logTime( "Exported values for data element operands (" + allOperands.size() + "), pages: " + organisationUnitPages.size()  + ", " + SystemUtils.getMemoryString() );
-            notifier.notify( id, DATAMART, "Dropping data element data indexes" );
+            notifier.notify( id, "Dropping data element data indexes" );
 
             // -----------------------------------------------------------------
             // 3. Drop data element index
@@ -511,7 +510,7 @@
             dataMartManager.dropOrgUnitDataValueIndex();
 
             clock.logTime( "Dropped org unit data element index" );
-            notifier.notify( id, DATAMART, "Deleting existing org unit data element data" );
+            notifier.notify( id, "Deleting existing org unit data element data" );
 
             // ---------------------------------------------------------------------
             // 4. Delete existing aggregated data values
@@ -520,7 +519,7 @@
             dataMartManager.deleteAggregatedOrgUnitDataValues( periodIds );
             
             clock.logTime( "Deleted existing aggregated org unit datavalues" );
-            notifier.notify( id, DATAMART, "Copying org unit data element data" );
+            notifier.notify( id, "Copying org unit data element data" );
 
             // ---------------------------------------------------------------------
             // 5. Copy aggregated org unit data values from temporary table
@@ -529,7 +528,7 @@
             dataMartManager.copyAggregatedOrgUnitDataValuesFromTemp();
             
             clock.logTime( "Copied org unit data element data from temporary table" );
-            notifier.notify( id, DATAMART, "Creating org unit data element index" );
+            notifier.notify( id, "Creating org unit data element index" );
 
             // ---------------------------------------------------------------------
             // 6. Create org unit data element index
@@ -538,7 +537,7 @@
             dataMartManager.createOrgUnitDataValueIndex();
 
             clock.logTime( "Created org unit data element index" );
-            notifier.notify( id, DATAMART, "Exporting data for org unit indicator data" );
+            notifier.notify( id, "Exporting data for org unit indicator data" );
             
             // ---------------------------------------------------------------------
             // 7. Export indicator values
@@ -558,7 +557,7 @@
             }
             
             clock.logTime( "Exported values for indicators (" + indicators.size() + "), pages: " + organisationUnitPages.size() + ", " + SystemUtils.getMemoryString() );
-            notifier.notify( id, DATAMART, "Dropping org unit indicator index" );
+            notifier.notify( id, "Dropping org unit indicator index" );
 
             // ---------------------------------------------------------------------
             // 8. Drop aggregated data cache and indicator index
@@ -568,7 +567,7 @@
             dataMartManager.dropOrgUnitIndicatorValueIndex();
                         
             clock.logTime( "Dropped org unit indicator index, " + SystemUtils.getMemoryString() );
-            notifier.notify( id, DATAMART, "Deleting existing org unit indicator data" );
+            notifier.notify( id, "Deleting existing org unit indicator data" );
 
             // ---------------------------------------------------------------------
             // 9. Delete existing aggregated indicator values
@@ -577,7 +576,7 @@
             dataMartManager.deleteAggregatedOrgUnitIndicatorValues( periodIds );
             
             clock.logTime( "Deleted existing aggregated org unit indicatorvalues" );
-            notifier.notify( id, DATAMART, "Copying org unit indicator data from temporary table" );
+            notifier.notify( id, "Copying org unit indicator data from temporary table" );
 
             // ---------------------------------------------------------------------
             // 10. Copy aggregated org unit indicator values from temporary table
@@ -586,7 +585,7 @@
             dataMartManager.copyAggregatedOrgUnitIndicatorValuesFromTemp();
             
             clock.logTime( "Copied org unit indicator data from temporary table" );
-            notifier.notify( id, DATAMART, "Creating org unit indicator indexes" );
+            notifier.notify( id, "Creating org unit indicator indexes" );
             
             // ---------------------------------------------------------------------
             // 11. Create org unit indicator index
@@ -607,6 +606,6 @@
         
         clock.logTime( "Dropped crosstab table" );
         clock.logTime( "Data mart export process completed" );
-        notifier.notify( id, DATAMART, INFO, "Data mart process completed", true );
+        notifier.notify( id, INFO, "Data mart process completed", true );
     }
 }

=== modified file 'dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/completeness/engine/DefaultDataSetCompletenessEngine.java'
--- dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/completeness/engine/DefaultDataSetCompletenessEngine.java	2013-03-03 21:30:24 +0000
+++ dhis-2/dhis-services/dhis-service-reporting/src/main/java/org/hisp/dhis/completeness/engine/DefaultDataSetCompletenessEngine.java	2013-03-15 16:33:34 +0000
@@ -27,7 +27,6 @@
  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-import static org.hisp.dhis.scheduling.TaskCategory.DATAMART;
 import static org.hisp.dhis.setting.SystemSettingManager.DEFAULT_COMPLETENESS_OFFSET;
 import static org.hisp.dhis.setting.SystemSettingManager.KEY_COMPLETENESS_OFFSET;
 import static org.hisp.dhis.system.notification.NotificationLevel.INFO;
@@ -137,7 +136,7 @@
         final int cpuCores = SystemUtils.getCpuCores();
         
         Clock clock = new Clock().startClock().logTime( "Data completeness export process started, number of CPU cores: " + cpuCores + ", " + SystemUtils.getMemoryString() );
-        notifier.notify( id, DATAMART, "Completeness export process started" );
+        notifier.notify( id, "Completeness export process started" );
 
         completenessStore.dropIndex();
 
@@ -149,7 +148,7 @@
         completenessStore.deleteDataSetCompleteness( dataSetIds, periodIds, organisationUnitIds );
 
         clock.logTime( "Deleted existing completeness data" );
-        notifier.notify( id, DATAMART, "Exporting completeness for data sets" );
+        notifier.notify( id, "Exporting completeness for data sets" );
 
         Collection<Period> periods = periodService.getPeriods( periodIds );
         Collection<OrganisationUnit> organisationUnits = organisationUnitService.getOrganisationUnits( organisationUnitIds );
@@ -175,6 +174,6 @@
         clock.logTime( "Created index" );
 
         clock.logTime( "Completeness export process completed" );
-        notifier.notify( id, DATAMART, INFO, "Completeness process completed", true );
+        notifier.notify( id, INFO, "Completeness process completed", true );
     }
 }

=== modified file 'dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/notification/InMemoryNotifier.java'
--- dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/notification/InMemoryNotifier.java	2013-03-15 11:10:10 +0000
+++ dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/notification/InMemoryNotifier.java	2013-03-15 16:33:34 +0000
@@ -29,7 +29,6 @@
 
 import java.util.ArrayList;
 import java.util.Date;
-import java.util.Iterator;
 import java.util.List;
 
 import javax.annotation.PostConstruct;
@@ -67,37 +66,37 @@
     // -------------------------------------------------------------------------
 
     @Override
-    public Notifier notify( TaskId id, TaskCategory category, String message )
+    public Notifier notify( TaskId id, String message )
     {
-        return notify( id, category, NotificationLevel.INFO, message, false );
+        return notify( id, NotificationLevel.INFO, message, false );
     }
     
     @Override
-    public Notifier notify( TaskId id, TaskCategory category, NotificationLevel level, String message, boolean completed )
+    public Notifier notify( TaskId id, NotificationLevel level, String message, boolean completed )
     {
-        Notification notification = new Notification( level, category, new Date(), message, completed );
-        
         if ( id != null )
         {
+            Notification notification = new Notification( level, id.getCategory(), new Date(), message, completed );
+        
             notifications.get( id ).add( 0, notification );
             
             if ( notifications.get( id ).size() > MAX_SIZE )
             {
                 notifications.get( id ).remove( MAX_SIZE );
             }
+            
+            log.info( notification );
         }
-
-        log.info( notification );
         
         return this;
     }
 
     @Override
-    public List<Notification> getNotifications( TaskId id, TaskCategory category, String lastUid )
+    public List<Notification> getNotifications( TaskId id, String lastUid )
     {
         List<Notification> list = new ArrayList<Notification>();
         
-        if ( id != null && category != null )
+        if ( id != null )
         {
             for ( Notification notification : notifications.get( id ) )
             {
@@ -106,10 +105,7 @@
                     break;
                 }
                 
-                if ( category.equals( notification.getCategory() ) )
-                {
-                    list.add( notification );
-                }
+                list.add( notification );
             }
         }
         
@@ -117,36 +113,36 @@
     }
     
     @Override
-    public Notifier clear( TaskId id, TaskCategory category )
+    public Notifier clear( TaskId id )
     {
-        if ( id != null && category != null )
+        if ( id != null )
         {
-            Iterator<Notification> iter = notifications.get( id ).iterator();
-            
-            while ( iter.hasNext() )
-            {
-                if ( category.equals( iter.next().getCategory() ) )
-                {
-                    iter.remove();
-                }
-            }
+            notifications.clear( id );
+            taskSummaries.get( id ).remove( id.getCategory() );
         }
         
-        taskSummaries.get( id ).remove( category );
-        
         return this;
     }
     
     @Override
-    public Notifier addTaskSummary( TaskId id, TaskCategory category, Object taskSummary )
+    public Notifier addTaskSummary( TaskId id, Object taskSummary )
     {
-        taskSummaries.get( id ).put( category, taskSummary );
+        if ( id != null )
+        {
+            taskSummaries.get( id ).put( id.getCategory(), taskSummary );
+        }
+        
         return this;
     }
 
     @Override
-    public Object getTaskSummary( TaskId id, TaskCategory category )
+    public Object getTaskSummary( TaskId id )
     {
-        return taskSummaries.get( id ).get( category );
+        if ( id != null )
+        {
+            return taskSummaries.get( id ).get( id.getCategory() );
+        }
+        
+        return null;
     }
 }

=== modified file 'dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/notification/Notifier.java'
--- dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/notification/Notifier.java	2012-04-12 12:39:47 +0000
+++ dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/notification/Notifier.java	2013-03-15 16:33:34 +0000
@@ -29,7 +29,6 @@
 
 import java.util.List;
 
-import org.hisp.dhis.scheduling.TaskCategory;
 import org.hisp.dhis.scheduling.TaskId;
 
 /**
@@ -37,15 +36,15 @@
  */
 public interface Notifier
 {
-    Notifier notify( TaskId id, TaskCategory category, String message );
-    
-    Notifier notify( TaskId id, TaskCategory category, NotificationLevel level, String message, boolean completed );
-    
-    List<Notification> getNotifications( TaskId id, TaskCategory category, String lastUid );
-    
-    Notifier clear( TaskId id, TaskCategory category );
-    
-    Notifier addTaskSummary( TaskId id, TaskCategory category, Object taskSummary );
-    
-    Object getTaskSummary( TaskId id, TaskCategory category );
+    Notifier notify( TaskId id, String message );
+    
+    Notifier notify( TaskId id, NotificationLevel level, String message, boolean completed );
+    
+    List<Notification> getNotifications( TaskId id, String lastUid );
+    
+    Notifier clear( TaskId id );
+    
+    Notifier addTaskSummary( TaskId id, Object taskSummary );
+    
+    Object getTaskSummary( TaskId id );
 }

=== modified file 'dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/notification/NotifierTest.java'
--- dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/notification/NotifierTest.java	2013-03-15 13:13:18 +0000
+++ dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/notification/NotifierTest.java	2013-03-15 16:33:34 +0000
@@ -29,11 +29,9 @@
 
 import static org.hisp.dhis.scheduling.TaskCategory.DATAMART;
 import static org.hisp.dhis.scheduling.TaskCategory.DATAVALUE_IMPORT;
-import static org.hisp.dhis.scheduling.TaskCategory.METADATA_EXPORT;
 import static org.hisp.dhis.scheduling.TaskCategory.METADATA_IMPORT;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
 
 import java.util.List;
 
@@ -61,23 +59,23 @@
     @Test
     public void testNotifiy()
     {
-        notifier.notify( id1, DATAVALUE_IMPORT, "Import started" );
-        notifier.notify( id1, DATAVALUE_IMPORT, "Import working" );
-        notifier.notify( id1, DATAVALUE_IMPORT, "Import done" );
-        notifier.notify( id2, DATAMART, "Process started" );
-        notifier.notify( id2, DATAMART, "Process done" );
+        notifier.notify( id1, "Import started" );
+        notifier.notify( id1, "Import working" );
+        notifier.notify( id1, "Import done" );
+        notifier.notify( id2, "Process started" );
+        notifier.notify( id2, "Process done" );
         
-        List<Notification> notifications = notifier.getNotifications( id1, DATAVALUE_IMPORT, null );
+        List<Notification> notifications = notifier.getNotifications( id1, null );
         
         assertNotNull( notifications );
         assertEquals( 3, notifications.size() );
         
-        notifications = notifier.getNotifications( id2, DATAMART, null );
+        notifications = notifier.getNotifications( id2, null );
         
         assertNotNull( notifications );
         assertEquals( 2, notifications.size() );
 
-        notifications = notifier.getNotifications( id3, METADATA_IMPORT, null );
+        notifications = notifier.getNotifications( id3, null );
         
         assertNotNull( notifications );
         assertEquals( 0, notifications.size() );
@@ -86,37 +84,33 @@
     @Test
     public void testClearNotifications()
     {
-        notifier.notify( id1, DATAVALUE_IMPORT, "Import started" );
-        notifier.notify( id1, DATAVALUE_IMPORT, "Import working" );
-        notifier.notify( id1, DATAVALUE_IMPORT, "Import done" );
-        notifier.notify( id2, DATAMART, "Process started" );
-        notifier.notify( id2, DATAMART, "Process done" );
-        
-        assertEquals( 3, notifier.getNotifications( id1, DATAVALUE_IMPORT, null ).size() );
-        assertEquals( 2, notifier.getNotifications( id2, DATAMART, null ).size() );
-        
-        notifier.clear( id1, METADATA_EXPORT );
-
-        assertEquals( 3, notifier.getNotifications( id1, DATAVALUE_IMPORT, null ).size() );
-        assertEquals( 2, notifier.getNotifications( id2, DATAMART, null ).size() );
-        
-        notifier.clear( id1, DATAVALUE_IMPORT );
-
-        assertEquals( 0, notifier.getNotifications( id1, DATAVALUE_IMPORT, null ).size() );
-        assertEquals( 2, notifier.getNotifications( id2, DATAMART, null ).size() );
-
-        notifier.clear( id2, DATAMART );
-
-        assertEquals( 0, notifier.getNotifications( id1, DATAVALUE_IMPORT, null ).size() );
-        assertEquals( 0, notifier.getNotifications( id2, DATAMART, null ).size() );        
+        notifier.clear( id1 );
+        
+        notifier.notify( id1, "Import started" );
+        notifier.notify( id1, "Import working" );
+        notifier.notify( id1, "Import done" );
+        notifier.notify( id2, "Process started" );
+        notifier.notify( id2, "Process done" );
+        
+        assertEquals( 3, notifier.getNotifications( id1, null ).size() );
+        assertEquals( 2, notifier.getNotifications( id2, null ).size() );
+        
+        notifier.clear( id1 );
+
+        assertEquals( 0, notifier.getNotifications( id1, null ).size() );
+        assertEquals( 2, notifier.getNotifications( id2, null ).size() );
+
+        notifier.clear( id2 );
+
+        assertEquals( 0, notifier.getNotifications( id1, null ).size() );
+        assertEquals( 0, notifier.getNotifications( id2, null ).size() );        
     }
     
     @Test
     public void testTaskSummary()
     {
-        notifier.addTaskSummary( id1, DATAVALUE_IMPORT, new Object() );
+        notifier.addTaskSummary( id1, new Object() );
         
-        assertNotNull( notifier.getTaskSummary( id1, DATAVALUE_IMPORT ) );
-        assertNull( notifier.getTaskSummary( id1, DATAMART ) );
+        assertNotNull( notifier.getTaskSummary( id1 ) );
     }
 }

=== modified file 'dhis-2/dhis-web/dhis-web-commons/src/main/java/org/hisp/dhis/commons/action/GetNotificationsAction.java'
--- dhis-2/dhis-web/dhis-web-commons/src/main/java/org/hisp/dhis/commons/action/GetNotificationsAction.java	2012-04-12 12:39:47 +0000
+++ dhis-2/dhis-web/dhis-web-commons/src/main/java/org/hisp/dhis/commons/action/GetNotificationsAction.java	2013-03-15 16:33:34 +0000
@@ -94,7 +94,7 @@
 
             TaskId taskId = new TaskId( taskCategory, currentUserService.getCurrentUser() );
             
-            notifications = notifier.getNotifications( taskId, taskCategory, lastUid );
+            notifications = notifier.getNotifications( taskId, lastUid );
         }
         
         return SUCCESS;

=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/GetImportSummaryAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/GetImportSummaryAction.java	2012-04-12 12:39:47 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/GetImportSummaryAction.java	2013-03-15 16:33:34 +0000
@@ -78,7 +78,7 @@
     {
         TaskId taskId = new TaskId( category, currentUserService.getCurrentUser() );        
         
-        summary = (ImportSummary) notifier.getTaskSummary( taskId, category );
+        summary = (ImportSummary) notifier.getTaskSummary( taskId );
         
         return SUCCESS;
     }

=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/datavalue/ImportDataValueAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/datavalue/ImportDataValueAction.java	2013-03-15 15:34:40 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/datavalue/ImportDataValueAction.java	2013-03-15 16:33:34 +0000
@@ -144,7 +144,7 @@
 
         TaskId taskId = new TaskId( TaskCategory.DATAVALUE_IMPORT, currentUserService.getCurrentUser() );
 
-        notifier.clear( taskId, TaskCategory.DATAVALUE_IMPORT );
+        notifier.clear( taskId );
         
         InputStream in = new FileInputStream( upload );
         

=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/dxf2/GetImportSummaryAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/dxf2/GetImportSummaryAction.java	2012-07-06 08:01:27 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/dxf2/GetImportSummaryAction.java	2013-03-15 16:33:34 +0000
@@ -77,7 +77,7 @@
     {
         TaskId taskId = new TaskId( category, currentUserService.getCurrentUser() );
 
-        summary = (ImportSummary) notifier.getTaskSummary( taskId, category );
+        summary = (ImportSummary) notifier.getTaskSummary( taskId );
 
         return SUCCESS;
     }

=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/dxf2/MetaDataImportAction.java'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/dxf2/MetaDataImportAction.java	2013-03-15 15:34:40 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/java/org/hisp/dhis/importexport/action/dxf2/MetaDataImportAction.java	2013-03-15 16:33:34 +0000
@@ -103,7 +103,7 @@
 
         TaskId taskId = new TaskId( TaskCategory.METADATA_IMPORT, currentUserService.getCurrentUser() );
 
-        notifier.clear( taskId, TaskCategory.METADATA_IMPORT );
+        notifier.clear( taskId );
         
         InputStream in = new FileInputStream( upload );
         in = StreamUtils.wrapAndCheckCompressionFormat( in );

=== modified file 'dhis-2/dhis-web/dhis-web-importexport/src/main/resources/org/hisp/dhis/importexport/i18n_module.properties'
--- dhis-2/dhis-web/dhis-web-importexport/src/main/resources/org/hisp/dhis/importexport/i18n_module.properties	2013-03-14 18:14:45 +0000
+++ dhis-2/dhis-web/dhis-web-importexport/src/main/resources/org/hisp/dhis/importexport/i18n_module.properties	2013-03-15 16:33:34 +0000
@@ -308,7 +308,7 @@
 code=Code
 more_options=More options
 existing_record_check=Existing record check
-check_safe_recommended=Check (safe + recommended)
+check_safe_recommended=Check (safe, recommended)
 skip_check_fast=Skip check (fast)
 dxf2=DXF2
 metadata_import=Meta-Data Import

=== modified file 'dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/datamart/action/StartExportAction.java'
--- dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/datamart/action/StartExportAction.java	2013-03-15 15:34:40 +0000
+++ dhis-2/dhis-web/dhis-web-reporting/src/main/java/org/hisp/dhis/reporting/datamart/action/StartExportAction.java	2013-03-15 16:33:34 +0000
@@ -139,7 +139,7 @@
     {
         TaskId taskId = new TaskId( TaskCategory.DATAMART, currentUserService.getCurrentUser() );
         
-        notifier.clear( taskId, TaskCategory.DATAMART );
+        notifier.clear( taskId );
         
         ScheduledTasks tasks = new ScheduledTasks();