Skip to content

Commit f2d0d05

Browse files
authored
Merge pull request #3383 from atlanhq/DQ-165
DQ-165 Prevent user YAML override
2 parents ad5bac5 + 3853127 commit f2d0d05

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

repository/src/main/java/org/apache/atlas/repository/store/graph/v2/preprocessor/contract/ContractPreProcessor.java

+8-2
Original file line numberDiff line numberDiff line change
@@ -109,8 +109,10 @@ private void processCreateContract(AtlasEntity entity, EntityMutationContext con
109109
authorizeContractCreateOrUpdate(entity, associatedAsset);
110110

111111
boolean contractSync = syncContractCertificateStatus(entity, contract);
112-
contractString = DataContract.serialize(contract);
113-
entity.setAttribute(ATTR_CONTRACT, contractString);
112+
if (!isContractYaml(entity)) {
113+
contractString = DataContract.serialize(contract);
114+
entity.setAttribute(ATTR_CONTRACT, contractString);
115+
}
114116
String contractStringJSON = DataContract.serializeJSON(contract);
115117
entity.setAttribute(ATTR_CONTRACT_JSON, contractStringJSON);
116118

@@ -298,4 +300,8 @@ private static String getContractString(AtlasEntity entity) {
298300
}
299301
return contractString;
300302
}
303+
304+
private static boolean isContractYaml(AtlasEntity entity) {
305+
return !StringUtils.isEmpty((String) entity.getAttribute(ATTR_CONTRACT));
306+
}
301307
}

0 commit comments

Comments
 (0)