mirror of
https://github.com/datahub-project/datahub.git
synced 2025-11-23 08:14:43 +00:00
removes policy notification for datasets with upstream policy
This commit is contained in:
parent
28267d153f
commit
e843a561a9
@ -33,7 +33,7 @@ export default class DatasetComplianceContainer extends Component {
|
|||||||
/**
|
/**
|
||||||
* External action on parent
|
* External action on parent
|
||||||
*/
|
*/
|
||||||
setOnComplianceType: (isNewComplianceInfo: boolean) => void;
|
setOnComplianceType: (args: { isNewComplianceInfo: boolean; fromUpstream: boolean }) => void;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* External action on parent
|
* External action on parent
|
||||||
@ -140,9 +140,11 @@ export default class DatasetComplianceContainer extends Component {
|
|||||||
getComplianceTask = task(function*(
|
getComplianceTask = task(function*(
|
||||||
this: DatasetComplianceContainer
|
this: DatasetComplianceContainer
|
||||||
): IterableIterator<Promise<IReadComplianceResult>> {
|
): IterableIterator<Promise<IReadComplianceResult>> {
|
||||||
const { isNewComplianceInfo, complianceInfo } = yield readDatasetComplianceByUrn(get(this, 'urn'));
|
const { isNewComplianceInfo, complianceInfo }: IReadComplianceResult = yield readDatasetComplianceByUrn(
|
||||||
|
get(this, 'urn')
|
||||||
|
);
|
||||||
|
|
||||||
this.onCompliancePolicyStateChange(isNewComplianceInfo);
|
this.onCompliancePolicyStateChange({ isNewComplianceInfo, fromUpstream: !!complianceInfo.fromUpstream });
|
||||||
setProperties(this, { isNewComplianceInfo, complianceInfo });
|
setProperties(this, { isNewComplianceInfo, complianceInfo });
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -153,7 +155,7 @@ export default class DatasetComplianceContainer extends Component {
|
|||||||
getComplianceDataTypesTask = task(function*(
|
getComplianceDataTypesTask = task(function*(
|
||||||
this: DatasetComplianceContainer
|
this: DatasetComplianceContainer
|
||||||
): IterableIterator<Promise<Array<IComplianceDataType>>> {
|
): IterableIterator<Promise<Array<IComplianceDataType>>> {
|
||||||
const complianceDataTypes = yield readComplianceDataTypes();
|
const complianceDataTypes: Array<IComplianceDataType> = yield readComplianceDataTypes();
|
||||||
|
|
||||||
set(this, 'complianceDataTypes', complianceDataTypes);
|
set(this, 'complianceDataTypes', complianceDataTypes);
|
||||||
});
|
});
|
||||||
@ -165,7 +167,7 @@ export default class DatasetComplianceContainer extends Component {
|
|||||||
getComplianceSuggestionsTask = task(function*(
|
getComplianceSuggestionsTask = task(function*(
|
||||||
this: DatasetComplianceContainer
|
this: DatasetComplianceContainer
|
||||||
): IterableIterator<Promise<IComplianceSuggestion>> {
|
): IterableIterator<Promise<IComplianceSuggestion>> {
|
||||||
const complianceSuggestion = yield readDatasetComplianceSuggestionByUrn(get(this, 'urn'));
|
const complianceSuggestion: IComplianceSuggestion = yield readDatasetComplianceSuggestionByUrn(get(this, 'urn'));
|
||||||
|
|
||||||
set(this, 'complianceSuggestion', complianceSuggestion);
|
set(this, 'complianceSuggestion', complianceSuggestion);
|
||||||
});
|
});
|
||||||
@ -176,7 +178,7 @@ export default class DatasetComplianceContainer extends Component {
|
|||||||
*/
|
*/
|
||||||
getDatasetSchemaTask = task(function*(this: DatasetComplianceContainer): IterableIterator<Promise<IDatasetSchema>> {
|
getDatasetSchemaTask = task(function*(this: DatasetComplianceContainer): IterableIterator<Promise<IDatasetSchema>> {
|
||||||
try {
|
try {
|
||||||
const { columns, schemaless } = yield readDatasetSchemaByUrn(get(this, 'urn'));
|
const { columns, schemaless }: IDatasetSchema = yield readDatasetSchemaByUrn(get(this, 'urn'));
|
||||||
const schemaFieldNamesMappedToDataTypes = columnDataTypesAndFieldNames(columns);
|
const schemaFieldNamesMappedToDataTypes = columnDataTypesAndFieldNames(columns);
|
||||||
setProperties(this, { schemaFieldNamesMappedToDataTypes, schemaless });
|
setProperties(this, { schemaFieldNamesMappedToDataTypes, schemaless });
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
@ -248,11 +250,18 @@ export default class DatasetComplianceContainer extends Component {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Invokes external action if compliance info is new or otherwise
|
* Invokes external action if compliance info is new or otherwise
|
||||||
* @param {boolean} isNewComplianceInfo
|
* @param {boolean} isNewComplianceInfo flag indicating the policy does not exist remotely
|
||||||
|
* @param {boolean} fromUpstream flag indicating related dataset compliance info is derived
|
||||||
*/
|
*/
|
||||||
@action
|
@action
|
||||||
onCompliancePolicyStateChange(isNewComplianceInfo: boolean) {
|
onCompliancePolicyStateChange({
|
||||||
this.setOnComplianceType(isNewComplianceInfo);
|
isNewComplianceInfo,
|
||||||
|
fromUpstream
|
||||||
|
}: {
|
||||||
|
isNewComplianceInfo: boolean;
|
||||||
|
fromUpstream: boolean;
|
||||||
|
}) {
|
||||||
|
this.setOnComplianceType({ isNewComplianceInfo, fromUpstream });
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@ -118,6 +118,12 @@ export default class extends Controller.extend({
|
|||||||
*/
|
*/
|
||||||
compliancePolicyHasDrift;
|
compliancePolicyHasDrift;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Flag indicating the dataset policy is derived from an upstream source
|
||||||
|
* @type {boolean}
|
||||||
|
*/
|
||||||
|
isPolicyFromUpstream = false;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Flag indicating that the compliance policy needs user attention
|
* Flag indicating that the compliance policy needs user attention
|
||||||
* @type {ComputedProperty<boolean>}
|
* @type {ComputedProperty<boolean>}
|
||||||
@ -157,21 +163,32 @@ export default class extends Controller.extend({
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Setter to update the hasSuggestions flag
|
* Updates the hasSuggestions flag if the policy is not from an upstream dataset, otherwise set to false
|
||||||
* @param {boolean} hasSuggestions
|
* @param {boolean} hasSuggestions
|
||||||
*/
|
*/
|
||||||
@action
|
@action
|
||||||
setOnChangeSetChange(hasSuggestions) {
|
setOnChangeSetChange(hasSuggestions) {
|
||||||
set(this, 'hasSuggestions', hasSuggestions);
|
const fromUpstream = get(this, 'isPolicyFromUpstream');
|
||||||
|
set(this, 'hasSuggestions', !fromUpstream && hasSuggestions);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Setter to update the isNewComplianceInfo flag
|
* Updates the isNewComplianceInfo flag if the policy is not from an upstream dataset, otherwise set to false
|
||||||
|
* Also sets the isPolicyFromUpstream attribute
|
||||||
* @param {boolean} isNewComplianceInfo
|
* @param {boolean} isNewComplianceInfo
|
||||||
|
* @param {boolean} fromUpstream
|
||||||
*/
|
*/
|
||||||
@action
|
@action
|
||||||
setOnComplianceTypeChange(isNewComplianceInfo) {
|
setOnComplianceTypeChange({ isNewComplianceInfo, fromUpstream }) {
|
||||||
set(this, 'isNewComplianceInfo', isNewComplianceInfo);
|
setProperties(this, {
|
||||||
|
isNewComplianceInfo: !fromUpstream && isNewComplianceInfo,
|
||||||
|
isPolicyFromUpstream: fromUpstream
|
||||||
|
});
|
||||||
|
|
||||||
|
if (fromUpstream) {
|
||||||
|
this.setOnChangeSetChange(false);
|
||||||
|
this.setOnChangeSetDrift(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -180,6 +197,7 @@ export default class extends Controller.extend({
|
|||||||
*/
|
*/
|
||||||
@action
|
@action
|
||||||
setOnChangeSetDrift(hasDrift) {
|
setOnChangeSetDrift(hasDrift) {
|
||||||
set(this, 'compliancePolicyHasDrift', hasDrift);
|
const fromUpstream = get(this, 'isPolicyFromUpstream');
|
||||||
|
set(this, 'compliancePolicyHasDrift', !fromUpstream && hasDrift);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user