void alterElementPropertyVisibilities(InMemoryElement element, List<AlterPropertyVisibility> alterPropertyVisibilities, Authorizations authorizations) { for (AlterPropertyVisibility apv : alterPropertyVisibilities) { Property property = element.getProperty(apv.getKey(), apv.getName(), apv.getExistingVisibility()); if (property == null) { throw new SecureGraphException("Could not find property " + apv.getKey() + ":" + apv.getName()); } Object value = property.getValue(); Metadata metadata = property.getMetadata(); element.removeProperty(apv.getKey(), apv.getName(), authorizations); element.addPropertyValue(apv.getKey(), apv.getName(), value, metadata, apv.getVisibility(), authorizations); } }
@Override public ExistingElementMutation<T> alterPropertyVisibility(String key, String name, Visibility visibility) { this.alterPropertyVisibilities.add(new AlterPropertyVisibility(key, name, null, visibility)); return this; }
void alterElementPropertyVisibilities(AccumuloElement element, List<AlterPropertyVisibility> alterPropertyVisibilities) { if (alterPropertyVisibilities.size() == 0) { return; } BatchWriter writer = getWriterFromElementType(element); String rowPrefix = getRowPrefixForElement(element); String elementRowKey = rowPrefix + element.getId(); boolean propertyChanged = false; Mutation m = new Mutation(elementRowKey); for (AlterPropertyVisibility apv : alterPropertyVisibilities) { MutableProperty property = (MutableProperty) element.getProperty(apv.getKey(), apv.getName(), apv.getExistingVisibility()); if (property == null) { throw new SecureGraphException("Could not find property " + apv.getKey() + ":" + apv.getName()); } if (property.getVisibility().equals(apv.getVisibility())) { continue; } elementMutationBuilder.addPropertyRemoveToMutation(m, property); property.setVisibility(apv.getVisibility()); elementMutationBuilder.addPropertyToMutation(m, elementRowKey, property); propertyChanged = true; } if (propertyChanged) { addMutations(writer, m); } }
@Override public ExistingElementMutation<T> alterPropertyVisibility(String key, String name, Visibility visibility) { this.alterPropertyVisibilities.add(new AlterPropertyVisibility(key, name, null, visibility)); return this; }
@Override public ExistingElementMutation<T> alterPropertyVisibility(Property property, Visibility visibility) { this.alterPropertyVisibilities.add(new AlterPropertyVisibility(property.getKey(), property.getName(), property.getVisibility(), visibility)); return this; }
@Override public ExistingElementMutation<T> alterPropertyVisibility(Property property, Visibility visibility) { this.alterPropertyVisibilities.add(new AlterPropertyVisibility(property.getKey(), property.getName(), property.getVisibility(), visibility)); return this; }