Selaa lähdekoodia

AMBARI-22868.Add ability to configure done-flag element of dataset in Workflow Manager View(Venkata Sairam)

Venkata Sairam 7 vuotta sitten
vanhempi
commit
5cc69d4b38

+ 8 - 0
contrib/views/wfmanager/src/main/resources/ui/app/components/dataset-config.js

@@ -62,6 +62,10 @@ export default Ember.Component.extend(Validations, {
     this.get('timeUnitOptions').pushObject({value:'cron',displayName:'Cron'});
     this.set('childComponents', new Map());
     this.set('timezoneList', Ember.copy(Constants.timezoneList));
+    if(!this.get('dataset.doneFlagType')) {
+      this.set('dataset.doneFlagType', 'default');
+    }
+
   }.on('init'),
   validateChildComponents(){
     var isChildComponentsValid = true;
@@ -98,6 +102,10 @@ export default Ember.Component.extend(Validations, {
     },
     cancelDatasetOperation(){
       this.sendAction('cancel');
+    },
+    clearDoneFlag(type){
+      this.set('dataset.doneFlag', '');
+      this.set('dataset.doneFlagType', type);
     }
   }
 });

+ 1 - 1
contrib/views/wfmanager/src/main/resources/ui/app/domain/coordinator/coordinator-xml-generator.js

@@ -71,7 +71,7 @@ var CoordinatorGenerator= Ember.Object.extend({
           dataSetJson._frequency = dataset.frequency.value;
         }
         dataSetJson["uri-template"]=dataset.uriTemplate;
-        if (dataset.doneFlag){
+        if (dataset.doneFlagType === 'custom'){
           dataSetJson["done-flag"]=dataset.doneFlag;
         }
         datasets.push(dataSetJson);

+ 4 - 1
contrib/views/wfmanager/src/main/resources/ui/app/domain/coordinator/coordinator-xml-importer.js

@@ -147,8 +147,11 @@ var CoordinatorXmlImporter= Ember.Object.extend({
       dataSetJson.frequency.value = frequency;
     }
     dataSetJson["uriTemplate"] = dataset['uri-template'];
-    if (dataset['done-flag']){
+    if (dataset.hasOwnProperty('done-flag')){
       dataSetJson.doneFlag = dataset['done-flag'];
+      dataSetJson.doneFlagType = "custom";
+    } else {
+      dataSetJson.doneFlagType = "default";
     }
     return dataSetJson;
   },

+ 20 - 0
contrib/views/wfmanager/src/main/resources/ui/app/templates/components/dataset-config.hbs

@@ -57,6 +57,26 @@
       {{field-error  model=this field='dataset.timezone' showErrorMessage=showErrorMessage}}
     </div>
   </div>
+  <div class="form-group">
+  <label for="" class="control-label col-xs-2">Done Flag
+    {{#if required}}
+      <span class="requiredField">&nbsp;*</span>
+    {{/if}}
+  </label>
+  <div class="col-xs-7">
+    <div class="input-group">
+      <div class="input-group-btn">
+        <button onclick={{action 'clearDoneFlag' 'default'}} type="button" class="btn btn-default {{if (eq dataset.doneFlagType 'default') 'btn-secondary' ''}} scope-btn">
+          Default
+        </button>
+        <button onclick={{action 'clearDoneFlag' 'custom'}} type="button" class="btn btn-default {{if (eq dataset.doneFlagType 'custom') 'btn-secondary' ''}} scope-btn">
+          Custom
+        </button>
+      </div>
+      {{input type="text" class="form-control" name="done-flag" value=dataset.doneFlag placeholder='File Name' disabled=(eq dataset.doneFlagType 'default')}}
+    </div>
+  </div>
+</div>
   <div class="form-group">
     <div class="col-xs-7 pull-right">
       <button id="dataset-add-btn" {{action 'cancelDatasetOperation'}} type="button" class="btn btn-default">Cancel</button>