@Override
public void removeMixin(final String mixinName) throws RepositoryException {
perform(new ItemWriteOperation<Void>() {
@Override
public Void perform() throws RepositoryException {
PropertyDelegate propDlg = dlg.getPropertyOrNull(JcrConstants.JCR_MIXINTYPES);
String oakName = getOakName(mixinName);
if (propDlg == null || !ImmutableSet.copyOf(propDlg.getPropertyState().getValue(Type.NAMES)).contains(oakName)) {
throw new NoSuchNodeTypeException("Mixin " + mixinName +" not contained in " + this);
}
// TODO: implement #removeMixin (OAK-767)
throw new ConstraintViolationException();