import org.onap.so.client.graphinventory.GraphInventoryCommonObjectMapperProvider;
 import org.onap.so.externaltasks.logging.AuditMDCSetup;
 import org.onap.so.objects.audit.AAIObjectAuditList;
+import org.onap.so.utils.RetrySequenceLevel;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
     @Autowired
     private AuditMDCSetup mdcSetup;
 
+    public AuditCreateStackService() {
+        super();
+    }
+
     protected void executeExternalTask(ExternalTask externalTask, ExternalTaskService externalTaskService) {
         mdcSetup.setupMDC(externalTask);
         AuditInventory auditInventory = externalTask.getVariable("auditInventory");
 
 import org.onap.so.externaltasks.logging.AuditMDCSetup;
 import org.onap.so.objects.audit.AAIObjectAuditList;
 import org.onap.so.utils.ExternalTaskUtils;
+import org.onap.so.utils.RetrySequenceLevel;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
     @Autowired
     private AuditMDCSetup mdcSetup;
 
+    public CreateInventoryTask() {
+        super(RetrySequenceLevel.SHORT);
+    }
+
     protected void executeExternalTask(ExternalTask externalTask, ExternalTaskService externalTaskService) {
         mdcSetup.setupMDC(externalTask);
         boolean success = true;
 
 package org.onap.so.utils;
 
-import org.camunda.bpm.client.task.ExternalTask;
-import org.onap.logging.ref.slf4j.ONAPLogConstants;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-import org.slf4j.MDC;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;
 import org.springframework.stereotype.Component;
 
     private static final Logger logger = LoggerFactory.getLogger(ExternalTaskUtils.class);
 
+    private final RetrySequenceLevel retrySequenceLevel;
+
+    public ExternalTaskUtils() {
+        this.retrySequenceLevel = RetrySequenceLevel.MEDIUM;
+    }
+
+    public ExternalTaskUtils(RetrySequenceLevel retrySequenceLevel) {
+        this.retrySequenceLevel = retrySequenceLevel;
+    }
+
     public long calculateRetryDelay(int currentRetries) {
         int retrySequence = getRetrySequence().length - currentRetries;
         return Integer.parseInt(getRetrySequence()[retrySequence]) * getRetryMutiplier();
     }
 
     protected String[] getRetrySequence() {
-        String[] seq = {"1", "1", "2", "3", "5", "8", "13", "20"};
-        if (env.getProperty("mso.workflow.topics.retrySequence") != null) {
-            seq = env.getProperty("mso.workflow.topics.retrySequence", String[].class);
+        switch (retrySequenceLevel) {
+            case SHORT:
+                String[] seqShort = {"1", "1"};
+                if (env.getProperty("mso.workflow.topics.retrySequence.short") != null) {
+                    seqShort = env.getProperty("mso.workflow.topics.retrySequence.short", String[].class);
+                }
+                return seqShort;
+            case MEDIUM:
+                String[] seqInter = {"1", "1", "2", "3", "5"};
+                if (env.getProperty("mso.workflow.topics.retrySequence.medium") != null) {
+                    seqInter = env.getProperty("mso.workflow.topics.retrySequence.medium", String[].class);
+                }
+                return seqInter;
+            case LONG:
+                String[] seqLong = {"1", "1", "2", "3", "5", "8", "13", "20"};
+                if (env.getProperty("mso.workflow.topics.retrySequence") != null) {
+                    seqLong = env.getProperty("mso.workflow.topics.retrySequence", String[].class);
+                }
+                return seqLong;
+            default:
+                String[] seq = {"1"};
+                return seq;
         }
-        return seq;
+
     }
+
 }