void alterPropertyMetadatas(AccumuloElement element, List<SetPropertyMetadata> setPropertyMetadatas) {
if (setPropertyMetadatas.size() == 0) {
return;
}
List<Property> propertiesToSave = new ArrayList<>();
for (SetPropertyMetadata apm : setPropertyMetadatas) {
Property property = element.getProperty(apm.getPropertyKey(), apm.getPropertyName(), apm.getPropertyVisibility());
if (property == null) {
throw new SecureGraphException(String.format("Could not find property %s:%s(%s)", apm.getPropertyKey(), apm.getPropertyName(), apm.getPropertyVisibility()));
}
property.getMetadata().add(apm.getMetadataName(), apm.getNewValue(), apm.getMetadataVisibility());
propertiesToSave.add(property);
}
BatchWriter writer = getWriterFromElementType(element);
String rowPrefix = getRowPrefixForElement(element);
String elementRowKey = rowPrefix + element.getId();
Mutation m = new Mutation(elementRowKey);
for (Property property : propertiesToSave) {
elementMutationBuilder.addPropertyMetadataToMutation(m, property);
}
addMutations(writer, m);
}